Python SSO:pysaml2和python3-saml

时间:2016-11-15 18:41:14

标签: python single-sign-on saml shibboleth

我是SSO的新手,到目前为止我只尝试了pysaml2

我也知道python3-saml库(及其python-saml Python 2的味道)。

如果相关,我需要使用Shibboleth中的一个。

pysaml2python3-saml的优缺点是什么?

更新

至于2019年,如果你需要实现SP,我仍然会发现python3-saml是最好的选择。它并不完美(对不起@smartin,呵呵),但它会让你比pysaml2更少头痛。

1 个答案:

答案 0 :(得分:6)

这两个项目都与Shibboleth兼容。

pysaml2比python3-saml旧,现在它们都支持py2和py3。两者都有点活跃并有记录。

python3-saml遵循Onelogin的SAML工具包的结构,所以如果你之前使用过任何其他工具包(php-samlruby-samljava-saml),对你来说很容易处理它(类似的方法,相同的设置)。

<强>差异

加密:

  • pysaml2使用dependecy pycryptodome来处理加密并实现自己的xmldsigxmlenc类(用于操作XML上的签名和加密)。
  • python3-saml用作依赖python-xmlsec,并在其上委托XML元素的签名/加密。

功能性:

  • pysaml2允许您部署身份提供者或服务提供者
  • python3-saml专注于服务提供商

设定:

在我看来,python3-saml比pysaml2更容易,设置更精确,其repo包含有关如何在{{3集成djangoflask应用程序和指南的代码示例}}。

注意:我是python3-saml的作者