• A Confluence está sendo executada atualmente com todos os plugins que não são do sistema desabilitados. Pode haver perda de algumas funcionalidades

Árvore de páginas

Define em memória as configurações para conexão SSL.

Sintaxe

HTTPSSLClient( < nSSL2 >, < nSSL3 >, < nTLS1 >, < cPassword >, < cCertPath >, < cKeyPath >, < nHSM >, [ lClient ], [ nVerbose ], [ nBugs ], [ nState ], [ cCACertPath ] )

Parâmetros

Nome

Tipo

Descrição

Obrigatório

Referência

nSSL2

numérico

Habilita/Desabilita SSL2.

X

 

nSSL3

numérico

Habilita/Desabilita SSL3.

X

 

nTLS1

numérico

Habilita/Desabilita TLS1.

X

 

cPassword

caractere

Senha para a chave privada e/ou certificado.

X

 

cCertPath

caractere

Indica o caminho do certificado de cliente.

X

 

cKeyPath

caractere

Indica o caminho da chave privada de cliente.

X

 

nHSM

numérico

Define se utiliza HSM.

 

 

lClient

lógico

Indica se a definição será para conexão pelo SmartClient.

  

nVerbose

numérico

Habilita/Desabilita Verbose.

  

nBugs

numérico

Habilita/Desabilita Bugs.

  

nState

numérico

Habilita/Desabilita State.

  

cCACertPath

caractere

Indica o caminho do certificado de CA.

  

Observações

Os parâmetros da função equivalem à configuração contida na seção SSLConfigure do arquivo ini do AppServer, sendo relacionados da seuinte forma:

Parâmetro

Chave da SSLConfigure

nSSL2

SSL2

nSSL3

SSL3

nTLS1

TLS1

cPassword

PassPhrase

cCertPath

CertificateClient

cKeyPath

KeyClient

nHSM

HSM

nVerbose

Verbose

nBugs

BUGS

nState

STATE

cCACertPath

SecondCertificateClient

  • Para definição no AppServer, o valor padrão dos parâmetros nHSM, nVerbose, nBugs, nState e cCACertPath seguem o padrão da configuração da seção SSLConfigure.
  • Caso nHSM seja 1, o formato aceito no caminho dos parâmetros cCertPath e cKeyPath é "slot_<num>-id_<idhex>" ou "slot_<nem>-label_<label>", onde <num> é o número do slot, igual ao retornado pela função HSMSlotList, e <idhex> é o id do objeto em hexadecimal, sendo cada 2 caracteres a representação hexadecimal de um caractere da tabela ASCII.
  • Para definição seja no AppServer, se nHSM for 0 e o caminho apontado por cCertPath, cKeyPath ou cCACertPath não for no AppServer, a aplicação dará uma exceção com a mensagem: "Only server path are allowed (HttpSSLClient)".
  • Para definição seja no SmartClient, se nHSM for 0 e o caminho apontado por cCertPath, cKeyPath ou cCACertPath não for no SmartClient, a aplicação dará uma exceção com a mensagem: "Only client path are allowed on client side (HttpSSLClient)".
  • O valor padrão de lClient é .F..
  • Os parâmetros lClient, nVerbose, nBugs, nState e cCACertPath estão disponíveis a partir da build 7.00.131227A com data de geração superior a 11/03/2016.

Exemplos

user function exemplo()
  
  Local cSlot     := "0"
  Local cModule   := 'C:\Program Files (x86)\Feitian\ePass2000_FT12\ngp11v211.dll' // Pronova
  Local cPass     := "12345678"
  Local idHex     := "80125761605040BE9A5D71B677387F67" // Katoen
  Local cUrl      := 'https://homologacao.nfe.fazenda.sp.gov.br:443/nfeWEB/services/NfeStatusServico.asmx'
  Local cSoapSend := '<?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:xsi="http://www.w3.org/2001/';
                     'XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="';
                     'http://schemas.xmlsoap.org/soap/envelope/"><soap:Body><nfeStatusServicoNF xmlns="';
                     'http://www.portalfiscal.inf.br/nfe/wsdl/NfeStatusServico"><nfeCabecMsg><?xml version="1.0"';
                     ' encoding="UTF-8"?><cabecMsg xmlns="http://www.portalfiscal.inf.br/nfe" versao="1.02">';
                     '<versaoDados>1.07</versaoDados></cabecMsg></nfeCabecMsg><nfeDadosMsg><?xml version="1.0"';
                     ' encoding="UTF-8"?><consStatServ xmlns="http://www.portalfiscal.inf.br/nfe" versao="1.07">';
                     '<tpAmb>2</tpAmb><cUF>35</cUF><xServ>STATUS</xServ></consStatServ></nfeDadosMsg></nfeStatusServicoNF>';
                     '</soap:Body></soap:Envelope>'
  Local aHeadOut  := {'SOAPAction: http://www.portalfiscal.inf.br/nfe/wsdl/NfeStatusServico/nfeStatusServicoNF','Content-Type:';
                     'text/xml; charset=utf-8','User-Agent: Mozilla/4.0 (compatible; Protheus 7.00.100812P-20101227; ADVPL WSDL Client 1.101007)'}
  Local XMLHeadRet:= ""
  
  HTTPSSLClient(0, 1, 1, cPass, "slot_"+cSlot+"-id_"+idHex, "slot_"+cSlot+"-id_"+idHex, 1)
  HSMInitialize(cModule)
  
  XMLPostRet := HTTPSPost(cUrl, "", "", "", "", cSoapSend, 30, aHeadOut, @XMLHeadRet)
  if !Empty(XMLPostRet)
    conout("        1 - Comunicacao realizada com sucesso !!!")
    conout("[" + XMLPostRet + "]")
  else
    conout("        2 - Falha na  Comunicacao!!!")
  endif
  
return

Veja também

  • Sem rótulos