使用PHP在SAML 2.0中进行DSA签名检查

时间:2012-09-03 09:17:05

标签: php saml dsa xmlseclibs

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

IdP的回复带有签名

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

看起来像xmlseclibs不支持dsa签名。

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

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

干杯

2 个答案:

答案 0 :(得分:2)

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

答案 1 :(得分:1)

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

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