Amazon CloudWatch ログへのアクセスを特定のユーザーまたは AWS サービスに制限したいです。
簡単な説明
ロググループへのアクセスを制限するには、ユーザーには ID ベースの AWS Identity and Access Management (IAM) ポリシーを使用し、AWS サービスにはサービスリンクロールを使用します。
解決策
特定のユーザーの CloudWatch ログへのアクセスを制限する
次の IAM ポリシーを使用して、指定したロググループを一覧表示するために最低限必要なアクセス許可を付与する DescribeLogGroups アクションへのアクセスを許可します。
IAM ポリシーの例:
注: お使いのものでそれぞれ、example-region は AWS リージョンに、example-log-group はロググループ名に置き換えます。
{
"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:*"
}
]
}
AWS サービスの CloudWatch ログへのアクセスを制限する
CloudWatch Logs とやり取りする AWS サービスの場合は、サービスリンクロールを使用します。サービスリンクロールは、CloudWatch Logs を使用してサービスをセットアップすると自動的に生成され、必要なすべてのアクセス許可を持ちます。
注: IAM アクセス許可を設定するには、AWS マネジメントコンソールを使用します。CloudWatch Logs のリソースベースポリシーを管理するには、API コールを使用します。