Skip to content

SAMLシングルサインオン

DataRobotでは、シングルサインオン(SSO)テクノロジーを使ってユーザー認証に外部サービス(アイデンティティプロバイダー(IdP))を使用することができます。 DataRobotのSSOサポートは、SAML 2.0プロトコルに基づいています。 DataRobotでSAML SSOを使用するには、IdPサービスプロバイダー(DataRobot)の両方の設定を変更する必要があります。

本機能の提供について

シングルサインオン(SSO)の利用の可否は、DataRobotパッケージによって異なります。 組織で有効化されていない場合は、DataRobotの担当者にお問い合わせください。

必要な権限:「SAML SSOを有効にする」

SAML SSOを設定するための基本的なワークフローは次のとおりです。

  1. 前提条件を確認して、すべて満たします。
  2. IDプロバイダーでSSOを設定し、DataRobotをサービスプロバイダーとして識別します。
  3. DataRobotでSSOを設定します。
    • 設定オプションを選択して、エンティティIDとIdPメタデータを設定します。
    • マッピングを使用して、DataRobotとIdPの間での属性、グループ、ロールの同期方法を定義します。
  4. すべてのユーザーに対してSSOをオプションまたは必須にするなど、SSOの要件を設定します。

セルフマネージドAIプラットフォームでは、SAML SSOが強化されています。

本機能の提供について

必要な権限:拡張グローバルSAML SSO設定の管理を有効にする

必要なクラスター設定:

  • ENABLE_SAML_SSO = False
  • ENABLE_ENHANCED_SAML_SSO = False
  • ENABLE_ENHANCED_GLOBAL_SAML_SSO = True

SAML SSOを設定するための基本的なワークフローは次のとおりです。

  1. 前提条件を確認して、すべて満たします。
  2. IDプロバイダーでSSOを設定し、DataRobotをサービスプロバイダーとして識別します。
  3. DataRobotでSSOを設定します。
    • 設定オプションを選択して、エンティティIDとIdPメタデータを設定します。
    • マッピングを使用して、DataRobotとIdPの間での属性、グループ、ロールの同期方法を定義します。
  4. セキュリティパラメーターを変更して、SAMLプロトコルのセキュリティ強度を調整します。
  5. 高度なオプションを設定します
  6. すべてのユーザーに対してSSOをオプションまたは必須にするなど、SSOの要件を設定します。

DataRobotでの認証

DataRobotでは、さまざまな認証とセキュリティ機能が搭載されています。 たとえば、データベース接続の機能を使用するとき、組織のデータソースへのアクセス操作を実行するたびにデータベースのユーザー名とパスワード認証情報の入力を求めるプロンプトが表示されます。 パスワードはDataRobotコンポーネントを介して渡される前に暗号化され、DataRobotでデータベースへの接続が確立された後に復号されます。 DataRobotには、いずれの形式でもユーザー名やパスワードは保存されません。

アプリケーションのウェブサイトにログインするために、ユーザー名とパスワードを指定して認証するか、Googleに認証を任せるかを選択できます。 認証プロセスは、アプリケーションサーバーへのTLS 1.2を使用してHTTPSで行われます。 ユーザーが設定したパスワードは、上に示すデータベースに安全に格納されます。 保存する前にパスワードはSHA-512を使用して一意のソルト付きでハッシュされ、BPKDF2で追加の保護が適用されます。 元のパスワードは破棄され、恒久的に保存されることはありません。

アプリケーションのウェブサイトにログインするために、ユーザー名とパスワードを指定して認証するか、LDAPに認証を任せるかを選択できます。 SAML 2.0を使用したSSOもサポートされています。 認証プロセスは、アプリケーションサーバーへのTLS 1.2を使用してHTTPSで行われます。 ユーザーが設定したパスワードは、上に示すデータベースに安全に格納されます。 保存する前にパスワードはSHA-512を使用して一意のソルト付きでハッシュされ、BPKDF2で追加の保護が適用されます。 元のパスワードは破棄され、恒久的に保存されることはありません。

DataRobotでは、時間ベースのワンタイムパスワード(TOTP)を使用して生成されたソフトウェアトークンを使用した多要素認証(MFA)を始めとするパスワードベースの認証の強化も行われています。

