这个问题通常会在您尝试向您的AWS S3 bucket添加策略时出现。此错误表示在策略中指定的资源或用户/角色 ID不正确。 如果您尝试将策略附加到bucket时出现此消息,您需要检查策略中指定的资源或用户/角色ID是否正确。
下面是一些可能导致此问题的示例:
用户/角色ID拼写错误。确保正确拼写AWS账户 ID、IAM 用户和角色名称。最好是将ID粘贴到策略中,而不是手动输入。
指定的资源名称不正确。确保资源的名称和路径正确,并符合您S3 bucket的架构。
没有正确授予访问IAM用户/角色的权限。请检查是否向IAM用户或角色授予了适当的权限。
以下代码示例展示了一个正确指定IAM用户权限的策略:
{
"Version":"2012-10-17",
"Statement":[
{
"Effect":"Allow",
"Principal":{
"AWS":"arn:aws:iam::ACCOUNT-ID:user/IAM-USER-NAME"
},
"Action":[
"s3:GetObject",
"s3:ListBucket"
],
"Resource":[
"arn:aws:s3:::BUCKET-NAME/*",
"arn:aws:s3:::BUCKET-NAME"
]
}
]
}
请注意,上面的示例中,IAM 用户的 ARN 包括AWS账户ID和IAM用户名,是正确指定策略的关键。确保IAM用户的访问ID有正确的权限并被正确指定在policy中。