Tempo aproximado para leitura: 00:03:10 min
Dúvida
Como salvar e importar certificados de websites no Progress?
Ambiente
Framework - Framework (Linha Datasul) – Progress OpenEdge – Versão 12
Solução
Podemos desenvolver rotinas em programas Progress para interagir com websites, como um consumo de um webservices por exemplo. Quando o website utilizado possui o protocolo HTTPS habilitado, estes certificados devem estar disponíveis no Progress para conseguir efetuar a comunicação, caso contrário serão apresentados alguns erros similares a este:
Secure Socket Layer (SSL) failure. error code -54: unable to get local issuer certificate: for 4bfab552.0 in C:\dlc117\certs (9318)
Os certificados podem ser obtidos com o responsável do website, ou como são públicos, também podem ser salvos diretamente do endereço dele. Para isto, acesse em um navegador web a URL utilizada pelo programa Progress. No navegador, clique no botão do cadeado que normalmente fica perto da barra de endereços e localize a opção para mostrar os certificados.
Na tela de informações do certificado, existe a aba Detalhes que possui a opção para salvar o certificado em arquivo. No momento de salvar para arquivo há alguns formatos possíveis, utilize como sugestão a opção X.509 codificado na base 64 (*.cer). Outros formatos são também suportados pelo Progress, porém o comando para importar os certificados que iremos abordar a frente pode mudar um pouco.
Com o arquivo salvo em disco, abra o atalho proenv do Progress na máquina onde o programa é executado. Para importar execute pelo proenv o comando certutil com a opção -import e informe o caminho e nome do arquivo salvo. Exemplos:
%DLC%\bin\certutil -import c:\Temp\certificado.cer
$DLC/bin/certutil -import /tmp/certificado.cer
Além do certificado do website, será necessário o certificado da Autoridade Certificadora que emitiu este e os certificados intermediários. O Progress vem com uma série de certificados, mas é recomendado fazer este processo de importação para toda a cadeia, escolhendo e salvando cada certificado individualmente. Exemplo:
Trazendo mais um exemplo de como baixar toda a cadeia de certificados e importar para todos eles no Progress OpenEdge:
Ao salvar na máquina retirar os espaços, sugestão pode ser 1, 2 e 3, se tiver o nome com espaço por gerar erro no comando de importação no Progress OpenEdge.
Após este procedimento, é necessário abrir um nova sessão do Progress para utilizar o certificado importado.
Glossário
HTTPS - Hyper Text Transfer Protocol Secure
URL - Uniform Resource Locator
0 Comentários