你如何给json IAM策略添加评论?
IAM政策是复杂的野兽。 在制作它们时添加评论会很好。 例如,
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Stmt1422979261000",
"Effect": "Allow",
"Action": [
"route53:ListHostedZones",
],
"Comment": "Foo"
# or Bar
"Resource": [
"*"
]
}
]
}
这些都不起作用。 是否存在向这些策略添加注释的方法?
不,一般情况下,您在JSON中不允许使用评论。 为了有效地创建评论,您需要允许描述评论的新元素。 由于AWS是这个json对象的主人,他们将负责允许这个。
他们目前只允许以下内容:
超安东尼的答案在严格意义上的“评论”是正确的 - 但是,在大多数情况下,您至少可以使用Sid
作为伪评论来传达意图或任何约束等。
Sid(语句ID)是您为策略声明提供的可选标识符。 您可以将一个Sid值分配给语句数组中的每个语句。 在允许您指定ID元素(例如SQS和SNS)的服务中,Sid值只是策略文档ID的子标识。 在IAM中,Sid值在策略中必须是唯一的。 [强调我的]
例如,在(非常有帮助的)AWS博客中使用TheseActionsSupportResourceLevelPermissions
可以说明这一点。揭秘EC2资源级权限:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "TheseActionsSupportResourceLevelPermissions",
"Effect": "Allow",
"Action": [
"ec2:RunInstances",
"ec2:TerminateInstances",
"ec2:StopInstances",
"ec2:StartInstances"
],
"Resource": "arn:aws:ec2:us-east-1:accountid:instance/*"
}
]
}