Neste artigo você vai aprender se é seguro salvar JWT na localStorage, e quais alternativas temos para esta ação

salvar JWT na localStorage capa

E aí pessoal, bem-vindos a mais um artigo!

Hoje vamos falar sobre se é seguro salvar JWT (JSON Web Token) na LocalStorage.

Provavelmente vocês já ouviram falar de JWT, é um jeito bem comum de fazer autenticação e autorização sem precisar mandar suas credenciais a cada requisição.

E a LocalStorage? É aquela coisa que guarda dados no seu navegador, é útil pra guardar coisas do lado do cliente.

Mas tem algumas preocupações de segurança quando se trata de guardar JWT lá, então vamos explorar isso e ver se realmente é seguro.

O que é JWT?

Basicamente é um token que guarda informações do usuário em formato de JSON, é uma forma de autenticação e autorização.

Quando você faz login em algum lugar, ao invés de mandar suas credenciais (como email e senha) a cada requisição, é gerado um token único e você manda esse token a cada vez.

Assim, o servidor sabe que você já foi autenticado antes e não precisa pedir suas credenciais de novo.

Ele também pode armazenar informações do usuário, como seu nome e permissões.

E pra verificar se esse token é válido, ele é decodificado e as informações são conferidas. Então é uma forma legal e segura de manter o usuário logado e controlar permissões.

Riscos de segurança do JWT

Então, falando de riscos de segurança, guardar JWT na LocalStorage não é uma boa ideia.

O principal problema é que qualquer pessoa que tenha acesso ao seu computador, pode ter acesso a esse token.

Imagine se alguém pega seu computador enquanto você está ausente, essa pessoa poderia acessar suas informações pessoais e realizar ações como se fosse você.

Além disso, se alguém consegue injetar scripts maliciosos no seu site, eles podem pegar o JWT da LocalStorage e usá-lo para realizar ações maliciosas.

Outro problema é que se o usuário limpar o cache ou os dados do navegador, esses dados seriam perdidos.

Enfim, guardar JWT na LocalStorage não é seguro e existem outras formas mais seguras, como usar sessões ou cookies HTTP Only e Secure para armazenar esses dados.

Alternativas de armazenamento

Então, agora vocês devem estar se perguntando, se não é seguro guardar JWT na LocalStorage, onde eu guardo então?

Não se preocupem, existem outras formas mais seguras de armazenar esses dados.

Uma das opções é usar sessões. Quando o usuário faz login, um ID de sessão único é gerado e guardado no servidor.

Esse ID é enviado de volta para o cliente e armazenado em um cookie.

Então, a cada requisição, o ID da sessão é enviado de volta para o servidor, e o servidor pode verificar se essa sessão ainda é válida.

Isso significa que as informações do usuário estão seguras no servidor e não podem ser acessadas por terceiros.

Outra opção é usar cookies HTTP Only e Secure. Os cookies HTTP Only não podem ser acessados ​​por scripts e os cookies Secure só são enviados em conexões seguras (HTTPS).

Isso significa que as informações do usuário estão seguras e não podem ser acessadas por scripts maliciosos.

Escolha uma dessas alternativas para garantir a segurança das informações do usuário.

Deixe um comentário contando o que achou deste artigo 🙂

Quer aprender mais sobre JavaScript? Confira o vídeo abaixo:

Conclusão

Então, chegamos ao fim desse artigo, espero que vocês tenham entendido porque não é seguro guardar JWT na LocalStorage.

A LocalStorage é uma ferramenta útil, mas não é segura o suficiente para armazenar JWT.

Existem outras alternativas mais seguras, como sessões e cookies HTTP Only e Secure.

Então, na próxima vez que precisar guardar JWT, escolha uma dessas opções e garanta que as informações do usuário estarão seguras. Obrigado por ler até aqui e até a próxima!

Está buscando a sua primeira vaga como Programador? Confira o nosso treinamento completo clicando aqui.

Uma plataforma de cursos com projetos completos, comunidade de alunos e muito mais!

Há também o nosso canal no YouTube, com muito conteúdo gratuito de qualidade!

Subscribe
Notify of
guest

0 Comentários
Inline Feedbacks
View all comments