legacy-knowledge-base
公開されました Sep. 10, 2025

SamlSpIdpConnectionLocalService.addSaml および updateSaml の新しいパラメータに関する情報

written-by

Sorin Pop

How To articles are not official guidelines or officially supported documentation. They are community-contributed content and may not always reflect the latest updates to Liferay DXP. We welcome your feedback to improve How To articles!

While we make every effort to ensure this Knowledge Base is accurate, it may not always reflect the most recent updates or official guidelines.We appreciate your understanding and encourage you to reach out with any feedback or concerns.

legacy-article

learn-legacy-article-disclaimer-text

問題

  • コードを7.3から2024Q1.7にアップグレードしているところ、以下の2つのメソッドに新しいパラメータを見つけました:

    1. _samlSpIdpConnectionLocalService.addSamlSpIdpConnection()
    2. _samlSpIdpConnectionLocalService.updateSamlSpIdpConnection()
    新しいパラメータは、boolean unknownUsersAreStrangers userIdentifierExpressionです。
    これらの新しいパラメータは何のために使用されるのでしょうか?

環境

  • 2024.Q1

解決

  • 最初のパラメータについて: unknownUsersAreStrangers:

SAML は標準ベースのプロトコルであり、非常に多くの製品とサービスが SAML IdP として機能できます。そのため、SP にユーザーがまだ存在しない場合にどのユーザーを自動的に SP にプロビジョニングするかを制御するには、SAML IdP 接続ごとに制御する必要があります。

SamlSpIdpConnection エンティティに、boolean型の 「unknownUsersAreStrangers 」フィールドが追加されました。

このフィールドは、ポータルデータベースにまだ存在しないユーザーを「ゲスト」として分類するかどうかを定義します。

分類されると、 インスタンス設定 > ユーザー認証 > 共通で定義されているポータル・インスタンスの既存のゲスト対応ポリシーによって、IdP の SAML アサーションから利用可能な情報を使用して、ユーザが自動的にプロビジョニングされるかどうかが決定されます。

 

これは 「コントロールパネル > セキュリティ > SAML管理 > アイデンティティ・プロバイダー接続」 の編集で設定できる「不明なユーザーはゲストです」のSAML IdP 構成エントリに接続します。「有効 」になっている場合、つまりその値が「true」の場合、「コントロールパネル > 設定 > インスタンス設定 > ユーザー認証」 で設定されているゲスト処理が適用されます。

 

「コントロールパネル > セキュリティ > SAML管理 > アイデンティティ・プロバイダー接続 」でエントリを編集する際に、「不明なユーザーはゲストです 」 の SAML IdP 構成エントリをチェックすると、「ゲストによるアカウントの作成を許可する」エントリに対して、「コントロールパネル > 設定 > インスタンス設定 > ユーザー認証 」で、ゲストユーザ処理用に構成されている SAML 接続を介してユーザーデータをインポートする際に、同じロジックが適用されます。

  • userIdentifierExpression

    {UserFieldExpressionResolver_key}[:argument]

    ユーザーマッチングに使用するUserFieldExpressionを解決するために使用するUserFieldExpressionResolverを識別する式。 ほとんどの場合、UserFieldExpressionResolver_keyと同義であり、デフォルトでは、"none"、"dynamic"、"attribute "の3つです。

    UserIdentifierExpressionSamlSpIdpConnection に格納されます。

    このフィールドは、「コントロールパネル > セキュリティ > SAML管理 > アイデンティティ・プロバイダー接続」でエントリを編集する際の「ユーザーの解決」フィールドに接続します。 ラジオボタンの項目は、"none"、"dynamic"、"attribute"の順に値を持ちます。ただし、このリストはUserFieldExpressionResolverSPIの実装に基づいて動的に構築されます。

    UserFieldExpressionResolverDefaultUserResolverによってユーザーを解決するために使用されるときに[:argument]を必要とするかどうかは、各UserFieldExpressionResolverSPIの実装の詳細です。

    この記事を書いている時点では、この標準を必要とするのは「属性」のものだけです。 参照:

 

 

did-this-article-resolve-your-issue

legacy-knowledge-base