すべてのAPI通信では、認証要素の機密性を保護するためにTLS 1.2が使用されます。 DataRobot APIを操作する場合、認証はHTTP Authorizationヘッダーに含まれるBearerトークンを使用して実行されます。 APIを介して予測サーバーと対話する場合は、同じ認証方法を使用します。 ユーザー名 + APIトークン(基本認証)またはAPIトークンのみでも認証できますが、これらの認証方法は廃止されているので推奨されません。 予測サーバーへのアクセスをさらに制限するには、datarobot-keyという追加のHTTPヘッダーも必要です。

前提条件

SAML SSO設定プロセスを開始する前に、以下の前提条件が満たされていることを確認してください。

  • SSOのSAMLが有効になっています。
  • 組織には少なくとも1人の組織/システム管理者が必要です。SAML SSOを有効にした後、管理者がSAML SSOを設定します。

DataRobotの担当者に連絡してSAML SSOを有効にし、必要に応じて、最初の組織/システム管理者ユーザーを設定します(そのユーザーが、追加のユーザーを組織/システム管理者ロールに割り当てることができます)。

  • SSOのSAMLが有効になっています。
  • 組織には少なくとも1人の組織/システム管理者が必要です。SAML SSOを有効にした後、管理者がSAML SSOを設定します。

DataRobotの担当者に連絡してSAML SSOを有効にし、必要に応じて、第一システム管理者ユーザーを設定します(そのユーザーが、追加のユーザーをシステム管理者ロールに割り当てることができます)。

以下では、DataRobotで使用するSAML SSOを有効にするために必要な設定について説明します。 管理者は、DataRobobtのSAML SSO設定ページで設定に必要な情報にアクセスできます(設定 > SSOを管理からアクセスできます)。

IDプロバイダー(IdP)の設定

備考

  • 設定はIdPごとに異なるので、関連する手順についてはプロバイダーのドキュメントを参照してください。
  • DataRobotは、IdP設定に必要なメタデータを含むファイルを提供しません。この情報は手動で設定する必要があります。

IdPを設定するときは、IdPで新しいSAMLアプリケーションを作成し、サービスプロバイダー(SP)へのサインインおよびサインアウトのURLを指定して、DataRobotをSPとして識別する必要があります。

DataRobotでこの情報を取得するには、設定 > SSOを管理に移動し、URLの詳細が一覧表示されているサービスプロバイダーの詳細を見つけます。

組織名を追加したルートURLを使用します。 組織名は、DataRobotによってビジネスに割り当てられた名前で、スペースを入れずに小文字で入力します。

URLタイプ ルートURL 説明 Oktaの例
SP initiatedログインURL app.datarobot.com/sso/sign-in/<org_name> IdPがサービスプロバイダーのリクエストを受け取るエンドポイントURL(リクエストの発信元)。 受信者のURL
IdPが開始したログインURL app.datarobot.com/sso/signed-in/<org_name> IdPからSAMLサインイン要求を受信するエンドポイントURL。 シングルサインオンURL
IdPが開始したログアウトURL app.datarobot.com/sso/sign-out/<org_name> (オプション)IdPからSAMLサインアウト要求を受信するエンドポイントURL。 N/A

DataRobotでこの情報を取得するには、/admin/organizations/manage/<org_id>/ssoに移動し、URLの詳細が一覧表示されているサービスプロバイダーの詳細を見つけます。

URLタイプ ルートURL 説明 Oktaの例
SP initiatedログインURL https://app.datarobot.com/sso/sign-in/ IdPがサービスプロバイダーのリクエストを受け取るエンドポイントURL(リクエストの発信元)。 受信者のURL
IdPが開始したログインURL https://app.datarobot.com/sso/signed-in/ IdPからSAMLサインイン要求を受信するエンドポイントURL。 シングルサインオンURL
IdPが開始したログアウトURL https://app.datarobot.com/sso/sign-out/ (オプション)IdPからSAMLサインアウト要求を受信するエンドポイントURL。 N/A

以下のタブは、Okta、PingOne、Azure Active DirectoryでIdP設定を完了する手順の例を示しています。

サードパーティーアプリケーションのスクリーンショット

以下のスクリーンショット画像は、作成当時は正確でしたが、サードパーティーアプリケーションの現在のユーザーインターフェイスを反映していない可能性があります。

