我正在使用AWS上托管的Django和Nginx。我正在尝试与一所大学集成,使用他们的idp进行SAML身份验证。关于SO有很多过时的答案,但是有什么与当前标准更相关的吗?
我见过的许多应用程序都是针对django 1.2或更低版本的。具体来说,我正在寻找能够让我更容易地通过中间件或其他任何东西来管理SAML身份验证的资源。
我看到的一些事情是:
https://github.com/unomena/django-saml2-idp
https://github.com/WiserTogether/django-saml2-sp
5条答案
按热度按时间oprakyz71#
我找到的项目如下:
https://bitbucket.org/lgs/djangosaml2/overview
该项目使用psaml2来支持SAML。Pysaml2可以在这里找到:
https://github.com/rohe/pysaml2
请记住,djangosaml2可能不会使用最新版本的pysaml2。我测试了它,它工作得很好。
更新
djangosaml2适用于最新版本的
pysaml2
,但请确保添加这一行以使其工作:这应该在你的
settings.py
中。qni6mghb2#
SAML有两个方面:
听起来这是你想要的:https://github.com/WiserTogether/django-saml2-sp。
您必须考虑到SAML作为一个标准是复杂的,因此您可能会发现在大学中让库与SAML实现进行对话的问题。您还必须从他们那里获得身份提供者证书公钥,并要求他们使用特定的实体ID将您的应用程序添加到他们这边。当你开始管理其中的几个时,事情就变得复杂了。
您可能还希望检查类似Auth0的东西来处理所有这些SAML连接。有一个非常简单的python示例https://gist.github.com/woloski/8149412
0ejtzxu13#
我刚刚创建了一个django saml2认证插件。
https://github.com/fangli/django-saml2-auth
它很容易与您的SAML2提供程序集成,希望您喜欢。
66bbxpm54#
该图书馆正在积极维护:https://github.com/onelogin/python3-saml/tree/master/demo-django
smdnsysy5#
据我检查目前的repos,这一个是工作和维护正常:https://github.com/grafana/django-saml2-auth