Skip to content

GuiOliver27/secureusers

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Secure Users API

Descrição

API REST segura para cadastro e autenticação de usuários utilizando:

  • Java 17
  • Spring Boot 3
  • Spring Security
  • JWT
  • BCrypt
  • PostgreSQL
  • Spring Data JPA
  • Bean Validation

Funcionalidades

  • Cadastro de usuários
  • Login com JWT
  • Criptografia de senhas com BCrypt
  • Controle de acesso por Roles (USER/ADMIN)
  • Validação de dados
  • Tratamento global de exceções
  • API Stateless

Estrutura

src/main/java/com/gui/secureusers
├── config
├── controller
├── dto
├── entity
├── exception
├── repository
├── service
└── SecureUsersApplication.java

Executando

mvn clean install
mvn spring-boot:run

Endpoints

Cadastro

POST /api/auth/register

Payload:

{
  "name": "John Doe",
  "email": "johndoe@email.com",
  "password": "Senha@123"
}

Login

POST /api/auth/login

Payload:

{
  "name": "John Doe",
  "email": "johndoe@email.com"
}

Resposta:

{
  "token": "jwt-token",
  "type": "Bearer"
}

Segurança

  • BCrypt para armazenamento de senhas
  • JWT com expiração
  • Validação de entrada
  • Controle de acesso por perfis
  • Mensagens genéricas de autenticação
  • Sessões stateless
  • Segredo JWT fora do código

Melhorias Futuras

  • Refresh Token
  • Rate Limiting
  • Auditoria de eventos
  • Confirmação de e-mail
  • Recuperação de senha
  • Docker Compose
  • Flyway
  • Testcontainers

Autor

Guilherme Monção

About

API REST segura para cadastro e autenticação de usuários

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages