django 2 自定义 jwt_get_username_from_payload_handler
Posted
技术标签:
【中文标题】django 2 自定义 jwt_get_username_from_payload_handler【英文标题】:django 2 custom jwt_get_username_from_payload_handler 【发布时间】:2018-10-04 06:32:47 【问题描述】:为了在 django 中验证 auth0 的 jwt 令牌,我在 settings.py 中使用了以下代码
def jwt_get_username_from_payload_handler(payload):
return 'authuser'
JWT_AUTH =
'JWT_PAYLOAD_GET_USERNAME_HANDLER': jwt_get_username_from_payload_handler,
'JWT_PUBLIC_KEY': PUBLIC_KEY,
'JWT_ALGORITHM': 'RS256',
'JWT_AUDIENCE': API_IDENTIFIER,
'JWT_ISSUER': JWT_ISSUER,
'JWT_AUTH_HEADER_PREFIX': 'Bearer',
其中 authuser 是用户名。所以我不想直接写它,而是想在请求标头中接收它并传递它。请帮助我以这种方式自定义此功能 - jwt_get_username_from_payload_handler。 TIA
【问题讨论】:
【参考方案1】:def jwt_get_username_from_payload_handler(user):
return
'username': user.username,
'email': user.email,
'is_superuser': user.is_superuser,
你可以使用这个功能
【讨论】:
有没有办法在 mongodb 中不使用 sqlite 来做同样的事情 你会把这个函数放在哪里?以上是关于django 2 自定义 jwt_get_username_from_payload_handler的主要内容,如果未能解决你的问题,请参考以下文章
Django-tables2 - 如何在 TemplateColumn 中使用自定义过滤器
自定义路由组件,Django的admin后台管理,DRF的三大认证,jwt认证