我想添加一个安全过滤器,以便对我的 django 应用程序的每个请求都将首先通过过滤器,然后在标头中的令牌有效时让请求通过。
如何在 django 中实现这一点?
谢谢。
答案 0 :(得分:0)
你可以像这样添加一个新的中间件:
class SecurityMiddleware:
def __init__(self, get_response):
self.get_response = get_response
def __call__(self, request):
token = request.META.get('HTTP_AUTHORIZATION')
if token != "Some Value":
return HttpResponse('Unauthorized', status=401)
response = self.get_response(request)
return response
然后将其添加到 MIDDLEWARE
中的 settings.py
。
MIDDLEWARE = [
...
'path.to.SecurityMiddleware'
]
可以在 custom middleware 文档和 request and response object 文档中找到更多信息。
仅供参考,如果您想实现 JWT 或基本身份验证等标准身份验证系统,请考虑使用带有 Django Rest Framework 等的 Simple JWT 等第三方库。