2
respostas

[Dúvida] [Dúvida] Java Spring Boot - Autenticação

Link repositório github: https://github.com/beater27032001/blog-back

Estou criando um API de blog com o springboot, ja finalizei todo o código e deixei um ADMIN pre cadastrado(pois somente quem for admin vai poder postar nesse blog, entre outras coisas).

Quando eu utilizo o swagger para fazer requisições com usuários do tipo ROLE_USER ele permite mas não era pra permitir, quero que somente usuários do tipo ROLE_ADMIN possam cadastrar, editar e excluir as noiticias, e que somente eles possam editar ou deletar usuários.

2 respostas

Olá, José! Tudo bem?

Nesse caso você tentar realizar outra comparação juntamente com do Role para validar o usuário. Você tem várias opções para fazer isso, segue um exemplo de como seria:

@PreAuthorize("hasRole('ROLE_ADMIN) or #authUser.id == #userId")

Caso tenha dúvidas, leia o seguinte trecho da documentação do Spring, será útil para você: Expression-Based Access Control

Espero ter ajudado e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.

Continua com o mesmo problema