【问题标题】:Namespace issue with pysaml2 XML canonicalizationpysaml2 XML规范化的命名空间问题
【发布时间】:2025-12-07 06:40:02
【问题描述】:

我是 SAML 新手,在使用 pysaml2 构建 IdP 时遇到了问题。当创建一个签名的 authn 响应时,在 xmldsig/init.py 中指定的规范化算法是排他的规范化('http://www.w3.org/2001/10/xml-exc-c14n#'),它不会包括某些 SP 所必需的某些命名空间的声明(例如命名空间 xmlns:xs 用于 QName,如 xsi:type="xs:string")。 W3C 建议指定了 InclusiveNamespaces PrefixList 来处理这些情况,但我在 pysaml2 中找不到如何做到这一点。这里有一个类似的问题: https://bz.apache.org/bugzilla/show_bug.cgi?id=49710

pysaml2 有解决方案吗?要么包含这些命名空间,要么只删除所有这些 xsi:type="xs:string"。

谢谢!

【问题讨论】:

  • 遇到同样的问题。感谢您写下您的发现。

标签: python xml single-sign-on saml saml-2.0


【解决方案1】:

此问题已在 pysaml2 4.3.0 版本中得到解决,可在 pypi/pysaml2 获得。另见https://github.com/rohe/pysaml2/pull/336https://github.com/rohe/pysaml2/pull/365

【讨论】: