AWS - Policy structure.
Policy 的语法:他是按照Json的方式组织的,包括一到多个申明,每个申明按照以下方式:
{
"Statement":[{
"Effect":"effect",
"Action":"action",
"Resource":"arn",
"Condition":{
"condition":{
"key":"value"
}
}
}
]
}
每个申明(statement)包括4个元素:
Effect:它包括"Allow" 和 "Deny"两个部分。默认情况下,IAM 用户没有权限使用资源和API.
Action: 用来说明我们要授权或拒绝使用的API行为
Resource: resouce 受到 Action的影响。有些Amazon EC 2 API action 允许你包括特定的资源到Policy里,你可以通过action来创建或修改他们。要想申明一个资源,我们需要使用他的"Amazon Resource Name"(ARN).
Condition: 这是可选的。
一些例子:
多个actions: "Action": ["ec2:action1", "ec2.action2"]
"Action" : "ec2:Describe*" 或者 "Action"" "ec2:*"
AWS EC2支持这些 actions, 包括AcceptVpcPeeringConnection, AllocateAddress, .... http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_Operations.html
介绍一下 ARN(Amazon Resource Names for Amazon EC2)
ARN 的格式一般为:
arn:aws:[service]:[region]:[account]:resourceType/resourcePath
service: 例如"ec2",
region: 例如"us-east-1"
account: AWS的账号ID, 不包括连字符(123456789012)
resourceType: 例如(instance)
resourcePath: 可以为*
一些例子:
"Resource": "arn:aws:ec2:us-east-1:123456789012:instance/i-1a2b3c4d"
"Resource": "arn:aws:ec2:us-east-1:123456789012:instance/*"
"Resource": "*"
http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-policy-structure.html#policy-syntax
浙公网安备 33010602011771号