注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。

はじめに

SAML 2.0 (Security Assertion Markup Language) ↗ は、サービスプロバイダー (略して SP) である Foundry と、Azure AD や Okta のような アイデンティティプロバイダー (IdP) の間で認証および認可データを交換するために使用される XML ベースのデータ形式です。SAML 2.0 の最も一般的な使用例は、ウェブブラウザーからの シングルサインオン (SSO) です。

概念

以下のセクションでは、Foundry に共通する認証の概念について説明します。

SAML 統合メタデータ

SAML 統合メタデータ、別名サービスプロバイダーメタデータは、Foundry に関する情報で、アイデンティティプロバイダーに渡す必要があります。この情報には以下が含まれます:

  • エンティティ ID: アイデンティティプロバイダーに対して Foundry を識別する一意の ID で、URN ↗ 形式 urn:uuid:[$UUID]
  • アサーションコンシューマーサービス (ACS) URL: アサーションに基づいてセッションを確立するために SAML 応答メッセージを受け取る Foundry のエンドポイント。
  • シングルログアウト URL: アイデンティティプロバイダーからの SAML シングルログアウトリクエストを受け取る Foundry のエンドポイント。
  • 証明書: アイデンティティプロバイダーに送信される SAML メッセージの署名に使用されます。

この情報は自動生成された XML ファイルとしてエンコードされ、ユーザーがアイデンティティプロバイダーにアップロードするために全体をコピーすることができます。さらに、Control Panel は情報を別々のフィールドに抽出し、個別にコピーできるようにします。

アイデンティティプロバイダーメタデータ

アイデンティティプロバイダーメタデータは、Foundry に渡す必要があるアイデンティティプロバイダーに関する情報です。この情報には、アイデンティティプロバイダーのエンティティ ID、シングルサインオン (SSO) およびシングルログアウト URL、および証明書が含まれます。

アイデンティティプロバイダーメタデータは、アイデンティティプロバイダーからコピーして Control Panel にアップロードする必要がある XML ファイルとしてエンコードされます。

メールドメイン

メールドメインは、ユーザーにログインオプションとして提示されるアイデンティティプロバイダー統合を決定するために使用されます。ユーザーがログイン画面でメールまたはユーザー名を入力すると、構成されたすべてのアイデンティティプロバイダー統合のメールドメインがテストされ、一致するアイデンティティプロバイダー統合のみが表示されます。

メールドメインは正規表現を使用できますが、通常は @example.com のような単純な形式であり、これが自動的に .*@example\.com に変換されます。すべてのユーザーにアイデンティティプロバイダー統合を表示する場合は .* を使用します。

"Allowed email domains" ウィンドウは、認証プロバイダーに関連付けられたメールドメインを定義できます。"Restrict email domains" オプションが選択され、単純な形式の例と正規表現の両方が許可されています。

メールドメインの単純な形式 (@example.com) と正規表現 (.*@example\.com) の両方がデフォルトで大文字小文字を区別することに注意してください。メールドメインを大文字小文字を区別しないようにするには、正規表現の先頭に (?i) を追加します。そのため、単純な形式 @example.com の大文字小文字を区別しないバージョンは (?i).*@example\.com または (?i)@example\.com になります。

対応ホスト

対応ホストは次のために使用されます:

  • SAML 統合メタデータの ACS およびシングルログアウト URL を構築する。
  • これらのホストを使用してログインするユーザーにのみ統合が提示されることを確認する。

ユーザーのエンロールメントのために構成されたホストから選択できます。

属性のマッピング

SAML 応答を Foundry にマッピングし、十分かつ正確なユーザー属性が通過していることを確認します。

ユーザー属性

ユーザーが SAML ログインプロセス中にアイデンティティプロバイダーで認証された後、SAML 応答が Foundry に送信されます。この SAML 応答には、名前、メール、および利用可能な追加情報などのユーザー属性 (別名 "クレーム") が含まれています。これらの属性は、属性キーから値 (例: emailuser@example.com) または値のマップとして送信されます。

Foundry が正しいユーザー属性値を持つためには、アイデンティティプロバイダー属性 (または "クレーム") を対応する Foundry 属性にマッピングする必要があります。Foundry では以下のマッピングが必要です:

  • ID: デフォルトで NameID に設定されています。この値は SAML アサーションに常に存在し、静的な一意の値を持ちます。
  • ユーザー名: デフォルトで NameID に設定されていますが、別の人間が読みやすい属性 (例: Azure AD の http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name) に変更できます。
  • メール: メール属性 (例: Azure AD の http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress) にマッピングする必要があります。
  • 名前: 名前属性 (例: Azure AD の http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname) にマッピングする必要があります。
  • 姓: 姓属性 (例: Azure AD の http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname) にマッピングする必要があります。

Azure AD および Okta のリファレンスマッピングを参照してください。

Add attribute mapping をクリックして、Foundry にさらに多くのユーザー属性を作成する追加のマッピングを設定できます。左のフィールドに Foundry の属性名を入力し、右のフィールドにアイデンティティプロバイダーの属性名を入力します。

各マッピングには、SAML 応答に複数の値がある場合の動作を選択できるトグルがあります。このトグルは First (最初に受信した値で属性を入力) または All (受信したすべての値で属性を入力) に設定できます。

プロバイダーグループ

Foundry を構成してアイデンティティプロバイダー属性に基づいてグループ (「プロバイダーグループ」) を作成し、既存のグループメンバーシップを Foundry に反映させることもできます。プロバイダーに SAML 応答にグループ属性を含めるように追加で構成する必要がある場合があります。

プロバイダーグループのマッピングを設定するには、Group attribute mapping の下の Add attribute mapping をクリックします。ユーザーがログインすると、構成された属性のすべての値がプロバイダーグループとして反映され、ユーザーはメンバーとしてエンロールされます。

オプションとして、グループがリストではなく単一の値として送信される場合にグループを抽出するための正規表現パターンを設定できます。たとえば、カンマ区切りのグループには [^,]+ を使用します。

高度な設定

非同期ユーザーマネージャー

非同期ユーザーマネージャー (AUM) は、ログインフローの構成可能な追加ステップです。Asynchronous user managers を展開して、利用可能な AUM を確認してください。

Checkpoints ログイン

Login Checkpoint を作成すると、ログイン時にユーザーを構成可能なプロンプトにリダイレクトし、ログインを続行する前に正当性を要求できます。Checkpoints ログイン AUM を有効にするには、まずトグルをオンにし、その後 チェックポイントを作成する 手順に従ってください。

SAML 2.0 統合の構成

新しい SAML 統合を構成するには、以下のアイデンティティプロバイダーの特定の手順を参照してください:

トラブルシューティング

「適切な認証プロバイダーが見つからなかったためログインに失敗しました。さらにサポートが必要な場合は管理者に連絡してください。」エラー

このエラーは、ユーザーが入力したユーザー名が Control Panel で構成および許可された認証プロバイダーの メールドメイン に一致しないことを示しています。また、ユーザーがログインしようとしているホストが、構成された認証プロバイダーの 対応ホスト として追加されていないことも意味する可能性があります。