1

Django と Rest フレームワークと mongoengine を使用して Restapi を構築しています。これまでのところ、すべてのリクエストでユーザーが認証され、トークンと照合される必要があります。

しかし今は、さまざまなユーザーにさまざまなアクションを許可する必要があります。どこから始めればよいかわかりません。ガイドラインはありますか?

たとえば、管理者だけがユーザー オブジェクトを読み書きできるようにします。

class UsersViewSet(ModelViewSet):
    queryset = Users.objects.all()
    serializer_class = UsersSerializer

    def me(self, request, *args, **kwargs):
        serializer = self.serializer_class(request.user)
        return Response(serializer.data)
4

1 に答える 1

3

カスタム権限の章を読んでください。permissions.BasePermission内部の認証ロジックを拡張して提供する必要がありますhas_permission

from rest_framework import permissions

class CustomUserPermission(permissions.BasePermission):

    def has_permission(self, request, view):
        # return True if user has permission
        pass

次に、ビュー内。

class UsersViewSet(ModelViewSet):
    permission_classes = (CustomUserPermission,)
于 2016-08-11T13:12:37.857 に答える