SAML使用simpleSAMLphp作为SP,OpenAM作为IdP

时间:2014-07-07 16:30:17

标签: php saml saml-2.0 openam simplesamlphp

所以我这样做只是为了测试我在OpenAM上的SAML配置是否正常。我已经安装了simpleSAMLphp,遵循安装说明(虽然我跳过了''''''部分)。然后我发现这个教程非常棒的OpenAM simpleSAMLphp教程] 1

现在一切似乎都运行正常,当我选择使用OpenAM登录时,它会将我重定向到OpenAM的登录页面,我输入我的用户名和密码,然后我将以下列内容重定向到SimpleSAMLphp例外:

SimpleSAML_Error_Error: UNHANDLEDEXCEPTION
Backtrace:
0 /var/www/html/services/simplesamlphp/www/module.php:180 (N/A)
Caused by: Exception: Reference validation failed
Backtrace:
8 /var/www/html/services/simplesamlphp/vendor/robrichards/xmlseclibs/xmlseclibs.php:1056 (XMLSecurityDSig::validateReference)
7 /var/www/html/services/simplesamlphp/vendor/simplesamlphp/saml2/src/SAML2/Utils.php:54 (SAML2_Utils::validateElement)
6 /var/www/html/services/simplesamlphp/vendor/simplesamlphp/saml2/src/SAML2/Assertion.php:517 (SAML2_Assertion::parseSignature)
5 /var/www/html/services/simplesamlphp/vendor/simplesamlphp/saml2/src/SAML2/Assertion.php:247 (SAML2_Assertion::__construct)
4 /var/www/html/services/simplesamlphp/vendor/simplesamlphp/saml2/src/SAML2/Response.php:37 (SAML2_Response::__construct)
3 /var/www/html/services/simplesamlphp/vendor/simplesamlphp/saml2/src/SAML2/Message.php:509 (SAML2_Message::fromXML)
2 /var/www/html/services/simplesamlphp/vendor/simplesamlphp/saml2/src/SAML2/HTTPPost.php:76 (SAML2_HTTPPost::receive)
1 /var/www/html/services/simplesamlphp/modules/saml/www/sp/saml2-acs.php:16 (require)
0 /var/www/html/services/simplesamlphp/www/module.php:135 (N/A)

我在发布消息之前已经检查过了,OpenAM的SAML响应似乎没问题,它在Assertion.php文件中卡住了。

我真的尝试过所有事情,它只是让我头疼,我不想通过SimpleSAMLphp的代码。

非常感谢任何帮助: - )

1 个答案:

答案 0 :(得分:0)

在我看来,从OpenAM传递的属性不是uri格式。您可以从SP捕获SAML请求并从IDP捕获响应并发布它。这将有助于了解所要求的内容以及提供的内容。