2

我已经检查过 SO 并四处搜索,但到目前为止还没有找到答案。我使用 SAML 2.0 作为服务提供商,并嵌入了php-saml - 首先使用了 simplesamlphp,但发现嵌入起来有点困难。

IdP-s 响应带有签名

<signaturemethod algorithm="http://www.w3.org/2000/09/xmldsig#dsa-sha1">

看起来 xmlseclibs 不支持 dsa 签名。

问题 A:有什么建议可以用来验证 dsa 签名吗?

问题 B:只是好奇其他人为 SAML 使用什么库。我刚刚在 simplesamlphp 上花了大约 20 分钟,发现它完全依赖于它自己的 URL 结构并且是一个适当的网络服务器端点,而不仅仅是一个库。

干杯

4

2 回答 2

2

PHP 库中缺乏 DSA 支持的部分历史原因可能与此有关:

于 2012-09-07T19:30:36.457 回答
1

PingFederate(来自 Ping Identity)为您提供 DSA 作为选项(作为 IDP 和 SP)。尽管 XML 签名强制要求使用 DSAwithSHA1 签名算法,但 SAML V2.0 并不要求它,但建议使用它。

虽然 PF 不是一个代码库(它是一个完整的本地 SSO 解决方案),但它支持云计算所需的所有各种身份协议(SAML 1.0/1.1/2.0/WS-Federation),并且可以很容易地通过以下方式连接到 PHP 应用程序RESTful Web 服务或 PHP 库。

于 2012-09-04T20:21:21.750 回答