用于实现基于SAML2的服务提供者和身份提供者的Python库?
我在找一个可以用来实现基于SAML2的服务提供者和身份提供者的Python库。这个核心库不应该依赖于任何特定的网络框架。我希望能找到一个功能更全面、使用起来更简单的库。而且这个库的许可证应该比较宽松(不是GPL许可证)。经过搜索,我找到了一些链接,贴在这里:
http://wiki.python.org/moin/SAML
有没有什么建议呢?
2 个回答
pysaml2项目在launchpad上现在非常活跃。我记得你们在2011年的PyCon大会上也在忙这个项目。pysaml2这个包可以在Python的包索引(PyPi)上找到,可以通过easy_install
或pip
来安装。相关的文档可以在这里找到:https://pypi.python.org/pypi/pysaml2
还有一个与Django相关的项目,可以在PyPi上找到:djangosaml2
另一个项目python-saml2在google code上,似乎有点老旧,活跃度不高。
我对其他的项目没有经验。
我还发现了另一个项目:https://github.com/tachang/PySAML
缩写pysaml2、PySAML和python-saml2指的是三个不同的项目,可能会让人感到有些困惑。
更新:2020年9月29日(代表@Umognog,感谢)
- python-saml2是OneLogin的实现,详细信息在这里 https://github.com/onelogin/python-saml
- python3-saml取代了python-saml2,详细信息在这里:https://github.com/onelogin/python3-saml
更新:2019年4月27日 - 项目的当前状态:
- PySAML - 自2009年以来没有更新。
- pysaml2 - 兼容Python3,并且被纳入了https://idpy.org/项目中。
- python-saml2 - 在pypi上似乎不存在,找不到相关的引用。
你可以去看看这个链接:https://github.com/onelogin/python-saml
这个项目是开源的,里面有两个示例:一个是用django做的应用,另一个是用Flask做的应用。
目前这个工具只支持Python 2.X版本。
更新于2015年5月13日:现在有一个Python 3.X的版本(还是测试版,我还在试用中):https://github.com/pitbulk/python3-saml(感谢bgaifullin的贡献)
更新于2016年4月13日:Python 3.X的版本已经稳定并经过测试。