Histórico da Página
Composition Setup |
---|
import.css=/download/attachments/3279126062824/newLayouttecnologia.css |
|
Pagetitle | ||||
---|---|---|---|---|
|
...
...
Função: PFXKey2PEM
Extrai a chave privada de um
...
arquivo com extensão .PFX (formato padrão do IIS - Internet Information Services), e gera como saída um arquivo no formato .PEM (Privacy Enhanced Mail).
Sintaxe
Bloco de código | ||
---|---|---|
| ||
PFXKey2PEM( < cPFXFile >, < cPEMFile >, < @cError >, [ cPassword ] )--> lRet
|
Parâmetros
...
Nome | Tipo | Descrição | Obrigatório | Referência |
---|---|---|---|---|
cPFXFile |
...
caractere | Indica o caminho do arquivo .PFX, a partir da raiz do diretório (RootPath) do TOTVS Application Server. | X |
|
cPEMFile |
...
caractere | Indica o caminho do arquivo .PEM, a partir da raiz do diretório (RootPath) do TOTVS Application Server, com as informações de chave privada. | X |
|
cError |
...
caractere | Indica a saída da mensagem de erro, em caso de falha. | X | X |
cPassword |
...
caractere | Indica a senha para extrair os dados do arquivo PFX. |
|
|
Retorno
Nome | Tipo | Descrição |
---|
...
lRet |
...
lógico |
...
Retorna .T. se conseguiu extrair a chave privada do arquivo .PFX; caso contrário, .F.. |
Observações
- O formato PEM é frequentemente usado para codificação de chaves e certificados em ASCII.
- Caso seja informado nos parâmetros <cPFXFile> ou <cPEMFile> caminho de arquivos no client, a aplicação será terminada com uma ocorrência de erro fatal AdvPL "Only server path are allowed (PFXKey2PEM)".
...
- Esta função tem o comportamento igual a ferramenta PKCS12,
...
- da OpenSSL, com a opção de extrair a chave privada (-nocerts).
...
- Para mais informações sobre a ferramenta PKCS12, consulte a documentação disponível no site da OpenSSL - http://www.openssl.org/docs/apps/pkcs12.html.
Exemplos
Bloco de código | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
user function getPrivKey() Local cPFX := "\certs\tests.pfx" Local cKey := "\certs\key.pem" Local cError := "" Local cContent := "" Local lRet lRet := PFXKey2PEM( cPFX, cKey, @cError, "123" ) If( lRet == .F. ) conout( "Error: " + cError ) Else cContent := MemoRead( cKey ) varinfo( "Key", cContent ) Endif Return |
Abrangência
Microsiga Protheus 8.11
...