Conjunto integrado de aplicativos Django que abordam autenticação, registro, gerenciamento de contas, bem como autenticação de contas de terceiros (sociais).
Página inicial
https://allauth.org/
Código fonte
https://codeberg.org/allauth/django-allauth
Rastreador de problemas
https://codeberg.org/allauth/django-allauth/issues
Documentação
https://docs.allauth.org/en/latest/
Estouro de pilha
https://stackoverflow.com/questions/tagged/django-allauth
Demonstração
https://django.demo.allauth.org e https://react.demo.allauth.org
Traduções
https://hosted.weblate.org/projects/allauth/django-allauth/
A maioria dos aplicativos Django existentes que abordam o problema da autenticação social, infelizmente, focam apenas em uma dimensão – a social. A maioria dos desenvolvedores acaba integrando outro aplicativo para suportar fluxos de autenticação gerados localmente.
Esta abordagem cria uma lacuna de desenvolvimento entre os fluxos de autenticação local e social. Permaneceu um problema, apesar dos vários cenários comuns que ambos exigem. Por exemplo, um endereço de e-mail repassado por um provedor OpenID pode não ser verificado. Portanto, antes de conectar uma conta OpenID a uma conta local, o endereço de e-mail deve ser verificado. Este é essencialmente um dos muitos casos de uso que exigem que a verificação de e-mail esteja presente em ambos os mundos.
Integrar ambos é um processo enorme e tedioso. Não é tão simples quanto adicionar um aplicativo de autenticação social e um aplicativo de registro de conta local à sua lista INSTALLED_APPS
.
Essa inadequação é a razão da existência deste projeto – oferecer um aplicativo de autenticação totalmente integrado que permite autenticação local e social, com fluxos que funcionam perfeitamente!
Funcionalidade de conta abrangente
Suporta múltiplos esquemas de autenticação (por exemplo, login por nome de usuário ou por e-mail), bem como múltiplas estratégias para verificação de conta (variando de nenhuma até verificação obrigatória de e-mail).
Login social
Faça login usando provedores de identidade externos, suportando qualquer provedor compatível com Open ID Connect , muitos provedores OAuth 1.0/2.0 , bem como protocolos personalizados como, por exemplo, autenticação Telegram .
Pronto para empresas
Suporta SAML 2.0, que é frequentemente usado em um contexto B2B.
Testado em batalha
O pacote está aberto desde 2010. Está em uso por muitas empresas comerciais cujos negócios dependem dele e, portanto, foi submetido a várias tentativas de testes de penetração.
⏳ Limitação de taxa
Ao expor um serviço Web habilitado para autenticação à Internet, é importante estar preparado para possíveis tentativas de força bruta. Portanto, a limitação de taxa é habilitada imediatamente.
Privado
Muitos sites vazam informações. Por exemplo, em muitos sites você pode verificar se alguém que você conhece tem uma conta inserindo seu endereço de e-mail no formulário de senha esquecida ou tentando se inscrever com ele. Oferecemos prevenção de enumeração de contas, tornando impossível saber se alguém já possui ou não uma conta.
Personalizável
Como desenvolvedor, você tem flexibilidade para personalizar a funcionalidade principal de acordo com seus requisitos específicos. Ao empregar o padrão adaptador, você pode facilmente introduzir intervenções nos pontos desejados para se desviar do comportamento padrão. Este nível de personalização permite que você adapte o software para atender às suas necessidades e preferências exclusivas.
Configuração
As chaves e segredos do consumidor necessários para interagir com o Facebook, X (Twitter) e similares podem ser configurados usando configurações regulares ou podem ser configurados no banco de dados através do administrador do Django. Aqui, está disponível suporte opcional para a estrutura de sites Django, o que é útil para projetos maiores de vários domínios, mas também permite alternar facilmente entre uma configuração de desenvolvimento (localhost) e de produção sem mexer nas configurações e no banco de dados.
Suporte comercial está disponível. Se você encontrar alguma funcionalidade faltando ou precisar de assistência em seu(s) projeto(s), entre em contato conosco: [email protected].