Segurança e Tokens no Orion
Como Funciona a Autenticação no Orion
O Orion utiliza uma arquitetura de segurança moderna baseada em OAuth2 e Spring Security para garantir que apenas usuários autorizados acessem o sistema. O processo é dividido em etapas para maximizar a segurança e a praticidade.
1. Login Seguro
O usuário acessa a tela de login e informa suas credenciais (usuário e senha).
Se a autenticação de dois fatores (2FA) estiver ativada, um código de 6 dígitos é enviado por e-mail para o usuário.
O usuário informa o código recebido para completar o login.
2. Geração e Uso de Tokens
Após o login, o sistema gera dois tipos principais de tokens:
Access Token (Bearer Token):
Usado para autorizar o acesso às funcionalidades do sistema. Ele é enviado automaticamente em cada requisição feita pelo frontend, garantindo que apenas usuários autenticados possam acessar os recursos.Refresh Token:
Usado para renovar o access token quando ele expira, sem exigir que o usuário faça login novamente. Isso proporciona uma experiência contínua e segura.
3. Armazenamento e Validação
Os tokens são armazenados de forma segura no banco de dados do Orion.
O frontend armazena o access token localmente e o envia em cada requisição.
O sistema valida o token a cada acesso, garantindo que ele seja válido e não tenha expirado.
4. Gerenciamento por Dispositivo
Cada dispositivo (computador, celular) recebe um token específico, permitindo controle detalhado sobre onde e como o usuário está autenticado.
Se necessário, tokens podem ser invalidados remotamente, aumentando a segurança.
5. Renovação Transparente
Quando o access token expira, o frontend utiliza o refresh token para obter um novo access token automaticamente, sem interromper o uso do sistema.
Finalidade de Cada Token
Basic Token:
Utilizado apenas para autenticação inicial no endpoint/oauth/token.Bearer Token (Access Token):
Usado para autorizar todas as requisições à API. Deve ser enviado no cabeçalho das requisições como:Authorization: Bearer {access_token}Refresh Token:
Usado para renovar o access token quando ele expira. Ele é armazenado de forma segura e tem um ciclo de vida maior que o access token.
Segurança Adicional
Todos os dados sensíveis, como senhas e tokens, são criptografados.
Tokens expirados são removidos automaticamente, e todos os tokens podem ser invalidados em caso de alteração de configurações críticas.
