Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged.
- Autenticação em memória: login-page api
- Autenticação via Banco de dados: consumer api
- Autenticação via Token JWT: autentication api
- JDK 11: JAVA SE 11 Archive Downloads - ORACLE
- Maven: Apache Maven | Introdução ao Maven - DEVMEDIA | Instalando Maven
- Spring Boot 3.0: Spring Boot - spring.io | Spring Initializer
- Hibernate: Hibernate | Guia de Referência - DEVMEDIA | O que é e o porque devo utilizar o Hibernate - Medium
obs: Esta api foi desenvolvida utilizando o intellij - Free Educational Licenses - que oferece um sistema gerenciador de banco de dados (SGBD) integrado a própria IDE. Como alternativa, sugiro o uso do DBeaver. instalação ubuntu
clone o projeto
git clone https://github.com/andre-bandeli/auth-spring-security-springboot.git
entre na pasta do projeto, onde encontra-se o arquivo pom.xml:
cd auth-security-springboot
Rode o comando para instalar as dependências através do maven:
mvn clean install
O seguinte resultado é esperado:
Objeto JSON para autenticação/criação de usuário no banco de dados:
{
"nome": " ",
"sobrenome": "",
"email" : "",
"password": ""
}
Criar nova conta de usuário:
POST: localhost:8080/api/v1/auth/register
Autenticar-se:
POST: localhost:8080/api/v1/auth/autheticate
Página inicial (requer autenticação):
GET: localhost:8080/api/v1/home
Quando uma nova conta é registrada ou autenticada, cria-se um token JWT ncessário para realizar as requisições. Utilize o token gerado para utilizar na autenticação do Postman:
Estrutura do diretório de testes unitários
Amigoscode (Youtube)
docs.spring.io (Documentação)
Em caso de dúvidas, sugestões ou melhorias, abra uma nova issue ou envie uma mensagem através de alguma de minhas redes:
- Email: andre.lbandeli@gmail.com
- Linkedin: https://www.linkedin.com/in/andrébandeli/