MxL*_*evs 14 amazon-s3 amazon-web-services
我想提供对我桶中所有文件的公共访问.几个SO答案,包括这个流行的一个表示,我要创建一个策略.
所以我去复制粘贴并编辑了资源名称和版本日期,但是我收到了一个错误
Document is invalid: Invalid Version 2014-05-02 - undefined
Run Code Online (Sandbox Code Playgroud)
我去看了一下文档(注意它说的是"最新的"),给出的例子是
{
"Version":"2012-10-17",
"Statement":[{
"Sid":"PublicReadGetObject",
"Effect":"Allow",
"Principal": {
"AWS": "*"
},
"Action":["s3:GetObject"],
"Resource":["arn:aws:s3:::example-bucket/*"
]
}
]
}
Run Code Online (Sandbox Code Playgroud)
我接受了,更新了资源名称,并再次尝试.仍然无法正常工作:版本不存在.
然后,我会在对话框的角落注意到"AWS policy generator"的链接.我填写了详细信息,点击"生成",得到了类似的东西
{
"Id": "Policy1399047197120",
"Statement": [
{
"Sid": "Stmt1399047194777",
"Action": [
"s3:GetObject"
],
"Effect": "Allow",
"Resource": "arn:aws:s3:::mybucketname/*",
"Principal": {
"AWS": [
"AWS"
]
}
}
]
}
Run Code Online (Sandbox Code Playgroud)
它奏效了!很好,所以看起来他们已经决定放弃"版本"选项,除了我在SO上看到的所有示例以及他们的示例中包含这个"版本"选项.
这个版本对我来说并不重要,但这是一个众所周知的变化吗?
Mic*_*bot 29
2012-10-17 示例中是一个静态,常量,文字日期表达式,指定策略语句使用的IAM策略语言的版本 - 而不是策略声明的修订日期.
这里只有两个可能的值,就像现在一样:2012-10-17和2008-10-17.如果您未指定,则假定您使用的旧版本功能更为有限.任何其他值表示不存在的IAM策略语言版本,并且由于该原因无效.
| 归档时间: |
|
| 查看次数: |
3939 次 |
| 最近记录: |