クレームのマッピング

日本語翻訳に関する免責事項

このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。

要求マッピングを使用すると、Sitecore IDトークンとSitecoreアクセス トークンにカスタム要求を追加できます。SSO接続を設定するとき、または既存の接続を更新するときに、要求マッピングを構成できます。

SSOを使用して組織にログインするチーム メンバーにXM Cloudロールを自動的に割り当てる場合は、クレーム マッピングを構成する必要があります。

チーム メンバーがマップされた要求を持っている場合、チーム メンバーがSSOを使用してログインするすべての組織で機能します。ただし、要求マッピングは、SSO接続を所有する組織からのみ構成できます。

メモ

このトピックでは、Cloud Portalでの要求マッピングについて説明します。XM CloudロールをSSOユーザーに自動的に割り当てる具体的な手順については、「 クレーム マッピングを使用してXM Cloudロールを割り当てる」を参照してください。

claimsマッピング要素

SSO接続の要求マッピングを設定するには、接続に少なくとも1つのclaims mapping要素を追加します。

要求マッピングは、外部IDプロバイダー (IdP) のIDトークンまたはSAML応答によって返された要求をSitecore IDトークンとSitecoreアクセス トークンに追加します。

ユーザーがSitecore Cloud Portal組織にログインすると、外部IdP IDトークンまたはSAML応答の要求が、設定された要求マッピングに対して評価されます。一致が見つかった場合、対応するマップされたターゲット要求がSitecore IDトークンとSitecoreアクセストークンに追加されます。

SSO接続ごとに最大20個のclaims mappingsを持つことができますが、ユーザーはSitecore IDトークンとSitecoreつのアクセス トークンにマップされた要求を1つだけ持つことができます。

要求マッピングは、0個以上のソース要求と1つ以上の対応するターゲット要求で構成されます。

ソースの主張

ソース要求は、Sitecore IDトークンとSitecoreアクセス トークンにマップするIDプロバイダーからの要求です。

Shows a claims mapping with a red box around the source claims section.
手記

IDプロバイダーで、Sitecore IDトークンとSitecoreアクセス トークンにマップするために使用する要求を特定して追加する必要があります。IdPによって返される要求値は、文字列または文字列の配列である必要があり、そうしないと、ログイン時に警告メッセージが表示され、要求マッピングが失敗します。

OpenID Connectを使用している場合は、設定されたクレームがIdPによって返されるように、必要なスコープをScopesフィールドに追加 する必要があります。

ソース要求を要求マッピングに追加するには:

  • Nameフィールドに、マップする外部IdPからの要求の名前を入力します。

  • Valueフィールドに、IdP要求によって返される値と一致する正規表現パターン (ECMAScript構文) を入力するか、フィールドを空のままにします。

    戻り値がパターンと一致する場合、ターゲット要求はSitecore IDトークンに追加され、アクセス トークンSitecoreされます。 Valueフィールドを空のままにすると、ソース要求を持つすべてのユーザーに対して、その値に関係なく、ターゲット要求が追加されます。

    手記

    正規表現のリテラル表記はサポートされていません。

    大文字と小文字を区別しない正規表現が必要な場合は、i修飾子を使用します。

ユーザーが組織にログインし、外部IdPのアクセス トークンにソース要求の名前と値と一致する要求が含まれている場合、対応するターゲット要求がユーザーのSitecore IDトークンとSitecoreアクセス トークンに追加されます。

マッピングに複数のソース要求を追加すると、ターゲット要求はSitecore IDトークンに追加され、IdPのIDトークンまたはSAML応答に一致するソース要求が存在する場合はSitecoreアクセス トークンに追加されます。要求マッピングにソース要求が含まれていない場合、ターゲット要求は常にすべてのユーザーのSitecore IDトークンとSitecoreアクセス トークンに追加されます。

claims mappingごとに最大20件のソース要求を持つことができます。

ターゲットの主張

ターゲット要求は、一致するソース要求が存在する場合にSitecore IDトークンとSitecoreアクセス トークンに追加される要求です。

Shows a claims mapping with a red box around the target claims section.

ターゲット要求を要求マッピングに追加するには、次のようにします。

  • Sitecore IDトークンに追加するクレームの名前を入力し、IdPのIDトークンまたはSAMLレスポンスに一致するソースクレームが存在する場合にアクセス トークンをSitecoreします。

    手記

    ターゲットの主張には、好きな名前を付けることができます。ターゲット要求名は、Sitecore IDトークン要求をXM Cloudロールにマッピングするときに使用されます。

  • 要求に割り当てる値を指定します。

    マッピングに複数のターゲット要求を追加すると、それらすべてがSitecore IDトークンとSitecoreアクセス トークンに1つの要求として追加されます。

