Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.
Índice
minLevel1
maxLevel7
outlinetrue

Atualização do Perfil de Segurança

O perfil de segurança está em período de transição. O novo perfil será de implementação obrigatória para todos os participantes em 22/05/2024. O perfil anterior continuará vigente até 21/05/2024. Para acessar as documentações do perfil vigente até 21/05/2024, utilize os links da tabela abaixo:

Links para acesso às documentações referentes ao perfil vigente até 21/05/2024

https://openfinancebrasil.atlassian.net/wiki/spaces/OF/pages/17378183/Vis+o+Geral?pageVersion=2

https://openfinancebrasil.atlassian.net/wiki/spaces/OF/pages/17378203/Introdu+o+-+Seguran+a?pageVersion=5

https://openfinancebrasil.atlassian.net/wiki/spaces/OF/pages/82345985?pageVersion=5

https://openfinancebrasil.atlassian.net/wiki/spaces/OF/pages/82083879?pageVersion=4

https://openfinancebrasil.atlassian.net/wiki/spaces/OF/pages/82346047?pageVersion=13

https://openfinancebrasil.atlassian.net/wiki/spaces/OF/pages/82346092?pageVersion=7

https://openfinancebrasil.atlassian.net/wiki/spaces/OF/pages/82051180?pageVersion=11

https://openfinancebrasil.atlassian.net/wiki/spaces/OF/pages/82083996?pageVersion=8

https://openfinancebrasil.atlassian.net/wiki/spaces/OF/pages/82215056/Analise+requisitos+de+criptografia+ID_TOKEN?pageVersion=3

https://openfinancebrasil.atlassian.net/wiki/spaces/OF/pages/82215063?pageVersion=9

https://openfinancebrasil.atlassian.net/wiki/spaces/OF/pages/82051199?pageVersion=10

https://openfinancebrasil.atlassian.net/wiki/spaces/OF/pages/82313425?pageVersion=7

https://openfinancebrasil.atlassian.net/wiki/spaces/OF/pages/82084176?pageVersion=8

https://openfinancebrasil.atlassian.net/wiki/spaces/OF/pages/17378361/Assinaturas?pageVersion=4

https://openfinancebrasil.atlassian.net/wiki/spaces/OF/pages/17378390/Casos+de+Erro?pageVersion=1

https://openfinancebrasil.atlassian.net/wiki/spaces/OF/pages/17378415/Redirecionamento+App-to-App?pageVersion=1

https://openfinancebrasil.atlassian.net/wiki/spaces/OF/pages/17378442/Gloss+rio+de+Seguran+a?pageVersion=1

https://openfinancebrasil.atlassian.net/wiki/spaces/OF/pages/17378462/Refer+ncias+normativas?pageVersion=1

https://openfinancebrasil.atlassian.net/wiki/spaces/OF/pages/17378488/Refer+ncias+informativas?pageVersion=1

Visão Geral Ecossistema

Em sua essência, o Open Finance Brasil é um ecossistema de compartilhamento de dados onde os clientes de bancos e outras instituições financeiras desejam compartilhar suas informações de conta ou dar permissão para que os pagamentos sejam executados em seu nome com serviços de terceiros.

Há uma série de funções necessárias para vincular qualquer sistema de identificação, autenticação e autorização, independentemente do setor. Todas essas funções são necessárias, mas várias funções podem ser desempenhadas por cada participante. Em geral, o usuário final (“Subject”), está dando a um sistema (“Client”) uma autorização (“Access Token”) para acessar um recurso protegido mantido pelo provedor (“Resource Server”). Isso exige que o Subject e o Client sejam identificados e autenticados e que a autorização seja confirmada.

...

Nos ecossistemas de Open Finance voltados para o consumidor que estamos considerando, temos três participantes principais:

  • o cliente (user)

  • a instituição transmissora de dados (provider), que oferece serviços bancários

  • a instituição receptora de dados (TPP - Third Party Provider), que oferece uma proposta de Open Finance para o cliente:

...

O ecossistema também possui provedores de serviços de confiança, que são entidades que fornecem garantia técnica a ambas instituições (transmissoras e receptoras) de que todos estão autorizados a participar do ecossistema.

Os padrões técnicos necessários para dar suporte ao framework de confiança devem atender todos os requisitos a seguir:

  • Identificação de todos os participantes do ecossistema

  • Autenticação quando exigida de todos os participantes entre si

  • Confirmação de autorização de todos os participantes em um ecossistema de compartilhamento de dados

Os serviços técnicos necessários para suportar um ecossistema devem habilitar todos os requisitos acima em uma base e modo contínuos, isto é, não apenas em um único ponto de registro.

...

Todos os participantes devem ter certeza de que todos os atores do ecossistema estão lidando com seus dados com segurança o tempo todo. Isso requer que todos os participantes testem publicamente seus sistemas quanto à conformidade com as especificações e disponibilizem os resultados de seus testes de conformidade para exame público de outros participantes.

Este é um requisito aplicável às instituições participantes transmissoras e receptoras de dados.

Principais Padrões de Segurança

...

O ecossistema de compartilhamento de dados definido pelo Brasil consiste em muitos padrões diferentes, todos girando em torno de conceitos, funções e obrigações que foram tecnicamente definidos no OAuth 2.0 Authorization Framework.

...

A estrutura de autorização OAuth 2.0 permite uma aplicação de terceiros (third-party application) obter acesso limitado a um serviço HTTP, seja em nome do proprietário de recurso (resource owner) por meio da orquestração de uma interação de aprovação entre o proprietário do recurso e o serviço HTTP, ou permitindo a aplicação de terceiros obter acesso em seu próprio nome.