IdP側で以下の必須設定が完了していることを確認します。この例ではOktaを使用しています。

  1. まだOkta開発者アカウントを持っていない場合は、GitHubのユーザー名またはメールアドレスを使って無料サインアップしてください。
  2. Oktaの左側のナビゲーションでApplications > Applicationsをクリックします。
  3. Create App Integrationをクリックし、SAML 2.0を選択してNextをクリックします。

  4. 一般設定タブで、アプリケーションの名前を入力し、次へをクリックします。

  5. SAMLの設定タブで、次のフィールドに入力します。

    • シングルサインオンURL
    • Audience URI (SP Entity ID)
    • Attribute Statementusername

    備考

    シングルサインオンURLの末尾にはsigned-inが付いています。 DataRobotでSSOログインを成功させるためには、属性usernameuser.emailを設定する必要があります。

  6. フィードバックタブで、私はソフトウェアベンダーですを選択し、終了をクリックします。

  7. 新しいアプリケーションを選択した状態で、アプリケーション > 課題をクリックし、アプリにユーザーまたはグループを割り当てます。

    1. サインオンタブで、SAML署名証明書セクションを見つけます。 SHA-2Actions > View IdP metadataを選択し、IdPメタデータのリンクアドレスをコピーします。これは、DataRobotでSSOを設定するために必要になります。

IdP側で以下の必須設定が完了していることを確認します。この例ではPingOneを使用しています。

  1. Add a SAML appタイルをクリックします。

  2. Applicationsの右側にある+アイコンをクリックします。

  3. アプリケーションに名前を付け、SAML Application を選択し、保存をクリックします。

  4. Manually Enterを選択し、以下をコピー&ペーストします。

    • DataRobotからIdPが開始したログインURLをコピーして、ACS URLsフィールドに貼り付けます。
    • DataRobotからエンティティIDをコピーして、Entity IDフィールドに貼り付けます。 先頭のhttpsと末尾のパスを必ず削除してください。 DataRobotでPingOneを設定する場合、これは完全に一致する必要があります。

  5. 保存をクリックします。

  6. 設定タブを開いて、鉛筆アイコンをクリックします。

  7. Sign Assertation & Responseが選択されていることを確認します。

  8. Subject Named Formatドロップダウンまで下方向にスクロールします。 ドロップダウンをクリックして、urn:oasis:names:tc:SAML:2.0:name-id:transientを選択します。

  9. 保存をクリックします。

  10. トグルを使って、PingOneアプリケーションExample Ping1 integration with DataRobotをオンにします。

  11. IdPメタデータURLを保存します。 これは、DataRobotでSSOを設定するために必要になります。

    属性のマッピング(オプション)

    属性をマッピングする場合は、以下の2つの手順を両方実行する必要があります。 通常、DataRobotではユーザーの識別にメールアドレスを使用しますが、PingOneではユーザー名を使用します。 ユーザー名にメールアドレスがマッピングされるので、この手順をスキップしないでください。

    1. Attribute Mappingsタブをクリックし、鉛筆アイコンをクリックします。

    2. saml_subjectの横にあるPingOne MappingEmail Addressに変更します。 Addをクリックして、Attributesusernameを入力し、PingOne MappingEmail addressを選択します。

  12. 保存をクリックします。

