概要
ログの RBAC ロールを作成したら、そのロールにアクセス許可を割り当てたり削除したりできます。
個々のアクセス許可に関する詳細は、以下をご覧ください。
ログコンフィギュレーションアクセス
logs_generate_metrics
Generate Metrics 機能を使用する能力をロールに付与します。
このアクセス許可はグローバルで、これにより新しいメトリクスの作成と、既存のメトリクスの編集または削除の両方が可能になります。
logs_write_facets
ファセットの作成、編集、および削除を使用する能力をロールに付与します。
このアクセス許可はグローバルで、これにより新しいファセットの作成と、既存のメトリクスの編集または削除の両方が可能になります。
logs_modify_indexes
ログインデックスを作成および変更する能力をロールに付与します。それには以下が含まれます。
このアクセス許可はグローバルで、これにより新しいインデックスの作成と、既存のインデックスの編集の両方が可能になります。
logs_write_exclusion_filters
インデックス内で除外フィルターを作成または変更する能力をロールに付与します。
このアクセス許可は、グローバルに割り当てることも、インデックスのサブセットに制限することもできます。
インデックスのサブセット:
- ロールのグローバルなアクセス許可を削除。
- インデックスを編集し、“Grant editing Exclusion Filters of this index to” フィールドにロールを追加することで、Datadog サイトのインデックスページでこの権限をロールに付与します。
このコンフィギュレーションは、UI を通じてのみサポートされます。
logs_write_pipelines
ログ処理パイプラインを作成および変更する能力をロールに付与します。それには以下が含まれます。
logs_write_processors
プロセッサとネストされたパイプラインを作成、編集、または削除する能力をロールに付与します。
このアクセス許可は、グローバルに割り当てることも、パイプラインのサブセットに制限することもできます。
特定のパイプラインの Edit
モーダルでロールを割り当てます。
- 特定のパイプラインに割り当てるロールのロール ID を取得します。
- 地域の
logs_write_processors
アクセス許可 API のアクセス許可 ID を取得します。 - 以下の呼び出しで、そのロールにアクセス許可を付与します。
curl -X POST \
https://app.datadoghq.com/api/v2/roles/<ROLE_UUID>/permissions \
-H "Content-Type: application/json" \
-H "DD-API-KEY: <YOUR_DATADOG_API_KEY>" \
-H "DD-APPLICATION-KEY: <YOUR_DATADOG_APPLICATION_KEY>" \
-d '{
"id": "<PERMISSION_UUID>",
"type": "permissions"
}'
logs_write_archives
ログアーカイブを作成、編集、または削除する能力を付与します。それには以下が含まれます。
- アーカイブにルーティングするログのアーカイブフィルターを設定する
- アーカイブの名前を設定する
- アーカイブを並べ替える
- ログ読み取りアーカイブアクセス許可をロールのサブセットに制限します。
このアクセス許可はグローバルで、これにより新しいアーカイブの作成と、既存のアーカイブの編集と削除が可能になります。
logs_read_archives
アーカイブコンフィギュレーションの詳細にアクセスする能力を付与します。 ログ書き込み履歴ビューと組み合わせて、このアクセス許可はアーカイブからリハイドレートをトリガーする能力も付与します。
このアクセス許可の対象はアーカイブのサブセットとなります。アクセス制限のないアーカイブは、logs_read_archives
アクセス許可をもつロールに属するユーザー全員が閲覧できます。アクセスが制限されているアーカイブは、logs_read_archives
が許可されているロールを除き、登録済みのロールのいずれかに属するユーザーのみしかアクセスできません。
以下の例では、Guest
以外のすべてのロールに logs_read_archive
許可が付与されていることを前提としています。
- Staging には
Guest
ロールのみに属するユーザーを除くすべてのユーザーがアクセスできます。 - Prod には
Customer Support
に属するすべてのユーザーがアクセスできます。 - Security-Audit には、
Customer Support
に属するユーザーはアクセスできません。Audit & Security
も同時に付与されている場合はアクセスが可能です。
アーカイブの作成に進むことも、アーカイブの編集中にいつでも更新することもできます。
ログアーカイブ API を使用して、特定のアーカイブからロールを割り当てまたは取り消しします。
logs_write_historical_views
Log Rehydration* をトリガーすることを意味する、履歴ビューを書き込む能力を付与します。
このアクセス許可はグローバルです。 これにより、ユーザーは、ログ読み取りアーカイブアクセス許可を持つアーカイブのリハイドレートをトリガーできます。
上記の例では
ADMIN
ロールメンバーは、そのアーカイブに対する履歴ビューの書き込み (リハイドレート) アクセス許可と、アーカイブの読み取りアクセス許可を持っているため、Audit Archive
からリハイドレートできます。AUDIT
ロールメンバーは、履歴ビューの書き込み (リハイドレート) アクセス許可を持っていないため、Audit Archive
からリハイドレートすることはできません。PROD
ロールメンバーは、アーカイブの読み取りアクセス許可を持っていないため、Audit Archive
からリハイドレートすることはできません。
Audit Archive
からリハイドレートされたすべてのログに team:audit
タグを割り当てるときは、team:audit
ログの読み取りに制限されている Audit
ロールメンバーがリハイドレートされたコンテンツにのみアクセスできることを確認してください。タグの追加とリハイドレートの方法の詳細については、ログアーカイブ設定セクションを参照してください。
Prod Archive
からリハイドレートされた service:ci-cd
ログの場合、次の点に注意してください。
- インデックスデータのログ読み取りレガシーアクセス許可を使用しない場合、これらのログには
CI-CD
ロールメンバーがアクセスできます。 - インデックスデータのログ読み取りレガシーアクセス許可を使用する場合、結果の履歴ビューは
PROD
および ADMIN
ロールメンバーに制限されるため、これらのログには CI-CD
ロールメンバーはアクセスできません。
削除: logs_public_config_api
Datadog は logs_public_config_api
権限を削除しました。
以下の 5 つの権限が、Datadog API を通じて、ログ構成の表示、作成、修正の能力を制御します。
ログデータアクセス
次のアクセス許可を付与してログデータのサブセットの読み取りアクセス権を管理します。
- ログ読み取りデータ (推奨) は、ログ制限クエリに一致するログへのロールのアクセスを制限することにより、よりきめ細かなアクセス制御を提供します。
- ログ読み取りインデックスデータは、インデックスごとにインデックス付きログデータへのデータアクセスを制限するレガシーアプローチです。(インデックスされたデータにアクセスする際にもこのアクセス許可を有効にすることが求められます)
logs_read_data
ログデータへの読み取りアクセス権。付与された場合、他の制限が適用されます (logs_read_index_data
または制限クエリなど)。
ロールは付加的です。ユーザーが複数のロールに属している場合、ユーザーがアクセスできるデータは、各ロールからのすべてのアクセス許可の結合になります。
例:
- ユーザーがログ読み取りデータのあるロールに属し、ログ読み取りデータのないロールにも属している場合、ユーザーにはデータを読み取るアクセス許可があります。
- ユーザーが 1 つのロールで
service:sandbox
に制限されており、別のロールで env:prod
に制限されている場合、ユーザーはすべての env:prod
と service:sandbox
ログにアクセスできます。
制限クエリに一致するログ以外は見られないようユーザーを制限するには、Data Access ページを使用します。
- 制限クエリを作成。
- その制限クエリにロール(複数可)を割り当て。
- それぞれの制限クエリに割り当てられたロールおよびユーザーを確認。
このビューには以下が表示されます。
Restricted Access
セクション: すべての制限クエリと、それらにアタッチされているロールUnrestricted Access
セクション: log_read_data
許可が付与されているすべてのロール(それ以上の制限はなし)No Access
セクション: log_read_data
許可が付与されていないすべてのロール
制限クエリを作成する
クエリフィルターを定義する新しい制限クエリを作成します。新しいクエリは、ロールなしで制限リストに表示されます。
制限クエリにロールを割り当てる
任意のロールを選択し、目的の制限クエリに割り当てます。
注: ロールを割り当てられるのは、1 つの制限クエリのみです。つまり、ロールを制限クエリに割り当てると、このロールにすでにアタッチされていた制限クエリとの関係性を失います。
同様に、同じ “Move” インタラクションを使用してロールに Unrestricted Access
を付与するか、反対に No Access
ロールに変更します。
制限クエリの確認
Data Access ページには、セクションごとに最大 50 の制限クエリ、50 のロールが表示されます。ページで表示可能な数よりも多くのロールと制限クエリがある場合、フィルターを使用してこの表示を絞り込みます。
Roles API を使用して、ロールからこのアクセス許可を取り消すか付与します。
制限クエリを使用して、ログデータのサブセットにアクセス許可をスコープします。
レガシーアクセス許可
これらのアクセス許可は、デフォルトですべてのユーザーに対してグローバルに有効になっています。
ログ読み取りデータアクセス許可は、これらのレガシーアクセス許可の上にあります。たとえば、ユーザーがクエリ service:api
に制限されているとします。
- このユーザーが
audit
および errors
インデックスのスコープ読み取りインデックスデータアクセス許可を持っている場合、このユーザーにはこれらのインデックス内の service:api
ログのみが表示されます。 - このユーザーが livetail 権限を持っている場合、このユーザーには livetail の
service:api
ログのみが表示されます。
logs_read_index_data
いくつかのログインデックスでロールに読み取りアクセス権を付与します。これは、グローバルに割り当てることも、ログインデックスのサブセットに制限することもできます。
このアクセス許可の範囲をインデックスのサブセットに設定するには、まずロールの logs_read_index_data
および logs_modify_indexes
アクセス許可を削除します。その後、
- 特定のパイプラインに割り当てるロールのロール ID を取得します。
- 地域の
logs_write_processors
アクセス許可 API のアクセス許可 ID を取得します。 - 以下の呼び出しで、そのロールにアクセス許可を付与します。
curl -X POST \
https://app.datadoghq.com/api/v2/roles/<ROLE_UUID>/permissions \
-H "Content-Type: application/json" \
-H "DD-API-KEY: <YOUR_DATADOG_API_KEY>" \
-H "DD-APPLICATION-KEY: <YOUR_DATADOG_APPLICATION_KEY>" \
-d '{
"id": "<PERMISSION_UUID>",
"type": "permissions"
}'
logs_live_tail
ロールに Live Tail 機能を使用する能力を付与します。
このアクセス許可はグローバルで、ログ読み取りインデックスデータアクセス許可に関係なく、livetail へのアクセスを許可します。
参考資料
*Log Rehydration は Datadog, Inc. の商標です