simpleSAMLphp:无法找到当前绑定

时间:2018-11-28 05:55:58

标签: php single-sign-on simplesamlphp

我是SP,我无法使用客户端的IDP登录到SP, 我遇到以下错误:

SimpleSAML_Error_Error:ACSPARAMS

Backtrace:
1 modules/saml/www/sp/saml2-acs.php:21 (require)
0 www/module.php:135 (N/A)
Caused by: Exception: Unable to find the current binding.
Backtrace:
2 vendor/simplesamlphp/saml2/src/SAML2/Binding.php:99 (SAML2\Binding::getCurrentBinding)
1 modules/saml/www/sp/saml2-acs.php:16 (require)
0 www/module.php:135 (N/A)

我对authsource.php的配置如下:

'abc-live-sp' => array(
        'saml:SP',
         'privatekey' => 'saml.pem',
         'certificate' => 'saml.crt',
         'entityID' => null,
         'idp' => 'https://federation-a.parnassiagroep.nl/superbrains',
         'discoURL' => null,
         'NameIDPolicy' => false,

    ),

我有什么想念的吗?

我们将不胜感激。

2 个答案:

答案 0 :(得分:0)

在 config.php 中,允许 HTTP POST 请求。这对我有用。

'enable.http_post' => 真

此外,我将 ACS URL 绑定限制为 HTTP-POST。这可能没有必要。 'acs.Bindings' => array( 'urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST').

我仍然不知道为什么元数据中的 ACS URL 和其他 URL 以 HTTP 链接的形式出现,配置文件中的所有链接都是 HTTPS。

答案 1 :(得分:-1)

您是否在“ metadata / saml20-idp-remote.php”文件中设置了身份提供程序?
自从我使用simplesamlphp以来已经有一段时间了,但是我很确定您需要让身份提供者(IdP)管理员将您添加为“可接受的”服务提供者(SP)。通过与他们共享您的元数据来完成。

UNINETT有一个非常方便的指南,这是simplesamlphp的创建者: https://simplesamlphp.org/docs/stable/simplesamlphp-sp

有人也有类似的问题: Simplesamlphp unhandled exception error while using as SP