我已经配置了外部IdP,并且正在使用API调用$ auth-> login()。我已成功重定向到外部IdP并登录,但是当我返回到断言URL https://SPURL/simplesaml/module.php/saml/sp/saml2-acs.php/amaidp时,它无法检索元数据。 IdP不提供元数据,因此我不得不在saml20-idp-remote.php中填写它:
$metadata['AMAIDPPP'] = array (
'SingleSignOnService' =>
array (
0 =>
array (
'Binding' => 'urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST',
'Location' => 'https://preprod.autenticacao.gov.pt/fa/Default.aspx',
),
),
'certFingerprint' => 'XXX',
'sign.authnrequest' => true,
'redirect.validate' => true,
);
这是我得到的异常:
SimpleSAML\Error\Error: UNHANDLEDEXCEPTION
Backtrace:
1 www/_include.php:17 (SimpleSAML_exception_handler)
0 [builtin] (N/A)
Caused by: SimpleSAML\Error\Exception: Cannot retrieve metadata for IdP 'https://autenticacao.cartaodecidadao.pt' because it isn't a valid IdP for this SP.
Backtrace:
3 modules/saml/lib/Auth/Source/SP.php:275 (SimpleSAML\Module\saml\Auth\Source\SP::getIdPMetadata)
2 modules/saml/www/sp/saml2-acs.php:107 (require)
1 lib/SimpleSAML/Module.php:236 (SimpleSAML\Module::process)
0 www/module.php:9 (N/A)
我正在使用IdP预生产服务器开发连接,因此我注意到,尽管我登录https://preprod.autenticacao.gov.pt/fa/Default.aspx,但断言尝试获取https://autenticacao.cartaodecidadao.pt的元数据失败。这是来自IdP的错误吗?
关于在$ metadata上插入什么来验证这一点的任何想法? 谢谢!