SCIM は、Infrastructure Pro、Infrastructure Enterprise、および Startup プランで利用可能です。
SCIM を使用して Datadog ユーザーを Okta と同期させるには、次の手順を参照してください。
この機能の能力と制限事項については、SCIM を参照してください。
前提条件
Datadog の SCIM は、Infrastructure Pro、Infrastructure Enterprise、および Startup プランで利用可能な高度な機能です。
このドキュメントでは、組織が ID プロバイダーを使用してユーザー ID を管理していることを前提としています。
アクセスの混乱を避けるため、Datadog では SCIM の設定時にサービスアカウントのアプリケーションキーを使用することを強く推奨しています。詳細については、SCIM でのサービスアカウントの使用 を参照してください。
SAML と SCIM を併用する場合、アクセスの矛盾を避けるため、Datadog では SAML の Just-in-Time (JIT) プロビジョニングを無効にすることを強く推奨しています。ユーザープロビジョニングは SCIM のみを使用して管理してください。
Okta アプリケーションギャラリーで Datadog アプリケーションを選択する
- Okta ポータルで Applications に移動する
- Browse App Catalog をクリックする
- 検索ボックスに「Datadog」と入力する
- Datadog アプリケーションを選択する
- Add Integration をクリックする
注: すでに Okta で Datadog を設定済みの場合は、既存の Datadog アプリケーションを選択してください。
- アプリケーション管理画面の左側のパネルで Provisioning を選択する
- Configure API integration をクリックします。
- Enable API integration を選択します。
- Credentials セクションに次のように入力します。
- Base URL:
https:///api/v2/scim 注: サイトに適したサブドメインを使用してください。URL を確認するには、Datadog サイト を参照してください。 - API Token: 有効な Datadog アプリケーションキーを使用します。アプリケーションキーは 組織の設定ページ で作成できます。データへの継続的なアクセスを維持するには、サービスアカウント のアプリケーションキーを使用してください。
- Test API Credentials をクリックし、認証情報が検証されたことを確認するメッセージが表示されるまで待ちます。
- Save をクリックします。設定セクションが表示されます。
- Provisioning to Appの横にある Edit を選択し、機能を有効にします。
- Create Users
- Update User Attributes
- Deactivate Users
- Datadog Attribute Mappings で、Okta 属性から Datadog 属性への事前設定済みのマッピングを確認します。必要に応じて再マッピングできますが、Okta の値は同じ一連の Datadog 値にマッピングしてください。
Datadog ロール属性をマッピングする
SCIM によってユーザーの Datadog ロール (組み込みまたはカスタムロール) をプロビジョニングするには、roles 属性の明示的なマッピングを追加します。Okta では、この属性はデフォルトではマッピングされません。
Datadog の SCIM ロールサポートは、RFC 7643 で定義されている SCIM の複数値属性の規則に従い、ロール UUID を value として、ロール名を display として使用します。
{
"roles": [
{ "value": "<DATADOG_ROLE_UUID>", "display": "<DATADOG_ROLE_NAME>" }
]
}
- Directory > Profile Editor で、Datadog SCIM 用に構成されたアプリケーションのユーザープロファイルを選択してから、Add Attribute をクリックして
roles 属性を作成します。- Data type: 文字列
- Display name: ロール
- Variable name: ロール
- External name:
roles.^[primary==true].value - External namespace:
urn:ietf:params:scim:schemas:core:2.0:User - Enum には、Define enumerated list of values を選択し、Datadog ロールごとに 1 つのエントリを追加します。その際、ロール名を表示名として、ロール UUID を値として使用します。ロール UUID は、組織の設定 ページのロールの URL で確認できます。カスタムロールも同様の方法で追加します。
- Datadog アプリケーションの Provisioning > To App 設定で、Okta の
roles 属性を Datadog の roles 属性にマッピングします。 - アプリの Assignments タブで、各ユーザーに適切なロールをドロップダウンから選択して割り当てます。
SCIM リクエストで複数のロールが送信された場合、Datadog は組織内のロールと一致するもののみをプロビジョニングします。一致するものがない場合、ユーザーは組織のデフォルトロール (Standard) にフォールバックされ、一致しなかったロールは Audit Trail に記録されます。詳細については、SCIM を参照してください。
Managed Teams を使用すると、Datadog Teams の主要なプロビジョニング (名前、ハンドル、メンバーシップ) を ID プロバイダーを通じて制御できます。セットアッププロセスは、Datadog 内に Teams がすでに存在するかどうかによって異なります。
注: ユーザーを Teams に追加するには、そのユーザーが Datadog にすでに存在している必要があります。したがって、SCIM によって Datadog 内にユーザーが確実に作成されるようにするには、Okta の Datadog アプリにユーザーを割り当てる必要があります。チームメンバー全員が Datadog で自動的に作成されるよう、Okta グループに Datadog アプリケーションを割り当てます。
Datadog で新しい Teams を作成する
- Okta の Datadog アプリケーションで、Push Groups タブに移動します。
- Push Groups ボタンをクリックします。プッシュグループインターフェースが開きます。
- Datadog にプッシュする Okta グループを選択します。
- Match result & push action 列で、Create group が選択されていることを確認します。
- Save をクリックします。
操作が正常に完了したことを確認するには、Datadog の Teams リスト に移動します。設定した Okta グループと一致する Datadog Teams を検索します。Datadog 内に Teams が存在し、外部で管理されていることを確認します。Teams が Datadog に表示されるまでに 1 〜 2 分かかる場合があります。
Okta グループとの既存の Datadog Team の同期
既存の Datadog Teams を Okta グループにマッピングできます。Okta グループから Datadog チームへのリンクを確立すると、それ以降はその Datadog チームは Okta によって管理されるようになります。
注: 既存の Datadog チームを Okta グループと同期するには、Okta グループ名から派生したハンドルが、既存の Datadog チームのハンドルと完全に一致している必要があります。
- Okta の Datadog アプリケーションで、Push Groups タブに移動します。
- Push Groups ボタンをクリックします。プッシュグループインターフェースが開きます。
- Datadog チームを同期する Okta グループを選択します。
- Match result & push action 列で、Create group が選択されていることを確認します。
- Save をクリックします。
注: Create group を選択すると、Okta にNo match found メッセージが表示されます。このメッセージは無視してグループの作成を続行し、同期を確立できます。
Okta グループと Datadog チーム間の関連付けを削除する
Okta グループと Datadog チームの関連付けを解除するには、2 つのオプションがあります。オプションによって、Datadog チームのメンバーシップへの影響は異なります。
Datadog でチームメンバーを保持する
この手順により、Okta ではなく Datadog でチームメンバーシップを管理できるようになります。チームメンバーは変更されません。
- Okta の Datadog アプリケーションで、Push Groups タブに移動します。
- Push Groups ボタンをクリックします。プッシュグループインターフェースが開きます。
- Datadog チームとのリンクを解除する Okta グループを選択します。
- Match result & push action 列で Unlink Pushed Group を選択します。ダイアログボックスが表示されます。
- Leave the group in the target app を選択します。
- Unlink をクリックします。
- Save をクリックします。
Datadog からチームメンバーを削除する
この手順により、Okta ではなく Datadog でチームメンバーシップを管理できるようになり、Datadog チームからチームメンバーが削除されます。
- Okta の Datadog アプリケーションで、Push Groups タブに移動します。
- Push Groups ボタンをクリックします。プッシュグループインターフェースが開きます。
- Datadog チームとのリンクを解除する Okta グループを選択します。
- Match result & push action 列で Unlink Pushed Group を選択します。ダイアログボックスが表示されます。
- Delete the group in the target app (recommended) を選択します。
- Unlink をクリックします。
- Save をクリックします。
注: オプションの名前に反して、Delete the group in the target app を選択しても Datadog からはチームが_削除されません_。代わりに、チームからすべてのメンバーが削除され、Okta のグループと Datadog チーム間のリンクが解除されます。
参考文献