IdP側で以下の必須設定が完了していることを確認します。この例ではAzure Active Directoryを使用しています。

  1. クラウドアプリケーションの管理者としてAzureにサインインします。
  2. Azure Active Directory > Enterprise applicationsに移動し、+ Create your own applicationをクリックします。

  3. アプリケーションに名前を付け、Integrate any other application you don't find in the gallery (Non-gallery)を選択し、Addをクリックします。

  4. Overviewページで、Set up single sign onを選択し、シングルサインオンの方法としてSAMLを選択します。

  5. Basic SAML Configurationの右側にある鉛筆アイコンをクリックします。 次のフィールドに入力します。

    • Identifier (Entity ID)には、任意の文字列を入力します。
    • 応答URL(アサーションコンシューマーサービスURL)については、DataRobotからIdPが開始したログインURLをコピーして、フィールド(<domain>/sso/signed-in/<org_name>)に貼り付けます。

  6. 保存をクリックします。

  7. User Attributes & Claimsの右側にある鉛筆アイコンをクリックします。 デフォルトの追加クレームをすべて削除し、以下のクレームを追加します。

    • username名前として追加します(詳細については、マッピングセクションを参照してください)。
    • SourceにはAttribute
    • Source attributeにはuser.userprincipalname

    Namespace値を入力しないとフォームを保存できない場合は、任意の文字列を指定してSaveをクリックし、再度編集してNamespace値を削除します。 保存後、新しいクレームがテーブルに表示されます。

  8. 続行する前に、Azure Active Directory設定で、SAML応答とアサーションの両方に署名するように署名オプションが設定されていることを確認します。 そうでない場合、欠落した署名に対してSAML SSO認証が発生する可能性があります。

    • AzureのSAMLによるシングルサインオンのセットアップページで、SAML署名証明書の見出しを探し、編集アイコン(鉛筆)をクリックして、SAML署名証明書ページに移動します。
    • 署名オプションドロップダウンリストで、SAML応答とアサーションへの署名を選択します。
    • 保存をクリックして、新しいSAML署名証明書の設定を適用します。

  9. テストアカウントがアプリケーションにアクセスできることを確認するには、左側のナビゲーションでUsers and groupsを開き、Add userをクリックします。

  10. Identifier (Entity ID)App Federation Metadata URLをコピーします。これらの値は、DataRobotでSSOを設定するために必要になります。

IdPでSSOを設定した後、DataRobotでSSOを設定することができます。

DataRobotの設定

次に、DataRobotでIdPを設定します。

進捗状況の保存

設定のどの時点でも、および設定が完了したら、保存をクリックします。 このボタンは、すべての必須フィールドに入力した場合にのみアクティブになります。

IdPを設定した後、組織のエンティティIDとIdPメタデータを設定して、DataRobotでSSOを設定する必要があります。 2つのエンティティIDがあります。1つはサービスプロバイダー(DataRobot)のIDで、もう1つはIdPのIDです。

  • DataRobot SSO設定に入力されているエンティティIDは、サービスプロバイダーのエンティティIDとして機能する一意の文字列です。 これは、IdP側でDataRobot固有のSAMLアプリケーションのサービスプロバイダーメタデータを設定するときに入力する値です。
  • DataRobot側の設定でIdPメタデータを手動で指定する場合、Issuerフィールドは、DataRobot固有のSAMLアプリケーション設定にあるIDプロバイダー(IdP)の一意の識別子となります。 通常、これはIDプロバイダーのURLです。

管理者としてログインしたら、設定 > SSOを管理を開き、次を使用して設定ドロップダウンをクリックして、IdPパラメーターの設定に使用できる3つのオプションを確認します(以下のタブで説明します)。

テストプロセス

トラブルシューティングやテストを行うには、テストをクリックします。 このボタンは、変更が保存されている場合にのみ表示され、変更内容の自動テストをトリガーして、SAML SSO接続に関する問題を検出します。

テストを実行すると、IdPのログインページにリダイレクトされます。 ユーザー資格情報を入力し、IdP側でログインプロセスを実行します。 テストが完了すると、成功メッセージが表示されるか、何が問題だったのかを示す警告メッセージが表示され、フィールドには間違った値がハイライトされます。

メタデータURL

以下のフィールドに入力します。

フィールド 説明
名前 IdPの設定にわかりやすい名前(組織名など)を指定します。 この名前はサービスプロバイダーの詳細URLフィールドで使用されます。 名前はスペースを入れずに小文字で入力してください。 このフィールドに入力した値によって、サービスプロバイダーの詳細セクションの値が更新されます。
エンティティID サービスプロバイダーのエンティティIDとして機能する組織ごとに一意の文字列(myorg_samlなど)。 この値を入力して、DataRobot(SP)アプリとIdP SAMLアプリケーションの間で共通する識別子を確立します。
メタデータURL インテグレーション固有の情報を含むXMLドキュメントをポイントするURL(IdPが提供)。 エンドポイントは、DataRobotアプリケーションからアクセスできる必要があります。 (ローカルファイルの場合は、メタデータファイルオプションを使用します。)
IdPメタデータのHTTPS証明書を認証します オンにすると、指定されたメタデータURLに対してホスト証明書が検証されます。