マップされた要求がSitecore IDトークンとSitecoreアクセス トークンに追加されると、SSO接続のIDが自動的にプレフィックスとして付けられます。たとえば、ターゲットの要求名がxmc_roleで、SSO接続IDがcon_Veryg0od1D123456の場合、Sitecore IDトークンとSitecoreアクセス トークンの要求名はcon_Veryg0od1D123456.xmc_roleになります。

ユーザーは、トークン交換ごとに1つの要求しかマップできませんが、ターゲット要求名が同じ場合は、異なるマッピングから複数のターゲット要求値を持つことができます (次の要求マッピング例のUser Eを参照)。複数の要求がマップされている場合、ログイン時に警告メッセージが表示され、要求のマッピングは失敗します (次の要求マッピングの例のUser Dを参照)。

マッピングごとに最大20個の値を持つことができます。

要求のマッピングの例

次のスクリーンショットは、SSOユーザーのIdP IDトークンまたはSAML応答に一致するソース要求がある場合に、ターゲット要求をSSOユーザーに追加する要求マッピングを示しています。

Claims mapping example showing several claims mapped.

この例では、外部IdP IDトークンに異なる構成要求を持つ6人のユーザー ( User AUser BUser CUser DUser EUser F) がいます。このセクションの残りの部分では、各ユーザーの外部IdP IDトークンの要求と、ユーザーが組織にログインしようとしたときに何が起こるかについて説明します。

User Aには、developerを含む値を持つpermission要求 (大文字と小文字を区別しない) と、任意の値を持つdevGroup要求があります。

  • Sitecore IDトークンとSitecoreアクセス トークンには、次の要求が追加されます。 "yourSSOConnectionId.xmc_role": "sitecore\Developer", "sitecore\Custom Role"

User Bgroupクレームがあり、値はdeveloperです。

  • Sitecore IDトークンとSitecoreアクセス トークンには、次の要求が追加されます。 "yourSSOConnectionId.xmc_role": "sitecore\Developer", "sitecore\Secret Role"

User CDesignerを含む値を持つgroupクレームがあります (大文字と小文字が区別されます)。

  • Sitecore IDトークンとSitecoreアクセス トークンには、次の要求が追加されます。 "yourSSOConnectionId.default_role": "sitecore\Designer"

User Dには、任意の値を持つdevGroup要求と、Designerを含む (大文字と小文字が区別されます) 値を持つgroup要求があります。

  • Sitecore IDトークンとSitecoreアクセス トークンに追加できるターゲット要求は1つだけであるため、要求のマッピングはユーザーに対して機能せず、ログイン時に警告メッセージが表示されます。この設定では、Sitecore IDトークンとSitecoreアクセス トークンに2つの要求 (xmc_roledefault_role) が追加されます。

User Eには、任意の値を持つdevGroup要求と、値 (developer) を持つgroup要求があります。

  • Sitecore IDトークンとSitecoreアクセス トークンには、次の要求が追加されます。 "yourSSOConnectionId.xmc_role": "sitecore\Developer", "sitecore\Custom Role","sitecore\Secret Role"

    これが機能するのは、この組み合わせにより、Sitecore IDトークンとSitecoreアクセス トークンに追加される要求が1つだけになるためです。

User Fgroupクレームがあり、値は "developer", "administrator", "puppyPetter"です。

  • Sitecore IDトークンとSitecoreアクセス トークンには、次の要求が追加されます。 "yourSSOConnectionId.xmc_role": "sitecore\Developer", "sitecore\Secret Role"

    外部IdPがクレーム値として文字列配列を返す場合、正規表現パターンに一致する文字列があれば、ターゲット要求が追加されます。したがって、User Fのクレームは、groupクレームと値developerと一致します。ただし、group要求の値がadministratorまたはpuppyPetterの場合、一致するソース要求はありません。

要求のサイズ制限

要求マッピングでサポートされる最大サイズは700文字で、次の式を使用して計算されます。

Claim size = (length of connection ID + length of target claim name + 1) × (Number of mapped target claims) + SUM(Length of each target claim value)

たとえば、ターゲットの要求をマップしたとします。

  • 名前: xmc_role値: Sitecore\Developer

  • 名前: xmc_role値: Sitecore\PuppyPetter

Size = con_Veryg0od1D123456.xmc_role * 2 + (Sitecore\Developer + Sitecore\PuppyPetter)
Size = 29 * 2 + (18 + 20)
Size = 96

この要求マッピングのサイズは96文字です。

この記事を改善するための提案がある場合は、 お知らせください!