SkillProgramaçãoCriação

Padrões de Autenticação e Autorização

Implementa autenticação e autorização — JWT, OAuth2, sessão, RBAC, ABAC e MFA. Use ao projetar o auth de um sistema, escolher entre sessão/JWT/OAuth para uma topologia específica ou auditar uma implementação existente.

Ações
PerfilDev
ProfundidadeAlta
IdiomaInglês (skill original)
Objetivo

Em uma frase.

Orientar o design de autenticação (quem você é) e autorização (o que você pode fazer) para um sistema, ajudando a escolher o padrão adequado à topologia, definir o ciclo de vida dos tokens e modelar as políticas de acesso.

Aplicação

Quando
faz sentido.

Usar
  • Projetar autenticação e autorização para um novo serviço ou sistema.
  • Escolher entre sessão, JWT e OAuth/OIDC para uma topologia específica (web same-origin vs distribuído).
  • Adicionar MFA, RBAC ou ABAC a um app existente sem rearquitetar tudo do zero.
  • Auditar uma implementação de auth existente contra padrões consolidados.
Não usar
  • Ferramenta interna single-tenant sem usuários não confiáveis — basic auth ou SSO já bastam.
  • Exercício puro de threat modeling — use applying-stride-threat-analysis.
  • Resposta a incidente de revogação de token — use um runbook, não um guia de padrões de design.
Prompt

Instruções
para a IA.

A skill cobre autenticação, autorização e o ciclo de vida dos tokens.

### Autenticação (authn)

Escolha o mecanismo pela topologia: sessão no servidor com cookie de ID (fácil de revogar, ideal para web same-origin); JWT stateless e assinado (difícil de revogar, melhor para cenários distribuídos/cross-domain, exige expiração curta + refresh token); OAuth2/OIDC para identidade de terceiros, com fluxo de authorization code + PKCE na web. Para MFA, prefira TOTP ou WebAuthn/Passkeys e use SMS apenas como último recurso.

### Autorização (authz)

Use RBAC (papel → permissões) quando bastar algo simples, ABAC (baseado em atributos de usuário, recurso e contexto) quando precisar de flexibilidade, ou política como código (OPA, Cedar) avaliada em runtime. Aplique authn na fronteira (gateway/middleware) e authz no acesso ao recurso, registrando em log de auditoria cada decisão de autorização.

### Ciclo de vida do token

Use access token curto (15 a 60 min) e refresh token longo (30+ dias), rotacionado a cada uso, com lista de revogação para os refresh tokens.

### Anti-padrões

Evite ID de sessão na URL (vaza em logs), JWTs de vida longa sem caminho de revogação, authn sem authz e autorização apenas no frontend ('só esconder o botão'). A saída esperada inclui diagrama de fluxo de auth, spec do ciclo de vida dos tokens, política de autorização e spec do log de auditoria.
Constelação

Onde
ela vive.

Execução

Como usar
com IA.

  1. 01Copie a skill (botão "Copiar skill para IA", no topo): o texto copiado já é a skill completa, não um resumo.
  2. 02Abra o Claude ou Claude Code e cole — a IA recebe todas as instruções e fica pronta para a tarefa.
  3. 03Prefere usar como arquivo reutilizável? Baixe o .zip e coloque o SKILL.md em .claude/skills/ (Claude Code) ou anexe o arquivo no Claude (claude.ai).