GuiasReferência de API

O Transport Layer Security (TLS) é um protocolo de criptografia muito usado na internet. Já o mTLS é o TLS mútuo. Ou seja, ele verifica se cliente e servidor são realmente quem dizem ser, confirmando suas chaves privadas e analisando se o certificado TLS enviado por ambas as partes é o correto.

O mTLS ajuda a eliminar muitas vulnerabilidades de segurança e garante um trafego mais seguro de informações sensíveis. Ele gera uma camada adicional de segurança inclusive para os usuários dos clientes da API Banking Gateway.

Acesso mTLS

Para acessar os recursos HTTPS precisamos configurar o acesso através de uma camada de segurança mTLS.

Para isso precisamos que:

  1. nos envie um Certificate Signing Request csr gerado a partir de uma chave privada key RSA 2048.
    Segue abaixo o comando para gerar a key e o csr no linux:

    ``` sh
    openssl genrsa -out my_client.key 2048
    openssl req -new -key my_client.key -out my_client.csr
    ```
    
  2. Ao finalizar, envie o csr por email.
    Nós vamos assinar o certificado junto ao nosso CA e lhe devolveremos um certificado em formato pem para o mesmo email.

Chamadas usando mTLS

Agora para efetuar chamadas seguras usando o mTLS da trampol.in basta apenas adicionar o csr e a key no cliente REST.

Exemplo de uso com o comando CURL:

curl --key my_client.key --cert my_client.pem -H "X-Api-Key:$API_KEY" $URL

Se a resposta for:

curl: (35) OpenSSL SSL_connect: Connection reset by peer in connection to apitest.trampol.in:443

Significa que algo deu errado na configuração do mTLS (ou no cliente ou no servidor).

Se a resposta for uma resposta válida de API 200, 401, 403, etc.. O mTLS está funcionando corretamente.

Ambiente de teste x Ambiente de produção

🚧

Atenção!

Antes de testar a nossa API é indicado que você tenha configurado o mTLS nas suas chamadas. Além de configurar sandbox, quando o cliente solicitar a subida para o ambiente de produção é obrigatório pelo BACEN que ele agora, configure o mTLS, para este novo ambiente de produção.