Emitir Certificado
emitir-certificado
POST <base_url>/webservice/emitir-certificado
Inicia a emissão do Certificado Digital.
Path Parameters
Accept
string
application/json
Cookies
PHPSESSID*
String
Retornado na abertura de sessão
Request Body
solicitacao*
string
Número do usuário
mensagem*
string
mensagem JSON para o Servidor
nonce1*
string
Nonce calculado pelo Cliente
hmac*
string
Hmac calculado pelo Cliente
Os dados devem ser enviados como form-data.
Este serviço requer autenticação hmac com sessão.
O conteúdo do parâmetro mensagem deverá estar no formato JSON com os seguintes itens:
tipo: Deverá ser enviado o formato desejado PEM (somente certificado) ou P7B/PKCS7 (cadeia completa).token: Caso o certificado seja do tipo A3 ou A4 deverá ser enviado o nome do token ou HSM em que está sendo emitido o certificado.computador: Nome do computador que está fazendo a requisição.sistema_operacional: Dados do sistema operacional do computador que está fazendo a requisição.versao: Detalhes da aplicação de emissão (versão e informações).interfaces: Lista de interfaces (array)nomeipmac
app: Parâmetro obrigatório somente para certificados do tipo A3 e A4. *Caso akeyfique em hardcoded poderá ser armazenada somente o hash sha256 dakeyno código fonte da aplicação de emissão.appid: Identificador da aplicação (Fornecido pela AC SOLUTI).token: Token para autenticação e autorização da aplicação de emissão do token. Exemplo:token= sha256(appid|| sha256(key) || sha256(csr) ||nonce)nonce: O númerononcedeve ser composto por uma parte pseudoaleatória com 4 (quatro) números concatenada com o timestamp (Unix Timestamp sem microssegundos).
csr: Certificate signing request (formato PKCS#10).digitalterm_signature: Parâmetro obrigatório somente para solicitações do tipo Termo Digital (Resolução N°136 ITI). O hash recebido na chavedigitalterm_hashno serviço Validar dados da emissão deve ser assinado no padrão PKCS#1 v1.5. PEM.url_emissor: URL do emissor que está realizando a emissão do certificado. Parâmetro obrigatório somente para solicitações onde o Produto está com a emissão restrita ativa. Exemplo: meu-emissor.com.br
A emissão de Certificados A3 e A4 é possível somente com emissores credenciados pela AC SOLUTI.
Código de exemplo
Primeiramente vamos iniciar a sessão:
Guarde o cookies recebido, você irá envia-lo em todas as requisições após a abertura de sessão (nas requisições que precisa de hmac com sessão).
Resposta esperada
Guarde o nonce1 enviado e ononce2 recebido, você irá utiliza-los em todas as requisições após a abertura de sessão (nas requisições que precisa de hmac com sessão).
Agora iremos gerar o par de chaves, gerar CSR, assinar o conteúdo da chave digitalterm_hash e enviar para o Sistema de AR:
Guarde o valor da variável $chavePrivada, ele será necessário para montar o arquivo pfx após a recuperação do certificado.
Esse conteúdo deve ser guardado criptografado, com elevado grau de segurança. Qualquer vazamento ou utilização indevida, o certificado deverá ser revogado.
Resposta esperada
Aguarde 30 segundos realize uma nova requisição ao serviço valida-dados-emissao. Quando o mesmo retornar o valor 2 na chave status, iremos consumir o serviço para recuperar o certificado.
Last updated
Was this helpful?