允许特定用户修改特定安全组的 AWS 权限
AWS Permissions to allow a specific user to Modify a specific Security Group
我一直在尝试在 AWS 上实施一项新政策,以允许特定用户管理特定安全组。
我曾经有这个工作,但它在几周前停止工作,现在无论我尝试什么,我都无法让它再次工作。
是否有人拥有关于如何创建允许用户修改特定安全角色的策略的有效 JSON 配置?这主要是为了允许某些用户在使用动态 IP 时更改防火墙规则。
编辑:
这是我当前的 JSON 配置:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "s1",
"Effect": "Allow",
"Action": [
"ec2:DescribeInstanceAttribute",
"ec2:DescribeInstanceStatus",
"ec2:DescribeInstances",
"ec2:DescribeNetworkAcls",
"ec2:DescribeSecurityGroups"
],
"Resource": [
"*"
]
},
{
"Sid": "s2",
"Effect": "Allow",
"Action": [
"ec2:AuthorizeSecurityGroupEgress",
"ec2:AuthorizeSecurityGroupIngress",
"ec2:RevokeSecurityGroupEgress",
"ec2:RevokeSecurityGroupIngress"
],
"Resource": [
"arn:aws:ec2:*:*:security-group/sg-<my id>"
]
}
]
}
您提到的政策看起来是正确的。但它不允许您修改现有的 egress/ingress 安全规则。如果要修改安全组规则,可以删除已有的安全组规则,添加新的安全组规则。
要允许修改现有安全组规则,还要添加此权限ec2:ModifySecurityGroupRules
。
修改政策
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": [
"ec2:DescribeInstances",
"ec2:DescribeSecurityGroupRules",
"ec2:DescribeInstanceAttribute",
"ec2:DescribeNetworkAcls",
"ec2:DescribeSecurityGroups",
"ec2:DescribeInstanceStatus"
],
"Resource": "*"
},
{
"Sid": "VisualEditor1",
"Effect": "Allow",
"Action": [
"ec2:RevokeSecurityGroupIngress",
"ec2:AuthorizeSecurityGroupEgress",
"ec2:AuthorizeSecurityGroupIngress",
"ec2:UpdateSecurityGroupRuleDescriptionsEgress",
"ec2:RevokeSecurityGroupEgress",
"ec2:UpdateSecurityGroupRuleDescriptionsIngress",
"ec2:ModifySecurityGroupRules"
],
"Resource": [
"arn:aws:ec2:*:*:security-group/<sg-id>",
"arn:aws:ec2:*:*:security-group-rule/*"
]
}
]
}
注意:此策略允许您编辑安全组和该安全组下的任何安全组规则。您还可以使用安全组规则限制访问,方法是为相应的安全组规则 ID (arn:aws:ec2:::security-group-rule/$sgr-id)安全组id.
我一直在尝试在 AWS 上实施一项新政策,以允许特定用户管理特定安全组。 我曾经有这个工作,但它在几周前停止工作,现在无论我尝试什么,我都无法让它再次工作。
是否有人拥有关于如何创建允许用户修改特定安全角色的策略的有效 JSON 配置?这主要是为了允许某些用户在使用动态 IP 时更改防火墙规则。
编辑: 这是我当前的 JSON 配置:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "s1",
"Effect": "Allow",
"Action": [
"ec2:DescribeInstanceAttribute",
"ec2:DescribeInstanceStatus",
"ec2:DescribeInstances",
"ec2:DescribeNetworkAcls",
"ec2:DescribeSecurityGroups"
],
"Resource": [
"*"
]
},
{
"Sid": "s2",
"Effect": "Allow",
"Action": [
"ec2:AuthorizeSecurityGroupEgress",
"ec2:AuthorizeSecurityGroupIngress",
"ec2:RevokeSecurityGroupEgress",
"ec2:RevokeSecurityGroupIngress"
],
"Resource": [
"arn:aws:ec2:*:*:security-group/sg-<my id>"
]
}
]
}
您提到的政策看起来是正确的。但它不允许您修改现有的 egress/ingress 安全规则。如果要修改安全组规则,可以删除已有的安全组规则,添加新的安全组规则。
要允许修改现有安全组规则,还要添加此权限ec2:ModifySecurityGroupRules
。
修改政策
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": [
"ec2:DescribeInstances",
"ec2:DescribeSecurityGroupRules",
"ec2:DescribeInstanceAttribute",
"ec2:DescribeNetworkAcls",
"ec2:DescribeSecurityGroups",
"ec2:DescribeInstanceStatus"
],
"Resource": "*"
},
{
"Sid": "VisualEditor1",
"Effect": "Allow",
"Action": [
"ec2:RevokeSecurityGroupIngress",
"ec2:AuthorizeSecurityGroupEgress",
"ec2:AuthorizeSecurityGroupIngress",
"ec2:UpdateSecurityGroupRuleDescriptionsEgress",
"ec2:RevokeSecurityGroupEgress",
"ec2:UpdateSecurityGroupRuleDescriptionsIngress",
"ec2:ModifySecurityGroupRules"
],
"Resource": [
"arn:aws:ec2:*:*:security-group/<sg-id>",
"arn:aws:ec2:*:*:security-group-rule/*"
]
}
]
}
注意:此策略允许您编辑安全组和该安全组下的任何安全组规则。您还可以使用安全组规则限制访问,方法是为相应的安全组规则 ID (arn:aws:ec2:::security-group-rule/$sgr-id)安全组id.