用于实现基于SAML2的服务提供者和身份提供者的Python库?

16 投票
2 回答
19730 浏览
提问于 2025-04-16 12:09

我在找一个可以用来实现基于SAML2的服务提供者和身份提供者的Python库。这个核心库不应该依赖于任何特定的网络框架。我希望能找到一个功能更全面、使用起来更简单的库。而且这个库的许可证应该比较宽松(不是GPL许可证)。经过搜索,我找到了一些链接,贴在这里:

http://wiki.python.org/moin/SAML

有没有什么建议呢?

2 个回答

12

pysaml2项目在launchpad上现在非常活跃。我记得你们在2011年的PyCon大会上也在忙这个项目。pysaml2这个包可以在Python的包索引(PyPi)上找到,可以通过easy_installpip来安装。相关的文档可以在这里找到:https://pypi.python.org/pypi/pysaml2

还有一个与Django相关的项目,可以在PyPi上找到:djangosaml2

另一个项目python-saml2在google code上,似乎有点老旧,活跃度不高。

我对其他的项目没有经验。

我还发现了另一个项目:https://github.com/tachang/PySAML

缩写pysaml2PySAMLpython-saml2指的是三个不同的项目,可能会让人感到有些困惑。

更新:2020年9月29日(代表@Umognog,感谢)

更新:2019年4月27日 - 项目的当前状态:

  • PySAML - 自2009年以来没有更新。
  • pysaml2 - 兼容Python3,并且被纳入了https://idpy.org/项目中。
  • python-saml2 - 在pypi上似乎不存在,找不到相关的引用。
17

你可以去看看这个链接: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的版本已经稳定并经过测试。

撰写回答