2016-04-24 6 views
0

と一致していませんSubjectConfirmationDataでの受信者は、WebSEALのSAMLエンドポイントに接続しようとすると、私は次のエラーを取得しています現在のURL

その私は私のサーバーがSPとして設定され、私はに対して認証しようとしていますし、IDP saml20-idp-remote.phpで設定してください

リダイレクトは正しく動作しますが、IDPがSPにリダイレクトされたときに次のエラーが発生します。

SimpleSAML_Error_Error: UNHANDLEDEXCEPTION 
Backtrace: 
0 /mnt/www/html/livehappierstg/simplesaml/www/module.php:179 (N/A) 
Caused by: SimpleSAML_Error_Exception: Error validating SubjectConfirmation in Assertion: 
Recipient in SubjectConfirmationData does not match the current URL. 
Recipient is 'http://example.com/simplesaml/module.php/saml/sp/metadata.php/default-sp', 
current URL is 
'http://example.com/simplesaml/module.php/saml/sp/saml2-acs.php/default-sp'. 
Backtrace: 
3 /mnt/www/html/livehappierstg/simplesaml/modules/saml/lib/Message.php:684 (sspmod_saml_Message::processAssertion) 
2 /mnt/www/html/livehappierstg/simplesaml/modules/saml/lib/Message.php:517 (sspmod_saml_Message::processResponse) 
1 /mnt/www/html/livehappierstg/simplesaml/modules/saml/www/sp/saml2-acs.php:96 (require) 
0 /mnt/www/html/livehappierstg/simplesaml/www/module.php:134 (N/A) 

設定ファイルの件名確認データの受信者URLを変更するにはどうすればよいですか。

私の設定ファイルは以下の通りです。

'default-sp' => array(
    'saml:SP', 

    // The entity ID of this SP. 
    // Can be NULL/unset, in which case an entity ID is generated based on the metadata URL. 
    'entityID' => 'http://local.com/', 

    // The entity ID of the IdP this should SP should contact. 
    // Can be NULL/unset, in which case the user will be shown a list of available IdPs. 
    'idp' => 'https://example.com/federatedaccess/SSOConsume.do', 

    // The URL to the discovery service. 
    // Can be NULL/unset, in which case a builtin discovery service will be used. 
    'discoURL' => null, 
    'privatekey' => 'saml.pem', 
    'certificate' => 'saml.crt', 
) 

SAML2.0 Idpのリモート設定

$metadata['https://example.com/federatedaccess/SSOConsume.do'] = array(
    'name' => array(
    'en' => 'My SSO', 
), 
    'description' => 'My single sign on webseal environment.', 
    'ForceAuthn' => false, 
    'IsPassive' => false, 
    'ProtocolBinding' => 'urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST', 
    'SingleSignOnService' => 'https://example.com/federatedaccess/SSOConsume.do', 
    'certificate' => 'pub.crt', 
    'sign.authnrequest' => true, 
    'redirect.sign' => true, 
    'redirect.validate' => true, 
); 

乾杯

答えて

0

これは、IdPのはあなたのSPで設定されている方法に問題があります。 RecipientSubjectConfirmationDataからhttp://example.com/simplesaml/module.php/saml/sp/saml2-acs.php/default-spに設定し、代わりにhttp://example.com/simplesaml/module.php/saml/sp/metadata.php/default-spを使用する必要があります(パスのsaml2-acs.phpとmetadata.phpの違いに注意してください)。

Idpが使用しているURLは、SPのメタデータを取得するためのURLです。そのURLをAssertionConsumerService URLとして使用しているメタデータを読み込むのではなく、

+0

これはまさにそれでしたが、残念ながら私はIdpを設定するためのアクセス権がありません。変更要求プロセスを経なければなりません。私はそれが最後に変更されたと私はより多くのバグを並べ替えるとしている。 –

関連する問題