フィールド 説明
エンティティID Idp側で作成されたSAMLアプリケーションの任意の一意の識別子。上記のSPエンティティID/発行者/オーディエンスを参照してください(一部のIdPではクライアントIDという用語が使用されます)。 この値を入力して、DataRobot(SP)アプリとIdP SAMLアプリケーションの間で共通する識別子を確立します。
メタデータURL インテグレーション固有の情報を含むXMLドキュメントをポイントするURL(IdPが提供)。 エンドポイントは、DataRobotアプリケーションからアクセスできる必要があります。 (ローカルファイルの場合は、メタデータファイル オプションを使用します。 URLでファイルのダウンロードがトリガーされる場合は、ダウンロードされた場合でも、ダウンロードされたメタデータXMLファイルに対してメタデータファイルオプションを使用します。)
IdPメタデータのHTTPS証明書を認証します オンにすると、指定されたメタデータURLに対してホスト証明書が検証されます。

メタデータファイル

IdPメタデータをXMLコンテンツとして提供するには、メタデータファイルを選択します。

以下のフィールドに入力します。

フィールド 説明
名前 IdPの設定にわかりやすい名前(組織名など)を指定します。 この名前はサービスプロバイダーの詳細URLフィールドで使用されます。 名前はスペースを入れずに小文字で入力してください。 このフィールドに入力した値によって、サービスプロバイダーの詳細セクションの値が更新されます。
エンティティID サービスプロバイダーのエンティティIDとして機能する組織ごとに一意の文字列(myorg_samlなど)。 この値を入力して、DataRobot(SP)アプリとIdP SAMLアプリケーションの間のマッチングを設定します。
メタデータファイル インテグレーション固有の情報を含むXMLドキュメント(IdPが提供)。 これはIdPからメタデータURLが提供されなかった場合に使用します。

以下のフィールドに入力します。

フィールド 説明
エンティティID IDプロバイダーによって提供される一意の識別子。 この値を入力して、DataRobot(SP)アプリとIdP SAMLアプリケーションの間で共通する識別子を確立します。
メタデータファイル インテグレーション固有の情報を含むXMLドキュメント(IdPが提供)。 これはIdPからメタデータURLが提供されなかった場合に使用します。

手動設定

IdPメタデータがない場合は、手動設定を選択してください。

以下のフィールドに入力します。

フィールド 説明
名前 IdPの設定にわかりやすい名前(組織名など)を指定します。 この名前はサービスプロバイダーの詳細URLフィールドで使用されます。 名前はスペースを入れずに小文字で入力してください。 このフィールドに入力した値によって、サービスプロバイダーの詳細セクションの値が更新されます。
エンティティID サービスプロバイダーのエンティティIDとして機能する組織ごとに一意の文字列(myorg_samlなど)。 この値は、DataRobotのIdPアプリケーションを手動で設定するときに入力します。
IDプロバイダーのシングルサインオンURL ユーザーのログイン認証を開始するためにDataRobotが連絡するURL。 これは、IdP設定でDataRobot用に作成したSAMLアプリケーションから取得されます。
IDプロバイダーのシングルサインアウトURL(オプション) DataRobotがログアウト後にユーザーのブラウザーに送信するURL。 これは、IdP設定でDataRobot用に作成したSAMLアプリケーションから取得されます。 空白のままにすると、DatRobotはルートのDataRobotサイトにリダイレクトします。
発行者 これはIdP設定でDataRobot用に作成したSAMLアプリケーションから取得されます。 備考:これはDataRobot UIでオプションとして表示されていますが、オプションではないので正しく設定する必要があります。
証明書 貼り付けまたはアップロードされたX.509証明書。 証明書は、IdP署名の検証に使用されます。 これは、IdP設定でDataRobot用に作成したSAMLアプリケーションから取得されます。

以下のフィールドに入力します。

フィールド 説明
エンティティID IDプロバイダーによって提供される一意の識別子。 この値を入力して、DataRobot(SP)アプリとIdP SAMLアプリケーションの間のマッチングを設定します。
IDプロバイダーのシングルサインオンURL ユーザーのログイン認証を開始するためにDataRobotが連絡するURL。 これは、IdP設定でDataRobot用に作成したSAMLアプリケーションから取得されます。
IDプロバイダーのシングルサインアウトURL(オプション) DataRobotがログアウト後にユーザーのブラウザーに送信するURL。 これは、IdP設定でDataRobot用に作成したSAMLアプリケーションから取得されます。 空白のままにすると、DatRobotはルートのDataRobotサイトにリダイレクトします。
発行者 IdP設定でDataRobot用に作成されたSAMLアプリケーションから取得されたIdP指定のエンティティID。 備考:これはDataRobot UIでオプションとして表示されていますが、オプションではないので正しく設定する必要があります。
証明書 貼り付けまたはアップロードされたX.509証明書。 証明書は、IdP署名の検証に使用されます。 これは、IdP設定でDataRobot用に作成したSAMLアプリケーションから取得されます。

