Histórico da Página
Composition Setup |
---|
import.css=/download/attachments/6062824/tecnologia.css |
Portuguese |
Pagetitle | ||||
---|---|---|---|---|
|
Extrai as informações
...
do(s) certificado(s) contido(s) em um arquivo de certificados no formato .PEM (Privacy Enhanced Mail).
Sintaxe
Bloco de código | |||
---|---|---|---|
cpp |
| ||
PEMInfo( < cFile >, [ cPassword ],) --> aRet [nHashAlgorithm] ) |
Parâmetros
Nome | Tipo | Descrição | Obrigatório | Referência |
---|---|---|---|---|
cFile |
...
C | Indica o caminho do arquivo .PEM a ser avaliado, a partir |
...
do diretório raiz (RootPath) do |
...
ambiente. | X |
...
cPassword |
...
C | Indica a senha para extrair os dados do arquivo PEM. |
...
nHashAlgorithm | N | Indica o algoritmo de hash que deverá ser usado para o cálculo do Fingerprint/Thumbprint do certificado. Default: SHA1 |
...
Retorno
Nome | Tipo | Descrição |
---|---|---|
aRet | vetor | Retorna um vetor com as informações referente aos certificados existentes no arquivo PEM. |
Observações
- Cada item do vetor representa um certificado contido dentro do arquivo PEM.
Dados retornados para cada certificado:
Índice
Tipo Dado
1
N Versão
...
(0=Versão 1, 1=Versão 2, 2=Versão 3)
2
C Destinatário (Subject)
3
C Emissor (Issuer)
4
C Data de Validade Inicial
5
C Data de Validade Final
6 C Número serial 7 C Fingerprint/Thumbprint (Base64) 8 C Fingerprint/Thumbprint (Hexadecimal) O Fingerprint e/ou Thumbprint é uma representação numérica do conteúdo do certificado calculado por uma função hash. O Algoritmo de hash deverá ser informado de acordo com a tabela abaixo:
Valor
Algoritmo
3
SHA1
4
SHA224
5
SHA256
6
SHA384
7
SHA512
Caso o parâmetro não seja informado, por default, será gerado o Fingerprint do certificado utilizando o algoritmo de hash SHA1. Este recurso será disponibilizado a partir do build version 13.1.3.37 / 13.2.3.37.
- Caso seja informado um caminho de arquivo no client será gerada uma exceção com a mensagem: "Only server path are allowed (PEMInfo)".
- Caso o arquivo PEM não contenha
...
- nenhum certificado, a função retornará um vetor sem elementos.
- Em caso de erro, a função retornará Nil.
Exemplos
Bloco de código | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| language | cpp
| |||||||||||
user function getPEMInfo()
Local cFile := "\certs\tests.pem"
Local aRet := {}
aRet := PEMInfo( cFile )
varinfo( "PEM", aRet )
Return
|
Abrangência
Microsiga Protheus 8.11 e superiores