Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.
Composition Setup
import.css=/download/attachments/3279126062824/newLayouttecnologia.css
Portuguese
Pagetitle
PFXKey2PEM
PFXKey2PEM
Expand ALL
Função:
PFXKey2PEM

Extrai a chave privada de um

certificado

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
languagecpp
collapsefalse
PFXKey2PEM( < cPFXFile >, < cPEMFile >, < @cError >, [ cPassword ] ) --> lRet 

Parâmetros

/Elementos 

Nome

Tipo

Descrição

Obrigatório

Referência

cPFXFile

Caracter

caractere

Indica o caminho do arquivo .PFX, a partir da raiz do diretório (RootPath) do TOTVS Application Server.

X

 

cPEMFile

Caracter

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

Caracter

caractere

Indica a saída da mensagem de erro, em caso de falha.

X

X

cPassword

Caracter

caractere

Indica a senha para extrair os dados do arquivo PFX.

 

 

 

Retorno

Nome

Tipo

Descrição

Retorno

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)".
Importante
  • Esta função tem o comportamento igual a ferramenta PKCS12,
do
  • da OpenSSL, com a opção de extrair a chave privada (-nocerts).

Exemplos

Bloco de código
themeEclipse
languagecpp
titleExemplo 1
linenumberstrue
collapsefalse
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