Função: PFXKey2PEM
Extrai a chave privada de um certificado 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).
PFXKey2PEM ( < cPFXFile >, < cPEMFile >, < @cError >, [ cPassword ] ) --> lRet
Nome | Tipo | Descrição | Obrigatório | Referência |
cPFXFile | Caracter | Indica o caminho do arquivo .PFX, a partir da raiz do diretório (RootPath) do TOTVS Application Server. | X | |
cPEMFile | Caracter | 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 | Caracter | Indica a saída da mensagem de erro, em caso de falha. | X | X |
cPassword | Caracter | Indica a senha para extrair os dados do arquivo PFX. |
lRet
- (lógico)
- Retorna .T. se conseguiu extrair a chave privada do arquivo .PFX; caso contrário, .F..
- 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)".
Importante
Esta função tem o comportamento igual a ferramenta PKCS12, do 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 OpenSSL -http://www.openssl.org/docs/apps/pkcs12.html
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
Microsiga Protheus 8.11
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas