AEM には、SAML 認証ハンドラーが付属しています。このハンドラは、 SAML 2.0 Authentication Request Protocol (Web-SSO プロファイル)を使用する場合は、 HTTP POST
連結。
次の機能をサポートします。
このハンドラーは、暗号化された SAML 応答メッセージをユーザーノード(usernode/samlResponse
)に格納して、サードパーティのサービスプロバイダーとの通信を容易にします。
AEM と SAML の統合のデモンストレーションを参照してください。
Web コンソールを使用すると、SAML 2.0 認証ハンドラーの設定(Adobe Granite SAML 2.0 Authentication Handler)にアクセスできます。設定可能なプロパティを以下に示します。
SAML 2.0 認証ハンドラーはデフォルトで無効になっています。 ハンドラーを有効にするには、次のプロパティを少なくとも 1 つ設定します。
SAML アサーションは署名され、オプションで暗号化できます。 そのためには、少なくとも ID プロバイダーの公開証明書を TrustStore に指定する必要があります。詳しくは、TrustStore への IdP 証明書の追加のセクションを参照してください。
パス この認証ハンドラーが Sling によって使用される場合のリポジトリのパスです。このプロパティが空の場合は、認証ハンドラーが無効になります。
サービスランキング このサービスを呼び出す順序を示す OSGi フレームワークサービスランキングの値です。これは整数値で、値が大きいほど優先順位が高くなります。
IDP 証明書エイリアス グローバル TrustStore における IdP の証明書のエイリアスです。このプロパティが空の場合は、認証ハンドラーが無効になります。設定方法については、以下の「AEM TrustStore への IdP 証明書の追加」の章を参照してください。
IDP URL SAML 認証要求を送信する必要のある IDP の URL です。このプロパティが空の場合は、認証ハンドラーが無効になります。
ID プロバイダーのホスト名を Apache Sling Referrer Filter OSGi 設定。 詳しくは、 Web コンソール 」の節を参照してください。
サービスプロバイダーのエンティティ ID このサービスプロバイダーを ID プロバイダーとして一意に識別する ID です。このプロパティが空の場合は、認証ハンドラーが無効になります。
デフォルトのリダイレクト 認証が成功した後のデフォルトのリダイレクト先です。
この場所は、request-path
の Cookie が設定されていない場合にのみ使用されます。有効なログイントークンを使用せずに、設定済みのパスの下にあるページを要求すると、要求されたパスは Cookie に格納され、
認証が成功した後にブラウザーは再びこの場所にリダイレクトされます。
ユーザー ID 属性 CRX リポジトリでのユーザーの認証および作成に使用されるユーザー ID を格納する属性の名前です。
ユーザー ID は SAML アサーションの saml:Subject
ノードではなく、この saml:Attribute
から取得されます。
暗号化を使用 この認証ハンドラーが暗号化された SAML アサーションを使用するかどうかを示します。
CRX ユーザーを自動作成 認証が成功した後に、リポジトリで既存のユーザー以外のユーザーを自動的に作成するかどうかを示します。
CRX ユーザーの自動作成が無効な場合は、ユーザーを手動で作成する必要があります。
グループに追加 認証が成功した後に、CRX グループにユーザーを自動的に追加する必要があるかどうかを示します。
グループメンバーシップ このユーザが追加されるべき CRX グループのリストを含む saml:Attribute の名前です。
SAML アサーションは署名され、オプションで暗号化できます。 この機能を使用するには、リポジトリ内の IdP の公開証明書を少なくとも指定する必要があります。 これをおこなうには、次の手順を実行します。
http:/serveraddress:serverport/libs/granite/security/content/truststore.html に移動します。
TrustStore リンクを作成 を押します。
TrustStore のパスワードを入力し、 保存.
クリック: TrustStore を管理.
IdP 証明書をアップロードします。
証明書のエイリアスをメモします。 エイリアスはです。 admin#1436172864930 を次の例に示します。
以下のステップは必須です。実行しないと、次の例外が発生します。com.adobe.granite.keystore.KeyStoreNotInitialisedException: Uninitialised system trust store
authentication-service
ユーザーを編集します。以下のステップは、ハンドラーが署名またはメッセージを複合化できるようにする必要がある場合にのみ必須です。
AEM の証明書/鍵のペアを作成します。OpenSSL を使用して生成するコマンドは、次の例のようになります。
openssl req -newkey rsa:2048 -new -x509 -days 3652 -nodes -out certificate.crt -keyout key.pem
キーを DER エンコードを使用して PKCS#8 形式に変換します。これは、AEM キーストアで必要な形式です。
openssl pkcs8 -topk8 -inform PEM -outform DER -in key.pem -out key.der -nocrypt
秘密鍵ファイルを選択 をクリックして秘密鍵ファイルをアップロードします。
「 」をクリックして証明書ファイルをアップロードします 証明書チェーンファイルを選択.
次に示すように、エイリアスを割り当てます。
SAML の設定ミスに起因する問題をデバッグするロガーを設定できます。 手順は次のとおりです。
Web コンソール(http://localhost:4502/system/console/configMgr)に移動
を検索して、 Apache Sling Logging Logger Configuration
次の設定でロガーを作成します。