所以我这样做只是为了测试我在 OpenAM 上的 SAML 配置是否正常工作。我已经安装了 simpleSAMLphp,按照安装说明进行操作(尽管我跳过了 '''certs''' 部分)。然后我发现这个教程是很棒的 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 的代码。
任何帮助将非常感激 :-)