Referência da API¶
django_govbr_auth.backends.GovBrAuthBackend¶
Backend de autenticação responsável por integrar a resposta do Gov.br com o modelo de usuário do Django.
Métodos Principais¶
authenticate(request, govbr_user_info=None, **kwargs)¶
Método principal chamado pelo Django. Processa as informações do usuário e retorna a instância de User.
get_user_attrs(govbr_user_info, cfg)¶
Converte o perfil bruto em um dicionário de atributos do modelo User.
get_lookup_value(attrs, lookup_field)¶
Extrai o valor de busca (ex: valor do username/sub) do dicionário mapeado.
get_or_create_user(lookup_field, lookup_value, mapped_attrs, cfg)¶
Busca o usuário no banco local ou chama create_user caso ele não exista. Lança GovBrUserNotAllowedError se CREATE_USER for False.
create_user(lookup_field, lookup_value, mapped_attrs, cfg)¶
Instancia e salva um novo usuário no banco de dados.
update_user(user, mapped_attrs, cfg)¶
Sincroniza os atributos alterados no login de um usuário existente.
django_govbr_auth.client.GovBrOAuth2Client¶
Cliente de baixo nível para interação HTTP com as APIs do Gov.br.
Métodos¶
get_authorization_url(state, code_challenge): Retorna a URL completa de autorização com parâmetros PKCE (S256).exchange_code_for_token(code, code_verifier, timeout=30): Troca o código peloaccess_tokeneid_token.get_user_info(access_token, timeout=30): Consulta o perfil do usuário no endpoint/userinfo.get_logout_url(id_token_hint=None, post_logout_redirect_uri=None): Retorna a URL de logout OIDC.
django_govbr_auth.exceptions¶
GovBrAuthError: Exceção base do pacote.GovBrStateMismatchError: Erro de divergência de estado (CSRF).GovBrTokenError: Falha na troca do código de autorização pelo token.GovBrUserInfoError: Falha ao consultar os dados do perfil do usuário.GovBrUserNotAllowedError: Lançado quando a criação de novos usuários está desativada (CREATE_USER=False).GovBrAuthenticationError: Erro geral durante o fluxo de autenticação.