問題点

Okta 認証を AEM SAML と統合しようとすると、次の問題が発生します。

11.10.2017 16:33:14.633 *DEBUG* [qtp830180711-278] com.adobe.granite.auth.saml.model.Assertion Invalid Assertion: audienceRestrictions violated.
11.10.2017 16:33:14.633 *INFO* [qtp830180711-278] com.adobe.granite.auth.saml.SamlAuthenticationHandler Login failed. SAML token invalid.
11.10.2017 16:33:14.633 *INFO* [qtp830180711-278] com.adobe.granite.auth.saml.SamlAuthenticationHandler SAML error with reason: invalid_token detected, redirect user to: /libs/granite/core/content/login.error.html?j_reason=invalid_token

原因

原因は Okta で定義されるログイン URL と SAML 2.0 認証のハンドラーで定義されているサービスによって指定されたエンティティ ID の違いによるものです。 

この値は両方とも配列される必要があり、IDP によって返される値は次のようになります。

<saml2:Audience>http://localhost:4502/</saml2:Audience>

解決策

SAML 応答で返された audience 値を AEM 設定のサービスプロバイダのエンティティ ID に定義し、最後に末尾に「/」文字を追加します。

本作品は Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License によってライセンス許可を受けています。  Twitter™ および Facebook の投稿には、Creative Commons の規約内容は適用されません。

法律上の注意   |   プライバシーポリシー