配置我的 VPC 流日志后,如何解决“Access Error(访问错误)”的问题?
上次更新日期:2022 年 3 月 31 日
配置 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 日志组。)”
如何解决此问题?
简短描述
以下是发生此错误的常见原因:
- 流日志的 Identity and Access Management(IAM)角色没有足够的权限将流日志记录发布到 Amazon CloudWatch 日志组。
- IAM 角色与流日志服务没有信任关系。
- 信任关系未将流日志服务指定为主体。
解决方法
流日志的 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(VPC 流日志)。
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 流日志服务担任角色。
信任关系未将流日志服务指定为主体
请确保信任关系将流日志服务指定为 Principal(主体),如下例所示:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "vpc-flow-logs.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}