amazon-web-services - AWS IAM 全局条件键 aws:PrincipalOrgPaths 引发访问被拒绝
问题描述
我正在尝试在 S3 存储桶策略中使用 IAM 全局条件键aws:PrincipalOrgPaths,但我不断收到“拒绝访问”错误。我可以很好地使用密钥aws:PrincipalOrgID 。下面的消毒桶策略是我正在尝试使用的。
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "MyOrgOnly",
"Effect": "Allow",
"Principal": {
"AWS": "*"
},
"Action": "s3:*",
"Resource": [
"arn:aws:s3:::thebucketofmydreams",
"arn:aws:s3:::thebucketofmydreams/*"
],
"Condition": {
"ForAnyValue:StringLike": {
"aws:PrincipalOrgPaths": "o-funny/r-stuff/ou-path"
}
}
}
]
}
解决方案
所以,最终的答案是这是一个语法错误。PrincipalOrgPaths 需要方括号,即使它是单个实体。如果您尝试这样做,您会注意到一旦被接受,方括号将从最终策略中删除。谢谢,AWS!
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "MyOrgOnly",
"Effect": "Allow",
"Principal": {
"AWS": "*"
},
"Action": "s3:*",
"Resource": [
"arn:aws:s3:::thebucketofmydreams",
"arn:aws:s3:::thebucketofmydreams/*"
],
"Condition": {
"ForAnyValue:StringLike": {
"aws:PrincipalOrgPaths": ["o-funny/r-stuff/ou-path"]
}
}
}
]
}
推荐阅读
- pandas - 如何替换熊猫框架中的字符串值
- python - 尝试将数据重铸为从 .csv 浮动
- python - 在 Kivy 中使用 id 更改小部件的属性
- python - 如何更改框架以填充 X 轴而不是依赖于其中的网格
- php - 仅在有变化时才点击 API - 实时比分
- php - Laravel 微风包覆盖现有文件
- django - Django Makemigrations 并迁移成功。开发服务器按预期运行。在 Nginx 上服务时,“关系“auth_user”不存在”
- c - line_find() 如何找到缓存行大小(lmbench3)?
- reactjs - 如何保存 window.DZ.api() 返回的值?
- c++ - 如何将 min_value 与成对向量一起使用?