Terraform でダッシュボードの編集を制限する方法
restricted_roles 属性を使用したダッシュボードの制限
restricted_roles
属性を使用すると、特定のロールにダッシュボードの編集を制限できます。このフィールドはロールの ID リストを取得し、関連するユーザーに編集権限を付与します。
使用例:
resource "datadog_dashboard" "example" {
title = "Example dashboard"
restricted_roles = ["<role_id_1>", "<role_id_2>"]
}
注: is_read_only
属性は非推奨です。ダッシュボードへのアクセスを管理するには、restricted_roles
属性または制限ポリシーを使用することをお勧めします。
制限ポリシーを使用したダッシュボードの制限
制限ポリシーは非公開ベータ版です。アクセスについては、
Datadog サポートまたはカスタマーサクセスマネージャーにお問い合わせください。
制限ポリシーを使用すると、ダッシュボードやその他のリソースの編集を、ロール、チーム、ユーザー、サービスアカウントなどの特定のプリンシパルに制限できます。
使用例:
resource "datadog_dashboard" "example" {
title = "Example dashboard"
# Do not use restricted_roles or is_read_only attributes
}
resource "datadog_restriction_policy" "example" {
resource_id = "dashboard:${datadog_dashboard.example.id}"
bindings {
principals = ["org:<org_id>"]
relation = "viewer"
}
bindings {
principals = ["role:<role_id_1>", "role:<role_id_2>"]
relation = "editor"
}
}
ロール ID は Roles API や Roles UI から取得するか、datadog_role リソースの Terraform で定義したロール ID を利用します。
組織 ID は GET /api/v2/current_user API リクエストから取得できます。data.relationships.org.data.id
フィールドで見つけてください。