如何使用GraphQL自定义身份验证类?

时间:2019-12-06 11:11:42

标签: django django-rest-framework graphql jwt amazon-cognito

使用Django REST Framework(DRF),我可以像这样简单地自定义Authentication class and Permission class

from django_cognito_jwt import JSONWebTokenAuthentication
from rest_framework import viewsets
from rest_framework.permissions import IsAuthenticated

class CognitoQuestionViewSet(viewsets.ModelViewSet):
    authentication_classes = (JSONWebTokenAuthentication,)
    permission_classes = (IsAuthenticated,)
    queryset = Question.objects.all()
    serializer_class = QuestionSerializer

在GraphQL docs中。它使用的是标准Django登录名,与我的项目不同。我已经检查了来源LoginRequiredMixin,但没有运气。我看不到Authentication class,然后可以覆盖它

问题:
如何像在Authentication class and Permission class

中那样自定义GraphQL DRF

1 个答案:

答案 0 :(得分:0)

经过django-graphql-jwt的尝试并没有运气。 vinayan3回答了我的问题。因为name被认为是django-cognito-jwt的补语。

解决方案:
只需将DRF中的TokenAuthentication替换为JSONWebTokenAuthentication