我一直在寻找如何在 python 中实现 OpenID Connect 提供程序,我发现了这个由 Roland Hedberg 制作的库( OpenID 推荐)。但是我已经阅读了文档、示例,并且我认为对于没有太多知识的人来说,示例过于复杂(提供者、wsgi 和 cli 混合在一起)。
所以我的问题是:有谁知道更简单的示例或教程来实现这个库,还是我应该尝试在 OAuth2 库之上实现我的提供程序?
我以前也经历过这个麻烦。在 OAuthlib 之上工作很痛苦(Roland lib 也很难理解),所以我决定从头开始。
django-oidc-provider可以帮助您提供开箱即用的所有端点、数据和逻辑,以便将 OpenID Connect 功能添加到您的 Django 项目中。完全支持 Python 3 和 2。还有最新版本的 django。
在 GitHub 上查看:https ://github.com/juanifioren/django-oidc-provider
有什么想知道的请追问。
以防万一有人发现这个问题。我在Authlib上工作了很长时间,在 Authlib 之前我创建了 Flask-OAuthlib。使用 Authlib v0.6+,您可以轻松地在 Flask 中创建 OpenID Connect 服务(即将集成 Django)。
以下是您可能需要的一些资源:
当 oidc 的示例可用时,我会更新答案。
这里有一些更新
Roland oidc 提供者 https://github.com/IdentityPython/oidc-op 和 rp https://github.com/IdentityPython/JWTConnect-Python-OidcRP
SATOSA(IAM 代理)oidcop 前端 https://github.com/UniversitaDellaCalabria/SATOSA-oidcop