ユーザーを自動生成を使用すると、最初のサインオン時にDataRobotに新しいユーザーが自動的に追加されます。

マッピング

3つの設定オプションすべてで、DataRobotとIdPの間での属性、グループ、ロールの同期方法を定義できます。

マッピングを使用すると、IdP構成の設定に基づいて、DataRobotでユーザーを自動的にプロビジョニングできます。 また、チーム内でDataRobot用に設定されていないメンバーがシステムに入ることも防止できます。

マッピングを追加すると、DataRobotにアクセスできるユーザーにさらに制限が追加され、ユーザーがアクセスできる対象も制御されます。 マッピングがなければ、管理者がDataRobotシステムに手動で追加した組織内の誰でもプラットフォームにアクセスできます。

A社のA部に配属された太郎さんが、上司からDataRobotへのリンクを受け取ったとします。 When J click's on the link, their profile is automatically created in the DataRobot system based on the mappings from the identity provider. Permissions are assigned based on the role as defined by J's company and how that role is defined in the IdP configuration.

一方、太郎さんがA社のB部に配属された場合を考えてみます。B部はDataRobotを使用するように設定されていないとします。 上司から送信されたDataRobotリンクを太郎さんがクリックすると、DataRobotへのアクセスが拒否され、ユーザーレコードは作成されません。

次のマッピングを設定できます。

属性のマッピングを使用すると、DataRobot属性(ユーザーに関するデータ)をSAML応答のフィールドにマップできます。 つまり、DataRobotとIdPは異なる名前を使用できるため、このセクションでは、DataRobotがユーザーの表示名、ユーザー名、姓、名、およびメールアドレスを更新するSAML応答のフィールドの名前を設定できます。 ユーザー名フィールドは必須であり、DataRobotアプリケーションがログインユーザーの正しいユーザー名を抽出できるようにする設定において不可欠です。

組織のマッピングは、セルフマネージドAIプラットフォームでのみ利用可能です。 これにより、IdP組織と既存のDataRobot組織の間に複数のマッピングを作成できます。

マッピングは1対1のみ可能です。 マッピングされた組織のリストは、ログインが成功するたびにIdPから同期されます。 マッピングされていない組織はDataRobotで例外が発生するため、可能な限りすべての組織をマッピングする必要があります。

フィールド 説明
組織の属性 SAML応答内で、文字列を組織名として識別する名前。
組織 ユーザーの移動先となる既存のDataRobot組織の名前。
アイデンティティプロバイダーの組織 ユーザーが所属するIdP組織の名前。

組織がIdPから提供されていない場合、またはユーザーがどの組織にも属していない場合、ユーザーは最初のログイン後にデフォルトの組織に移動されます。

ユーザーが割り当てられるデフォルトの組織を定義するには、システム設定 > 組織管理に移動します。

グループマッピングを使用して、IdPグループと既存のDataRobotグループの間で無制限のマッピングを作成します。 マッピングは1対1のみ可能です。 マッピングされたグループのリストは、ログインプロセスが成功するたびにIdPから同期されます。 マップされていないグループは、DataRobotで一意のエンティティとして使用でき、ログインプロセス後も変更されません。 カスタムRBACロールによって、新しいロールを作成して目的のグループに割り当てることで、DataRobotのIdPグループの各エントリーに1つのデフォルトロールをマッピングすることができます。

構成を行うには、以下を設定します。

フィールド 説明
グループ属性 文字列をグループ名として識別する名前(SAML応答内)。
DataRobotグループ ユーザーを割り当てる既存のDataRobotグループの名前。
IDプロバイダーグループ ユーザーが属するIdPグループの名前。

セルフマネージド環境では、組織のマッピングを使用して、組織に個別のグループマッピングを定義することもできます。 それ以外の場合、マッピングはデフォルトの組織と結び付けられます。

