1
resposta

Permissões para usuarios que criaram os registros.

Bom, criei um CRUD usando spring boot no qual usuários podem cadastrar livros, quis implementar uma forma que os livros pudessem ser editados e excluídos apenas pelos usuários que os criaram. Implementei essa lógica de forma inicialmente temporária pegando o usuário que esta fazendo a requisição para as rotas dessas funcionalidades pelos dados no payload do JWT e verificando pelo id se corresponde ao usuário que cadastrou o livro. Gostaria de saber se existe uma forma melhor, mais segura ou mais correta de fazer isto, ou uma forma que o próprio Spring implemente para esse tipo de problema.

1 resposta

Olá Rodrigo!

Acho que nesse caso essa é a melhor forma de fazer, você está vinculando os livros aos usuários, e assim somente o dono poderá editar ou excluir livros, vejo essa como a melhor lógica. Agora se você um caso em que o sistema tivesse um usuário administrador, e esse também tivesse permissão para editar e ou excluir livros, nesse caso seria interessante a utilização de Lista de Controle de Acesso (Access Control List (ACL), você pode determinar e autorizar varios usuários a uma determinada ação e outros não, você definir níveis de usuários, você pode ler mais sobre isso nesse artigo da baeldung: Introduction to Spring Security ACL.

Espero ter ajudado!