A especificação base OAuth 2.0 não fornece, por si só, informações suficientes para atender a todas as necessidades definidas pelo framework de confiança do Open Finance Basil. Mais notavelmente, não possui uma maneira de transmitir informações de identidade do cliente em um formato padronizado de uma instituição transmissora para uma receptora, e os mecanismos de autenticação que foram definidos na especificação original não são seguros o suficiente para atender aos requisitos de uma indústria altamente regulamentada.

OpenID Connect - A Camada de Identidade para a Internet

...

OpenID Connect é um conjunto de especificações simplificadas que fornecem uma estrutura para interações de identidade por meio de APIs do tipo REST. A implementação mais simples do OpenID Connect permite que clients de todos os tipos, incluindo baseados em navegador, celulares e clients javascript, solicitem e recebam informações sobre identidades e sessões atualmente autenticadas. O conjunto de especificações é extensível, permitindo que os participantes também suportem, opcionalmente, criptografia de dados de identidade, descoberta do OpenID Provider e gerenciamento avançado de sessão, incluindo logout

Este perfil herda todas as obrigações do OAuth 2.0

O grupo de trabalho OpenID Foundations Connect tem sido o guardião do Padrão de Identidade “de fato” da Internet por muitos anos, trabalhando em várias especificações que se baseiam no framework de autorização OAuth 2.0, adicionando recursos e requisitos de suporte para melhorar a segurança do framework em si.

Open ID Connect Core: é um perfil do OAuth 2.0, o que significa que herda todos os requisitos e obrigações do OAuth 2.0, mas define o conceito de um id_token e introduz novos mecanismos de autenticação.

Open ID Connect Discovery: apresenta o conceito de um documento de descoberta usado por OpenID Connect (OIDC) Providers para anunciar como os clients OAuth 2.0 podem se comunicar com eles e quais recursos e opções o OIDC Provider oferece suporte.

RFC7591: além de definir o processo de registro dinâmico de clients OAuth, esta especificação apresenta o conceito de Software Statement (“Declaração de Software”), que pode ser usada para fornecer informações sobre um client que é atestado por um serviço de terceiros. Outros atributos de metadados também são definidos no OpenID Connect Registration Specification

...

Esta especificação define mecanismos para registrar dinamicamente clients OAuth 2.0 com Authorization Servers (servidores de autorização). Pedidos de registro enviam um conjunto de valores de metadados do client desejado para o Authorization Server. As respostas de registro resultantes retornam um client identifier para ser usado no Authorization Server e os valores de metadados registrados para o client. O client pode então usar esta informação de registro para se comunicar com o Authorization Server usando o protocolo OAuth 2.0. Esta especificação também define um conjunto de campos de metadados do client e valores para os clients usarem durante o registro.

RFC7592: Esta especificação define métodos de gerenciamento de dynamic client registration (registros de cliente dinâmico) do OAuth 2.0 para casos de uso em que as propriedades de um client registrado necessitam ser alteradas durante a vida do client.

As especificações acima são especificações básicas cuja leitura obrigatória sustenta o framework de confiança do Open Finance Brasil. Entretanto, eles ainda são insuficientes para atender a todos os requisitos e princípios descritos anteriormente.

OpenID Financial Grade 1.0: Baseline

Este perfil herda todas as obrigações do OpenID Connect Core

Reconhecendo as ameaças e riscos restantes que não foram tratados pelo OpenID Connect Core, o grupo de trabalho Financial Grade tem como foco criar uma especificação que visa identificar e endereçar os pontos fracos na especificação OpenID Connect, essencialmente criando um perfil para casos de uso que exigem alto nível segurança.

O perfil Baseline foi originalmente planejado para ser mais facilmente implementado por clients e OpenID Providers às custas de alguns elementos de segurança e, como tal, não oferece o mesmo grau de proteção contra violação de solicitação e resposta.

OpenID Financial Grade 1.0: Avançado

Este perfil herda todas as obrigações do OpenID FAPI 1.0: Baseline

O FAPI 1.0: Advanced profile é atual padrão ouro para API Security, fornecendo um framework de especificação que foi usado como ponto de partida para a criação de uma especificação para o Open Finance Brasil.

...

Este padrão especifica um perfil de segurança avançado do OAuth que é adequado para ser usado na proteção de APIs com alto risco inerente. Os exemplos incluem APIs que dão acesso a dados altamente confidenciais ou que podem ser usados para acionar transações financeiras (por exemplo, início de pagamento). Este padrão especifica os controles contra ataques, como: violação de solicitação de autorização, violação de resposta de autorização, incluindo injeção de código, injeção de estado e phishing de solicitação de token.

...

...

Perfil de Segurança do Open Finance Brasil

Perfil da certificação OIDF

BR-OB Adv. OP w/ MTLS

BR-OB Adv. OP w/ Private Key

BR-OB Adv. OP w/ MTLS, PAR

BR-OB Adv. OP w/ Private Key, PAR

Camadas de Segurança Básicas

Camada

Descrição

Explicação

Física

Firewall

Equipamentos e produtos como filtros, proxys e firewalls direcionados ao controle e segurança da rede física.

Transporte

HTTP - TLS 1.2

Protocolo de criptografia que fornece segurança na comunicação sobre a rede física.

Gestão

API Gateway / Manager

Gateway e Manager para gerenciar a publicação da API com controles de throttling, quotas e outros.