問題
- Liferay側で認証を完了するためにADFSが要求するsigned responseは、どのように明確にすることができるのでしょうか。
- Liferay DXP 7.0
- Liferay DXP 7.1
- Liferay DXP 7.2
- Liferay DXP 7.3
解決策
-
ADFSからLiferayへのリクエストは署名が必要です。
- Power shellウィンドウで以下のコマンドを実行し、「ADFS」部分を作成済みのRelying部分に置き換えます(以下のコマンドを使用すると、レスポンスが署名されるようになりました)。
Set-AdfsRelyingPartyTrust -TargetName "ADFS" -SamlResponseSignature MessageAndAssertion
- コマンドを実行した後の出力には、次のように表示されるはずです:
SamlResponseSignature : MessageAndAssertion
- Liferay(SP)上に、ADFS(IdP)で作成したユーザーと同じ名前のユーザーを作成する。
- https://liferay-server-urlにアクセスすると、ユーザーはADFSにリダイレクトされ、SSOでログインすることができます。 LiferayのユーザーデータをADFSと自動的に同期させたい場合は、一般的なLiferayのLDAP統合を使用します。
- ユーザーが正しく作成されているかどうかを確認するために、Liferay の管理者コンソールで 'com.liferay.saml.resolver.DefaultUserResolver' ログを有効にします。
追加情報
- IdP接続の属性マッピングは以下の通りです:
http\://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress=emailAddress
http\://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname=firstName
http\://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname=lastName
http\://schemas.xmlsoap.org/claims/CommonName=screenName