特定の AWS Cloudwatch ダッシュボードへのアクセス許可を持つ IAM ROLE ポリシーを持つユーザー アカウントを持っています。しかし、私はそれらにアクセスできません。以下は、ポリシーとエラーの詳細です。私が間違いを犯している場合は、私を修正してください。ありがとう。
IAM ロール
resource "aws_iam_role" "app1_iam_role" {
name = "${terraform.workspace}-APP1-IAM-ROLE"
assume_role_policy = <<EOF
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::${var.aws_account_id[local.environment]}:root"
},
"Action": "sts:AssumeRole",
"Condition": {}
}
]
}
EOF
}
IAM ポリシー
resource "aws_iam_role_policy" "app1_role_policy" {
name = "${terraform.workspace}-APP1-POLICY-DOCUMENT"
role = aws_iam_role.app1_iam_role.id
policy = <<EOF
{
"Version":"2012-10-17",
"Statement":[
{
"Effect":"Allow",
"Action":[
"logs:DescribeLogGroups",
"logs:DescribeLogStreams",
"logs:GetLogEvents"
],
"Resource":[
"arn:aws:logs:eu-west-2:${var.aws_account_id[local.environment]}:log-group:${local.app1_log_group_environment}-${upper(var.application_name)}-application:*",
"arn:aws:logs:eu-west-2:${var.aws_account_id[local.environment]}:log-group:${local.app1_log_group_environment}-${upper(var.application_name)}-application:log-stream:*",
]
},
{
"Effect":"Allow",
"Action":[
"cloudwatch:GetDashboard",
"cloudwatch:ListDashboards"
],
"Resource":[
"arn:aws:cloudwatch::${var.aws_account_id[local.environment]}:dashboard/*app1_application*",
"arn:aws:cloudwatch::${var.aws_account_id[local.environment]}:dashboard/*app1_infratructure*"
]
}
]
}
EOF
}
エラー
To list dashboards you need cloudwatch:ListDashboards permission.
ポリシーで構成されたログにアクセスできることに注意してください。cloudwatch ダッシュボードの arn に問題があるかどうかは不明です。