Este projeto é uma API construída usando Java, Java Spring, Flyway Migrations, PostgreSQL como banco de dados, Spring Security e JWT para controle de autenticação.
- Clona o repository:
git clone https://github.com/lari-nunes/api-autenticacao.git
-
Instale dependências com Maven
-
Instala o banco de dados PostgresSQL
- Inicie o aplicativo com Maven
- A API estará acessível em http://localhost:8080
A API fornece os seguintes endpoints:
GET /product - Recuperar uma lista de todos os produtos. (todos os usuários autenticados).
POST /product - Registre um novo produto (é necessário acesso de ADMIN).
POST /auth/login - Faça login na aplicativo.
POST /auth/register - Cadastre um novo usuário no aplicativo.
A API usa Spring Security para controle de autenticação. As seguintes funções estão disponíveis:
USUÁRIO -> Função de usuário padrão para usuários logados.
ADMIN -> Função administrativa para parceiros gestores (registo de novos parceiros).
- Para acessar endpoints protegidos como usuário ADMIN, forneça as credenciais de autenticação apropriadas no cabeçalho da solicitação.
O projeto utiliza PostgresSQL como banco de dados. As migrations de banco de dados necessárias são gerenciadas usando Flyway.