1. シングルサインオン(SSO)

請求地マッピング

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

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

Sitecore Cloud Portalでは、クレームマッピングを使えば、Sitecore IDトークンとSitecoreアクセストークンにXM Cloud用のカスタムクレームを追加できます。SSO接続の設定や既存接続の更新時にクレームマッピングを設定できます。

SSOで組織にログインするチームメンバーに自動的にSitecoreAIの役割を割り当てたい場合は、クレームマッピングの設定が必要です。

!注クレームマッピングはSitecoreAIの役割でのみサポートされているため、マッピングインターフェースは現在の組織内に少なくとも1つのSitecoreAIテナントが存在する場合にのみ表示されます。

ユーザーがマッピングされたクレームを持っている場合、SSOでログインするすべての組織で動作します。ただし、クレームマッピングはSSO接続を所有する組織からのみ設定可能です。

!注このトピックではクラウドポータルにおけるクレームマッピングについて扱います。SSOユーザーにSitecoreAIロールを自動的に割り当てる具体的な手順については、「 クレームマッピングでSitecoreAIロールを割り当てる」をご覧ください。

請求マッピング要素

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

クレームマッピングは、外部アイデンティティプロバイダー(IdP)のIDトークンまたはSAML応答から返されたクレームをSitecore IDトークンとSitecoreアクセストークンに追加します。

ユーザーがSitecore Cloud Portal組織にログインすると、外部のIdP IDトークンまたはSAML応答のクレームが、設定されたクレームマッピングと照合されます。一致が見つかれば、対応するマッピングされたターゲットクレームがSitecore IDトークンおよびSitecoreアクセストークンに追加されます。

SSO接続あたり最大20件の クレームマッピング が可能ですが、ユーザーはSitecore IDトークンとアクセストークンで1つのマッピングクレームしか持てませんSitecoreアクセストークンです。

請求マッピングは、0つ以上の出所請求項と1つ以上の対応するターゲット請求項から成ります。

出典の主張

ソースクレームとは、アイデンティティプロバイダーからSitecore IDトークンとSitecoreアクセストークンにマッピングしたいクレームのことです。

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

!注アイデンティティプロバイダーでは、Sitecore IDトークンとアクセストークンにマッピングするために使いたいクレームを特定し、追加Sitecoreなければなりません。IdPから返されるクレーム値は文字列または文字列の配列でなければなりません。そうでなければログイン時に警告メッセージが表示され、クレームマッピングが失敗します。

OpenID Connectを使用する場合、必要なスコープをScopesフィールドに追加 し、設定済みのクレームがIDPから返されるようにする必要があるかもしれません。

ソースクレームをクレームマッピングに追加するには:

  • 名前欄に、マッピングしたい外部のIdPのクレーム名を入力してください。

  • Valueフィールドでは、IdPクレームの返される値に一致する正則表現パターン(ECMAScript構文)を入力するか、フィールドを空にしておきます。

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

    !注正則表現の文字通りの表記はサポートされていません。

    大文字に非対抗的な正則表現が必要な場合は、i修飾子を使いましょう。

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

複数のソースクレームをマッピングに追加すると、ターゲットクレームはSitecore IDトークンに加えられ、IdPのIDトークンまたはSAML応答に一致するソースクレームがあればアクセストークンSitecore追加されます。クレームマッピングにソースクレームが含まれていない場合、ターゲットクレームは常にSitecore IDトークンに加わり、すべてのユーザーに対してアクセストークンSitecoreされます。

クレームマッピングごとに最大20件のソースクレームを持てます。

ターゲットクレーム

ターゲットクレームとは、一致するソースクレームが存在する場合に、Sitecore IDトークンおよびSitecoreアクセストークンに追加されるクレームのことです。

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

ターゲットクレームをクレームマッピングに追加するには:

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

    !注ターゲットクレームの名前は好きなように設定できます。ターゲットクレーム名は 、トークンクレームをSitecoreAIロールにマッピングする際にSitecore ID使われます。

  • 請求に割り当てたい値を指定してください。

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

マッピングされたクレームがSitecore IDトークンに追加され、アクセストークンSitecoreされると、自動的にSSO接続のIDが接頭辞で付けられます。例えば、ターゲットクレーム名がxmc_roleで、SSO接続IDがcon_Veryg0od1D123456されている場合、Sitecore IDトークン内のクレーム名とアクセストークンSitecore con_Veryg0od1D123456.xmc_roleとなります。

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

1つのマッピングで最大20の値を設定できます。

請求マッピングの例

以下のスクリーンショットは、IDP IDトークンやSAML応答に一致するソースクレームがある場合、SSOユーザーにターゲットクレームを追加するクレームマッピングを示しています。

Claims mapping example showing several claims mapped.

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

User Apermission請求項はdeveloperを含む値を持ち(大文字に区別なし)、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 Cgroup請求項の価値はDesigner(大文字区別)を含みます。

  • 彼らのSitecore IDトークンおよびSitecoreアクセストークンには以下のクレームが追加されます。 "yourSSOConnectionId.default_role": "sitecore\Designer"

User D任意の値を持つdevGroup請求と、Designerを含む値を持つgroup請求(大文字区分):

  • Sitecore IDトークンとアクセストークンSitecoreに1つのターゲットクレームしか追加できないため、クレームマッピングはユーザーに機能せず、ログイン時に警告メッセージが表示されます。この仕組みでは、Sitecore IDトークンとSitecoreアクセストークンに2つのクレーム(xmc_role と default_role)が追加されます。

User EdevGroup請求項は任意の価値を持ち、group請求項はdeveloperである。

  • 彼らのSitecore IDトークンおよびSitecoreアクセストークンには以下のクレームが追加されます。 "yourSSOConnectionId.xmc_role": "sitecore\Developer", "sitecore\Custom Role","sitecore\Secret Role"

    これは、Sitecore IDトークンとアクセストークンに1つのクレームだけが追加されるため、Sitecore機能します。

User Fgroup請求項の値は"developer", "administrator", "puppyPetter"である:

  • 彼らのSitecore IDトークンおよびSitecoreアクセストークンには以下のクレームが追加されます。 "yourSSOConnectionId.xmc_role": "sitecore\Developer", "sitecore\Secret Role"

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

User G値は "^Internal-(?a-zA-Z0-9+)$" を持つgroup請求を持ち、例えば "Internal-Role1", "Internal-Role2" :

  • Sitecore IDトークンおよびSitecoreアクセストークンには、例のように "sitecore\\{RoleName}"、 "yourSSOConnectionId.xmc_role": "sitecore\\Role1", "sitecore\\Role2"

請求額の上限

請求マッピングの最大サポートサイズは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文字です。

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