AWS CDK 中的 IAM 角色条件 Python
IAM Role Conditions in AWS CDK Python
我正在创建一个新的 IAM 角色自定义策略,但它会回滚,原因是:MalformedPolicyDocument
myrole = iam.Role(self,config['CUSTOM_POLICY']['ROLE'],
assumed_by=iam.ServicePrincipal('ec2.amazonaws.com'),
role_name=config['CUSTOM_POLICY']['NAME']
)
myrole.add_to_policy(
iam.PolicyStatement(
effect=iam.Effect.ALLOW,
resources=['arn:aws:s3:::MyBucket/*'],
actions=[
's3:CreateBucket',
's3:GetObject',
's3:ListBucket',
's3:PutObject'
],
conditions=[
{
'aws:SourceIp':'192.10.10.10/32'
}
]
)
)
如果我删除它起作用的条件,考虑条件的正确语法是什么?
您似乎遗漏了 condition operator。您是否在寻找类似的东西:
conditions=[
{
"NotIpAddress": {
"aws:SourceIp": ["192.10.10.10/32"]
}
}
]
我正在创建一个新的 IAM 角色自定义策略,但它会回滚,原因是:MalformedPolicyDocument
myrole = iam.Role(self,config['CUSTOM_POLICY']['ROLE'],
assumed_by=iam.ServicePrincipal('ec2.amazonaws.com'),
role_name=config['CUSTOM_POLICY']['NAME']
)
myrole.add_to_policy(
iam.PolicyStatement(
effect=iam.Effect.ALLOW,
resources=['arn:aws:s3:::MyBucket/*'],
actions=[
's3:CreateBucket',
's3:GetObject',
's3:ListBucket',
's3:PutObject'
],
conditions=[
{
'aws:SourceIp':'192.10.10.10/32'
}
]
)
)
如果我删除它起作用的条件,考虑条件的正确语法是什么?
您似乎遗漏了 condition operator。您是否在寻找类似的东西:
conditions=[
{
"NotIpAddress": {
"aws:SourceIp": ["192.10.10.10/32"]
}
}
]