Lição 2
Claims JWT
Diferença entre claims registradas, públicas e privadas.
Claims JWT são campos dentro do payload. Descrevem o sujeito, emissor, audiência, limites de tempo, permissões ou fatos específicos da aplicação.
Claims registradas
Claims registradas têm nomes padronizados:
iss: issuer — quem emitiu o tokensub: subject — em geral identificador de usuário ou serviçoaud: audience — destinatário pretendidoexp: tempo de expiraçãonbf: válido a partir deiat: emitido emjti: identificador do token
São opcionais no formato JWT, mas muitos sistemas reais exigem várias delas.
Claims públicas e privadas
Claims públicas são nomes compartilhados entre sistemas. Claims privadas são acordadas entre seus serviços, como role, tenantId, scope ou permissions.
Claims de tempo usam segundos Unix
Claims de tempo JWT costumam ser NumericDate: segundos desde o epoch Unix. JavaScript muitas vezes usa milissegundos — bug comum comparar claim em segundos com timestamp em ms.
Ao depurar, confira sempre o valor Unix bruto e a hora legível em UTC ou local.