【发布时间】:2019-05-12 20:56:08
【问题描述】:
我正在使用 DRF 和 DRF-jwt 来保护我的 API。目前我有一些这样写的CBV
class Organization(APIView):
permission_classes = (IsAuthenticated,)
@method_decorator(csrf_exempt, name='dispatch')
class OfficeVisitsOverview(APIView):
def post(self, request, *args, **kwargs):
cursor = connection.cursor()
(before, today) = getDateRange()
cursor.execute("SELECT format(COUNT(*), 'N0') \
FROM Medi_OfficeVisit \
WHERE ( cast(VisitDate as date) BETWEEN '{0}' AND '{1}' ) \
".format(before, today))
data = dictfetchall(cursor)
connection.close()
return JsonResponse({"numberOfOVs": data[0][""]})
根据我的理解,APIView 和权限类 IsAuthenticated 确保存在与请求标头一起发送的授权令牌。你怎么能确定没有人修改过 JWT?我怎么知道我的 Django 应用程序中的 Secret_Token 每次都被用来解码/编码/验证/验证每个请求接收/发送的 JWT?这对我的 API 向公众开放是否足够安全?
【问题讨论】:
标签: django django-rest-framework jwt