我收到错误"此策略包含以下错误:策略必须包含有效的版本字符串有关IAM策略语法的更多信息"甚至我在尝试在AWS中创建新策略时在我的策略中包含了版本。我的政策是
{
"Version": "2015-06-19",
"Statement": [
{
"Effect": "Allow",
"Action": "s3:*",
"Resource": [
"arn:aws:s3:::repo.com",
"arn:aws:s3:::repo.com/*"
]
}
]
}
答案 0 :(得分:50)
似乎“版本”不是我要创建的策略的版本,而是由AWS设置的版本号。
如AWS文档所述,版本可以是(version_block =“Version”:(“2008-10-17”|“2012-10-17”)。所以,我将其更改为2012-10-17并且政策被接受。
答案 1 :(得分:21)
根据https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html#Version:
“Version元素必须出现在Statement元素之前。唯一允许的值是:
file1.csv
file2.txt
20170811_test_1.dat
1_dummy_20170811.dat
。这是策略语言的当前版本,您应该将此版本号用于所有策略。2012-10-17
。这是政策语言的早期版本。您可能会在现有策略上看到此版本。请勿将此版本用于任何新策略或要更新的任何现有策略。“答案 2 :(得分:0)