0

我需要在 Python 中验证 SAML2 断言(作为密码替换)。(大图:Shibboleth Idp <-> SOGo SP 将断言响应传递给我的模块(基于 pam-script))

我试图保证事情的安全,但尽可能简单/易于管理。SIGNXML Python 库似乎是一个很好的起点,但是 AFAIK 有一些拼图游戏缺失的部分......

PS我对以下任何主题都不是新手,也不是日常的主力程序员......所以我会很感激任何进一步的(“一般”)建议,从一开始就采取正确的方向...... .

所以我的问题是:

  1. 推荐的方式/库(简单地(处理/解密来自 IdP 的加密断言回复?

  2. 如何延长断言有效性时间范围(通过定义的宽限/倾斜时间段)和/或完全禁用时间有效性检查(用于非生产环境)?

  3. 解析“uid”、SP 的 EntityId 等属性的 SAML2 断言的首选方式(lxml.etree 对我来说似乎是正确的方式,但是......)

  4. 是否需要进一步考虑以确保验证过程中的完整性/安全性?

非常感谢您提供任何帮助/建议/示例!

最好的问候, 卢博斯

4

1 回答 1

0

您可以查看https://github.com/onelogin/python-saml,而不是自己实现符合 SAMLv2 标准的 SAML ServiceProvider

于 2020-03-03T07:13:29.993 回答