API Rest Framework
Publicado em 11/10/2021 as 09:58 por Raifran

Como implementar autenticação em uma API

Para implementarmos a autenticação para a API Rest Framework feita em uma aplicação django, pode ser feita via TOKEN ou USUÁRIO/SENHA vou mostrar como faremos uma autenticação para usuário/senha. Depois de nossa api estiver pronta é a hora de implementarmos a autenticação. 

    1. - Nas urls.py da app principal vamos adicionar nas urlpatterns o seguinte path:

path('api-auth/', include('rest_framework.urls')),

     2. - Nas viewsets.py iremos importar essa configuração do rest_framework:

from rest_framework import permissions

     3 - E nas nossa class escolhida para ser colocada a autenticação podemos configurar:

       3.1 - Verifica se o usuário está logado para permitir o uso dos métodos:

permission_classes = [permissions.IsAuthenticated]

        3.2 - Verifica se o usuário está logado e é admin para permitir o uso dos métodos:

permission_classes = [permissions.IsAdminUser]

       3.3 - Verifica se o usuário está logado para permitir o uso dos métodos, caso não esteja ele poderá apenas ler o conteúdo:        

permission_classes = [permissions.IsAuthenticatedOrReadOnly]

Simples, dessa maneira a nossa api estará autenticada, e caso o usuário não esteja autenticado pode logar pela url que foi atribuída no urls.py  da app geral.