Pular para o conteúdo
Skillpedia
Segurança41 mil · #4841

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

https://github.com/wshobson/agents/blob/main/plugins/developer-essentials/skills/auth-implementation-patterns/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/wshobson/agents/blob/main/plugins/developer-essentials/skills/auth-implementation-patterns/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
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-patterns

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/wshobson/agents/main/plugins/developer-essentials/skills/auth-implementation-patterns/SKILL.md -o SKILL.md
Conteú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

  1. Nunca Armazene Senhas em Texto Puro: Sempre use hash com bcrypt/argon2
  2. Use HTTPS: Criptografe dados em trânsito
  3. Tokens de Acesso de Curta Duração: Máximo de 15-30 minutos
  4. Cookies Seguros: Flags httpOnly, secure, sameSite
  5. Valide Toda Entrada: Formato de e-mail, força da senha
  6. Limite de Taxa em Endpoints de Autenticação: Prevenir ataques de força bruta
  7. Implemente Proteção CSRF: Para autenticação baseada em sessão
  8. Rotacione Segredos Regularmente: Segredos JWT, segredos de sessão
  9. Registre Eventos de Segurança: Tentativas de login, autenticações falhas
  10. 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

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas