django-oidc-provider备忘录

django-oidc-provider备忘录ServerRSAKey 用于给 IDTokens 加密 django oidc provider 自带 OIDC USERINFO 的 settings 默认指向一个函数 该函数调用 claims 一个字典 和 user user 实例 返回 claims 字典 该字典包含所有函数中声明的属性 可以自己定义 并在 settings 中以点分隔的路径字符串指定该函数

在登录结束前,会生成access token。调用OIDC服务器的任意接口都需要携带该参数,用于证明当次调用使用特定的用户通过特定的应用发起。
当收到401 Unauthorized状态码,可能是因为access token过期,携带以下请求参数访问POST借口可以获取新的access token:

curl -X POST \ -H "Cache-Control: no-cache" \ -H "Content-Type: application/x-www-form-urlencoded" \ "http://localhost:8000/token/" \ -d "client_id=" \ -d "client_secret=37b1c4ff826f8d78bd45e25bad75a2c0" \ -d "grant_type=refresh_token" \ -d "refresh_token=0bac2d80d75d46658b0b31dbb" 
MIDDLEWARE_CLASSES = [ ... 'oidc_provider.middleware.SessionManagementMiddleware', ] OIDC_SESSION_MANAGEMENT_ENABLE = True 

在多台服务器部署时,可能需要添加随机但固定的字符串OIDC_UNAUTHENTICATED_SESSION_MANAGEMENT_KEY,因为授权的第三方应用可以通过session计算出浏览器状态而未授权的应用缺少相关的参数。通常安装时会生成随机值,但这些值在不同的服务器不相同。
第三方应用可以通知OIDC服务器,客户已登出,这时,该应用可以将客户导向OIDC服务器的登出URL。通常跳转地址由OIDC服务器的Discovery应答中的end_session_endpoint参数获取。

{ "aud": "", "sub": "1", "exp": , "iat": , "iss": "http://localhost:8000", "active": true, "client_id": "" } 

自省错误时,需返回如下键值对:

{ "active": "false" } 
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/177439.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月26日 下午7:30
下一篇 2026年3月26日 下午7:31


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号