Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Certificado mTLS #572

Open
johngalt85 opened this issue Oct 10, 2023 · 4 comments
Open

Certificado mTLS #572

johngalt85 opened this issue Oct 10, 2023 · 4 comments

Comments

@johngalt85
Copy link

Boa tarde,

Quanto ao requisito de segurança mTLS, em leitura ao Manual de Padrões
para Iniciação do Pix v2.6.3
, página 46 item 2 c:

"O Authorization Server do PSP deve implementar a técnica de vinculação do certificado
do cliente aos access tokens emitidos (“Client Certificate-Bound Access Tokens”),
conforme seção 3 da RFC 8705."

Isso signiifca que o PSP deve obrigatoriamente validar se o acess token gerado é de titularidade do certificado apresentado no momento das chamadas da API?
Pois quando se trata de webhook, a documentação é literal em enfatizar ser recomendável, porém esclarece que - "não há objeção quanto à utilização de outros certificados, mediante acordo entre o PSP e o usuário recebedor."

Já nas chamdas da API, essa flexibilidade não está explícita, porém fiquei em dúvidas se o trecho transcrito acima da página 46 item 2 c, está vedando essa flexibilidade.

A dúvida é, posso fechar o mTLS com qualquer certificado confiável para o PSP recebedor apresentado na chamada, independente das credenciais OAuth serem de outro cliente?

@rubenskuhl
Copy link

Se misturaram dois temas acima: CA emissora dos certificados e certificados propriamente ditos.

Os certificados precisam ser sempre emitidos para o correntista fazendo a transação ou recebendo o webhook... agora, se quem emitiu os certificados foi o PSP, foi um prestador ICP-Brasil, foi uma CA confiável do CA/B Forum, tanto faz.

A possibilidade de modelos OAuth com alguém representando terceiro já foi levantada aqui no fórum, e o BACEN diz que na versão atual, não.

@johngalt85
Copy link
Author

johngalt85 commented Oct 10, 2023

@rubenskuhl obrigado por responder, minha dúvida está atrelada especificamente a certificados propriamente ditos e não a CA emissora.
Um provedor de solução TEF ou qualquer ERP que faça frente de caixa, deve obrigatoriamente apresentar na chamada o certificado propriamente dito de titularidade do correntista também titular das credenciais? O PSP Recebedor é obrigado a fazer a checagem se o certificado apresentado para fechar o mTLS é do mesmo CNPJ titular das credenciais?
Ou o certificado sendo confiável para o PSP Recebedor já é o suficiente? E portanto pode ser usado o mesmo certificado para várias credenciais?

Pois lendo toda a documentação do BACEN, essa obrigatoriedade ou eventual flexibilidade não fica explícita, para as chamadas da API, tal qual está explícita no uso do webhook, veja página 53 do Manual de Padrões para IniciacaodoPix

  1. Para a funcionalidade de webhooks, as notificações oriundas do PSP recebedor ao usuário
    recebedor trafegarão utilizando um canal mTLS.
    a. Recomenda-se que os certificados utilizados para autenticação mútua no canal TLS do
    webhook sejam os mesmos da API Pix. De todo modo, não há objeção quanto à
    utilização de outros certificados, mediante acordo entre o PSP e o usuário recebedor.

@rubenskuhl
Copy link

Sim para as duas primeiras perguntas, não para as duas últimas.

A interpretação que você está tentando fazer é bem torta, e o histórico de postagens do BACEN neste repositório deixa bem claro que isso não vai colar.

@rubenskuhl
Copy link

Reler o #83 pode ajudar nesta questão.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants