設定 VPC 流程日誌後,如何解決 "Access Error" (存取錯誤)?

1 分的閱讀內容
0

設定 VPC 流程日誌後,我收到以下錯誤訊息: "Access Error.The IAM role for your flow logs does not have sufficient permissions to send logs to the CloudWatch log group." (流程日誌的 IAM 角色沒有足夠的權限將日誌傳送至 CloudWatch 日誌群組。) 如何解決此錯誤?

簡短描述

造成此錯誤的常見原因如下:

解決方案

流程日誌的 IAM 角色沒有足夠的許可將流程日誌記錄發佈至 CloudWatch 日誌群組

與流程日誌關聯的 IAM 角色必須具有足夠的許可,才能將流程日誌發佈至 CloudWatch Logs 中的指定日誌群組。IAM 角色必須屬於您的 AWS 帳戶。

{
 "Version":"2012-10-17"
 "Statement": [
  {
   "Effect":"Allow",
   "Action": [
    "logs:CreateLogGroup",
    "logs:CreateLogStream",
    "logs:PutLogEvents",
    "logs:DescribeLogGroups",
    "logs:DescribeLogStreams"
   ],
   "Resource":"*"
  }
 ]
}

IAM 角色與流程日誌服務沒有信任關係

確保您的角色具有允許流程日誌服務擔任角色的信任關係。

1.    登入 IAM 主控台

2.    選取 Roles (角色)。

3.    選取 VPC-Flow-Logs。    

4.    選取 Trust relationships (信任關係)。

5.    選取 Edit trust policy (編輯信任政策)。

6.    刪除此區段中的目前程式碼,然後貼上以下內容:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "vpc-flow-logs.amazonaws.com"
      },
      "Action": "sts:AssumeRole"
    }
  ]
}

7.    選取 Update policy (更新政策)。

信任關係可讓您控制允許哪些服務擔任角色。在上述範例中,關係允許 VPC 流程日誌服務擔任角色。

信任關係不會將流程日誌服務指定為主體

確保信任關係將流程日誌服務指定為主體,如以下示例所示:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "vpc-flow-logs.amazonaws.com"
      },
      "Action": "sts:AssumeRole"
    }
  ]
}

相關資訊

用於將流程日誌發佈至 CloudWatch Logs 的 IAM 角色

對 VPC 流程日誌進行疑難排解

AWS 官方
AWS 官方已更新 2 年前