Pular para o conteúdo principal
Versão: 1.0

As 3 camadas de identidade

O que torna este projeto parecido com uma integração real são as três "chaves", cada uma com um papel diferente. Entender isso resolve 90% das dúvidas de autenticação.

1. X-API-Key — o grupo (tenant)​

Identifica qual grupo está chamando e isola os dados. É obrigatória em quase toda rota de negócio.

X-API-Key: sk_live_xxxxxxxxxxxxxxxx
Nunca commitem a chave

A chave dá acesso total à loja do grupo. Guardem em variável de ambiente do app e não subam para repositório público. Se vazar, gerem outra no painel (a antiga é revogada).

2. X-Student-RM — quem fez a chamada​

Diz qual aluno do grupo está codando/testando. É como o professor vê a participação de cada um.

X-Student-RM: RM550001
Conta na avaliação

Coloque o RM de quem está mexendo. Cada chamada vira uma linha de log com grupo + RM + rota + status + latência. Participação distribuída = todos aparecem.

3. Authorization: Bearer — o cliente final​

Quando o comprador da loja de vocês faz login, ele recebe um token JWT. As chamadas "do cliente" (carrinho, checkout, pedidos dele) levam esse token.

Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
Dica de arquitetura

No painel do aluno (admin web), o token do aluno também vale no lugar da X-API-Key. Ou seja: o app mobile de vocês usa X-API-Key; o painel de gestão usa o token de login do aluno.

Resumo de bolso​

HeaderObrigatório?Quem envia
X-API-KeySim (rotas de negócio)App/loja do grupo
X-Student-RMRecomendadoApp/loja do grupo
Authorization: BearerSó em ações do cliente logadoApós POST /auth/login