GovBR Auth

Engine de autenticação Gov.br com adapters opcionais para FastAPI, Django e Flask, usando OAuth 2.0, PKCE e OpenID Connect. O cliente valida state, tokens RS256 por JWKS, issuer, audience, nonce e o vínculo do subject.

O núcleo de composição é neutro de framework. Os adapters são instalados por extras e se acoplam à aplicação hospedeira.

As transações OAuth são stateless: múltiplos workers processam callbacks sem armazenamento compartilhado quando recebem a mesma secret GOVBR_TRANSACTION_SECRET. O envelope Fernet tem TTL e carrega os vínculos de PKCE e nonce. O state não é um registro de uso único; o replay é rejeitado pelo authorization code de uso único no provedor.

A aplicação inicia o login no gov.br; o navegador retorna ao callback, o govbr-auth valida a autenticação e a aplicação estabelece sua sessão.

O govbr-auth conduz a autorização e valida os tokens. A aplicação consumidora decide como estabelecer a sessão do usuário autenticado. Veja o Fluxo completo de comunicação para a sequência técnica detalhada.

O FakeGov local permite executar o fluxo completo localmente com usuários fictícios, sem alterar a fachada usada com o provedor oficial.

Índice e busca