フィールド 説明
グループ属性 SAML応答内で、文字列をグループ名として識別する名前。
グループ区切り文字 文字列内で、グループ名を区切る文字。
DataRobotグループ ユーザーを割り当てる既存のDataRobotグループの名前。
IDプロバイダーグループ ユーザーが属するIdPグループの名前。
DataRobotの組織 ユーザーの移動先となる既存のDataRobot組織の名前。
アイデンティティプロバイダーの組織 ユーザーが所属するIdP組織の名前。

Roles mapping allows you to create an unlimited number of one-to-one mappings between IdP and DataRobot roles. マッピングされたロールのリストは、ログインプロセスが成功するたびにIdPから同期されます。

Example: Role mapping behaviour

In the IdP, you assign the role of Sample Role 1 to J_Doe. When you set up SSO in DataRobot, you map Sample Role 1 to the DataRobot role Data Scientist. Then, in DataRobot, you manually change J_Doe's role to App Admin. The next time J_Doe logs in to DataRobot, their role will change back to Data Scientist based on the specified role mapping.

マップされていないグループは、DataRobotで一意のエンティティとして使用でき、ログインプロセス後も変更されません。

構成を行うには、以下を設定します。

フィールド 説明
ロール属性 文字列を名前付きユーザーの役割として識別する名前(SAML応答内)。
DataRobotの役割 ユーザーに割り当てるDataRobotの役割の名前。
IDプロバイダーの役割 ユーザーに割り当てられているIdP設定の役割の名前。

セルフマネージド環境では、組織のマッピングを使用して、組織に個別のロールマッピングを定義することもできます。 それ以外の場合、マッピングはデフォルトの組織と結び付けられます。

フィールド 説明
ロール属性 SAML応答内で、文字列をロール名として識別する名前。
ロール区切り文字 文字列内で、ロール名を区切る文字。
DataRobotの役割 ユーザーが割り当てられる既存のDataRobotロールの名前。
IDプロバイダーの役割 ユーザーが所属するIdPロールの名前。
DataRobotの組織 ユーザーの移動先となる既存のDataRobot組織の名前。
アイデンティティプロバイダーの組織 ユーザーが所属するIdP組織の名前。

セルフマネージドAIプラットフォームの管理者

DataRobotとIdPの関係性を変更して、SAMLプロトコルのセキュリティ強度を増減するには、セキュリティパラメーターのセクションを参照してください。

SSO要件の設定

すべてのフィールドが確認され、接続に成功したら、トグルを使ってSSOをオプションにするか必須にするかを選択します。

トグル 説明
シングルサインオンを有効にする ユーザーのSSOをオプションにします。有効にすると、ユーザーはSSOまたは別の認証方法(ユーザー名/パスワード)を使用してDataRobotにサインインできます。
シングルサインオンを強制します ユーザーのSSOを必須にします。有効にすると、組織内のユーザーはSSOを使用してサインインする必要があります。

備考

設定とテストが完了するまで、サインオンを強制しないでください。

SSOが設定されたら、ユーザーに/sign-in/<name>を提供して、DataRobotにサインインできるようにします。 以下の例では、https://app.eu.datarobot.com/sign-in/datarobot-saml-ssoがSAML SSOのリンク、datarobot-saml-ssoがSAML SSO設定のカスタム名、/sign-in/datarobot-saml-ssoがユーザーに提供される組織のSAML SSOログインフォームのURLです。 これは、基本のログインフォームの代わりに使用する必要があります。 マネージドAIプラットフォームでは、app.datarobot.comのログイン画面からSSOにアクセスできません。

どちらの場合でも、SSOログインが有効であれば、ユーザーがSSOボタンをクリックするとIdPの認証ページにリダイレクトされ、サインオンに成功するとDataRobotにリダイレクトされます。

トグル 説明
シングルサインオンを有効にする ユーザーのSSOをオプションにします。有効にすると、ユーザーはSSOまたは別の認証方法(ユーザー名/パスワード)を使用してDataRobotにサインインできます。
シングルサインオンを強制します ユーザーのSSOを必須にします。有効にすると、組織内のユーザーはSSOを使用してサインインする必要があります。

備考

設定とテストが完了するまで、サインオンを強制しないでください。

