Amazon CloudWatch ログへのアクセスを特定のユーザーまたは AWS サービスに制限したいです。
簡単な説明
ロググループへのアクセスを制限するには、ユーザーには ID ベースの AWS Identity and Access Management (IAM) ポリシーを使用し、AWS サービスにはサービスリンクロールを使用します。
解決策
IAM ポリシーを適用して必要最小限の権限を付与する
次の IAM ポリシーは、特定のロググループに詳細なアクセス権を付与し、ユーザーによるログイベントのリスト表示、デスクライブ、閲覧、クエリを許可します。
次の IAM ポリシーを使用して必要最小限のアクセス権をユーザーに付与します。
{
"Version": "2012-10-17",
"Statement": [
{
"Action": [
"logs:Describe*",
"logs:Get*",
"logs:List*",
"logs:StartQuery",
"logs:StopQuery",
"logs:TestMetricFilter",
"logs:FilterLogEvents",
"logs:StartLiveTail",
"logs:StopLiveTail",
"cloudwatch:GenerateQuery"
],
"Effect": "Allow",
"Resource": "arn:aws:logs:example-region:123456789012:log-group:example-log-group:*"
},
{
"Effect": "Allow",
"Action": "logs:DescribeLogGroups",
"Resource": "*"
}
]
}
注: example-region を AWS リージョンに、example-log-group をロググループ名に置き換えてください。
AWS サービスに CloudWatch Logs へのアクセス権を構成する
AWS サービスに CloudWatch Logs を操作するために必要な権限を付与するには、サービスリンクロールを使用します。サービスリンクロールは、CloudWatch Logs でサービスを設定する際に自動的に生成され、必要な権限が含まれています。
注: IAM 権限を構成するには、AWS マネジメントコンソールを使用します。CloudWatch Logs のリソースベースポリシーを管理するには、API コールを使用します。