auth-implementation-patterns
Ajuda seu agente a implementar sistemas seguros de controle de acesso. Ele entende como as pessoas podem entrar e sair de sistemas de forma protegida.
O que ela faz
Esta ferramenta ajuda a entender e implementar formas seguras de verificar quem é o usuário (autenticação) e o que ele pode fazer no sistema (autorização). Ela cobre métodos como senhas, logins sociais e controle de acesso por grupos.
Quando usar
- ✓Ao criar um sistema de login para um site ou aplicativo.
- ✓Ao proteger o acesso a dados ou funcionalidades.
- ✓Ao tentar entender por que um usuário não consegue acessar algo.
Exemplo do que pedir para a IA
“Como posso fazer para que apenas administradores possam ver certos relatórios?”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
Ela explica conceitos como autenticação (quem você é) e autorização (o que você pode fazer). Ensina padrões como o uso de tokens (JWT) ou sessões para gerenciar o acesso e dá dicas de segurança.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add wshobson/agents --skill auth-implementation-patternsOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/wshobson/agents/main/plugins/developer-essentials/skills/auth-implementation-patterns/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
Padrões de Implementação de Autenticação e Autorização
Crie sistemas de autenticação e autorização seguros e escaláveis usando padrões do setor e as melhores práticas modernas.
Quando Usar Esta Habilidade
- Implementar sistemas de autenticação de usuários
- Proteger APIs REST ou GraphQL
- Adicionar login social/OAuth2
- Implementar controle de acesso baseado em função (RBAC)
- Projetar gerenciamento de sessão
- Migrar sistemas de autenticação
- Depurar problemas de autenticação
- Implementar SSO ou multi-tenancy
Conceitos Principais
1. Autenticação vs. Autorização
Autenticação (AuthN): Quem é você?
- Verificação de identidade (nome de usuário/senha, OAuth, biometria)
- Emissão de credenciais (sessões, tokens)
- Gerenciamento de login/logout
Autorização (AuthZ): O que você pode fazer?
- Verificação de permissões
- Controle de acesso baseado em função (RBAC)
- Validação de propriedade de recursos
- Aplicação de políticas
2. Estratégias de Autenticação
Baseada em Sessão:
- O servidor armazena o estado da sessão
- ID da sessão no cookie
- Tradicional, simples, com estado (stateful)
Baseada em Token (JWT):
- Sem estado (stateless), auto-contido
- Escala horizontalmente
- Pode armazenar claims (declarações)
OAuth2/OpenID Connect:
- Delegação de autenticação
- Login social (Google, GitHub)
- SSO corporativo
Padrões Detalhados e Exemplos Práticos
A documentação detalhada dos padrões está em references/details.md. Leia este arquivo quando a camada de navegação acima for insuficiente.
Melhores Práticas
- Nunca Armazene Senhas em Texto Puro: Sempre use hash com bcrypt/argon2
- Use HTTPS: Criptografe dados em trânsito
- Tokens de Acesso de Curta Duração: Máximo de 15-30 minutos
- Cookies Seguros: Flags httpOnly, secure, sameSite
- Valide Toda Entrada: Formato de e-mail, força da senha
- Limite de Taxa em Endpoints de Autenticação: Prevenir ataques de força bruta
- Implemente Proteção CSRF: Para autenticação baseada em sessão
- Rotacione Segredos Regularmente: Segredos JWT, segredos de sessão
- Registre Eventos de Segurança: Tentativas de login, autenticações falhas
- Use MFA Sempre que Possível: Camada extra de segurança
Armadilhas Comuns
- Senhas Fracas: Imponha políticas de senhas fortes
- JWT no localStorage: Vulnerável a XSS, use cookies httpOnly
- Sem Expiração de Token: Tokens devem expirar
- Apenas Verificações no Lado do Cliente: Sempre valide no lado do servidor
- Redefinição de Senha Insegura: Use tokens seguros com expiração
- Sem Limite de Taxa: Vulnerável a força bruta
- Confiar em Dados do Cliente: Sempre valide no servidor
Perguntas frequentes
Qual a diferença entre autenticação e autorização?
Autenticação é provar quem você é (como com login e senha). Autorização é o que você tem permissão para fazer depois de provar quem você é (como ver ou editar algo).
O que é JWT?
JWT (JSON Web Token) é uma forma de enviar informações de forma segura entre partes, como um passe que o usuário recebe após o login e que o sistema usa para saber quem ele é sem precisar consultar um banco de dados a cada vez.
Por que não devo guardar senhas em texto puro?
Guardar senhas em texto puro é muito perigoso. Se alguém invadir o sistema, terá acesso a todas as senhas. É preciso 'embaralhar' (fazer hash) as senhas para que elas fiquem ilegíveis.
Detalhes
Descrição original do autor
Master authentication and authorization patterns including JWT, OAuth2, session management, and RBAC to build secure, scalable access control systems. Use when implementing auth systems, securing APIs, or debugging security issues.
repo: wshobson/agents
Popularidade
- Estrelas no GitHub
- 41 mil
- Posição no ranking
- #4841
- Licença
- MIT
- Atualizada em
- 15/10/2026
Comentários
- …
Mais skills deste repositório
screen-reader-testing
Faz seu agente testar sites usando leitores de tela para garantir que sejam acessíveis.
wshobson/agents
wcag-audit-patterns
Ajuda seu agente a auditar sites para acessibilidade e corrigir problemas de acordo com as diretrizes WCAG.
wshobson/agents
multi-reviewer-patterns
Faz seu agente coordenar revisões de código paralelas, deduplicando achados e consolidando relatórios.
wshobson/agents
parallel-debugging
Permite ao agente depurar problemas complexos com investigações paralelas e análise de causa raiz.
wshobson/agents
Skills parecidas
django-security
Ajuda seu agente a implementar práticas de segurança em aplicações Django. Ele foca em autenticação, autorização e prevenção contra ataques comuns, garantindo um código mais seguro.
affaan-m/ECC
laravel-security
Ajuda seu agente a proteger aplicações Laravel contra ameaças. Implementa práticas de segurança para autenticação, autorização e prevenção de ataques comuns.
affaan-m/ECC
module-regression
Ajuda seu agente a gerenciar mudanças em projetos grandes. Garante que alterações em uma parte do código não quebrem outras partes.
affaan-m/ECC