どちらの場合でも、SSOログインが有効であれば、ユーザーがSSOボタンをクリックするとIdPの認証ページにリダイレクトされ、サインオンに成功するとDataRobotにリダイレクトされます

セルフマネージドAIプラットフォームの管理者

以下は、セルフマネージドAIプラットフォームでのみ利用可能です。

セキュリティパラメーター

セキュリティパラメーターはDataRobotとIdPの関係を変更して、SAMLプロトコルのセキュリティ強度を増減します。

次のオプションを使用して、セキュリティ強度を変更できます。

フィールド 説明
非要求レスポンスを許可する DataRobotでSSOが開始されると(SPによって開始されるリクエスト)、DataRobotは一意のIDを持つ認証リクエストをIdPに送信します。 次に、Idpは同じ一意のIDを使用して応答を返します。 このパラメーターを有効にすると、リクエストと応答のIDが一致する必要がなくなります(IdPによって開始される認証の場合など)。
署名済み認証リクエスト DataRobotは、IdPに送信される前に認証要求に署名して、サードパーティの関与がなかったことを検証できるようにします。 高度なオプション > クライアント設定では、このパラメーターを有効にする前に秘密鍵を設定してください。
署名済みアサーションを要求 DataRobotアプリケーションでは署名付きアサーションの送信にIdPが必要なので、このパラメーターを有効にしておくことをお勧めします。 テストやデバッグの際、管理者は署名付きアサーションを無効にすることができます。
署名済み応答を要求 DataRobotアプリケーションでは署名付きアサーションの送信にIdPが必要なので、このパラメーターを有効にしておくことをお勧めします。 テストやデバッグの際、管理者は署名付きアサーションを無効にすることができます。
署名済みログアウトリクエスト DataRobotは、IdPに送信される前にログアウト要求に署名して、サードパーティの関与がなかったことを検証できるようにします。 このパラメーターを有効にする前に、秘密鍵を設定します。

また、オプションAuth requests signedLogout requests signedに必要な、高度なオプション > クライアント設定秘密鍵の設定に関するセクションも参照してください。

高度なオプション

次の詳細オプションを設定できます。

セッションとバインディングは、DataRobotとIdPの通信方法(SAML要件はIdPによって異なります)を制御します。

構成を行うには、以下を設定します。

フィールド 説明
ユーザーセッション長(秒) セッションクッキーの有効時間。 デフォルトの長さは1週間です。 この数を減らすと、IdPへの認証要求の割合が増加します。
SP Initiatedメソッド SAML認証のネゴシエーションを開始するために使用されるHTTPメソッド。
IdP·Initiatedメソッド 認証に成功した後、ユーザーをDataRobotに移動させるために使用されるHTTPメソッド。

クライアント設定では、ユーザーは秘密鍵と証明書を設定できます。 この設定は、セルフマネージド環境専用です。

構成を行うには、以下を設定します。

フィールド 説明
ダイジェストアルゴリズム ハッシュ値の計算に使用するメッセージダイジェストアルゴリズム。
署名アルゴリズム 署名の作成に使用するアルゴリズム。
SAML設定 SAMLクライアント設定を微調整するJSONファイル(秘密鍵の設定など)。

DataRobotがSAML認証要求に署名するには、秘密鍵が設定されている必要があります(「署名済み認証リクエスト」および「署名済みログアウトリクエスト」オプションの要件です)。

秘密鍵を設定するには:

DataRobotがIdP SAML応答を解読するためのキーペアを記述します。 この手順は、IdPがその応答を暗号化する場合に必要です。 次のJSONを指定してシークレットをコンテンツとしてアップロードすることもできます。

{
  "key_file_value": "-----BEGIN RSA PRIVATE KEY-----\n...\n-----END RSA PRIVATE KEY-----",
  "cert_file_value": "-----BEGIN CERTIFICATE-----\n...\n-----END CERTIFICATE-----"
} 

省略記号がある場合は、単一行として秘密鍵(PEM形式)を挿入します。 同じことが証明書ファイルにも当てはまります(この場合はcert_file_valueフィールドを使用)。

なお、Oktaではキーペアを記述する際に追加のパラメーター(id_attr_name_crypto)が必要です(DataRobot v10.2以前でのみ必要)。

キーペアは、ファイルパスではなく、その内容で記述することもできます。 上記の秘密鍵の例を参照してください。