我已经检查过并搜索过,但到目前为止还没有找到答案。我使用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服务器端点,而不仅仅是一个库。
干杯
答案 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应用程序。