DEV Community

Gustavo Inocencio
Gustavo Inocencio

Posted on

3 3

Autenticação em Single Page Applications

Nesse artigo será explicado como funciona a autenticação em SPAs.
Diferente de páginas web comuns SPAs não recebem uma session do servidor ao enviar dados os dados de autenticação (e-mail /senha por exemplo).
Tipicamente, quando se usa SPAs no front é utilizada uma API restful para autenticação. O servidor não se importa com diferentes clients se conectando a ele, por isso não é utilizada uma session.
Em vez disso, é utilizado um token, um objeto JSON. JSON Web Token (JWT) é a forma mais comum de token que se recebe. Trata-se de uma string codificada em Base64.
Exemplo de JWT:

eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
Enter fullscreen mode Exit fullscreen mode

Essa string pode ser dividida em três partes:

  1. Header que descreve o token
  2. Um payload que contém a parte do json codificado
  3. Um hash de assinatura que pode ser usado para verificar a integridade do token

A segunda parte (payload) carrega os dados que te permitem saber quem é essa pessoa, o que ela pode acessar (escopo) e quando esse token expira. A API usará essa informação quando verificar seu token

E então, ao receber esse objeto deve-se armazena-lo no local storage ou session storage. Com esse objeto armazenado pode-se utilizá-lo para enviar requests para o servidor, para que este saiba que o request está sendo realizado de uma fonte autenticada.

Top comments (0)

AWS Security LIVE!

Join us for AWS Security LIVE!

Discover the future of cloud security. Tune in live for trends, tips, and solutions from AWS and AWS Partners.

Learn More