python - 设置显式条件时,AWS 策略语句不返回任何条件
问题描述
我从策略文档 json 中创建了一个策略,并尝试从每个语句中获取 condition_entries。在下面的示例中,我只有一个语句和一个条件,但由于某些原因,我返回了一个空列表。我究竟做错了什么?
from policyuniverse.policy import Policy
def test_conditions_entries(self):
policy_document = {
'Version': '2012-10-17',
'Statement': [{
'Effect': 'Allow',
'Action': 'iam:DeleteUser',
'Resource': '*',
'Condition': {'StringLike': {'iam:ResourceTag/status': 'terminated'}}
}]
}
p = Policy(policy_document)
for statement in p.statements:
print(statement.statement)
print(statement.condition_entries)
{'Effect': 'Allow', 'Action': 'iam:DeleteUser', 'Resource': '*', 'Condition': {'StringLike': {'iam:ResourceTag/status': 'terminated'}}}
[]
解决方案
看起来iam:ResourceTag/status
不工作。
以下不起作用:
{"StringLike": {"iam:ResourceTag/status": "terminated"}
以下确实有效。
Condition = {
'StringLike': {
'AWS:SourceOwner': '012345678910'
}
}
希望这对您有所帮助。
推荐阅读
- c# - 错误 powershell c# visual studio
- javascript - 如何在 D3 树形图中显示多个节点父节点?
- php - 如何在浏览器中获取 php-rdkafka 消息我将在命令行中尝试给出输出但不在浏览器中
- python - 在与 c 扩展交互时,IPython 的行为与 CPython 不同
- java - 扫描仪 Java 的简单注册验证表
- regex - rubular中的多行java异常正则表达式
- wordpress - Wordpress 将内容编码为 html
- vhdl - 有线或未合成
- javascript - 如何改进我对对象对象的迭代?
- jquery - 为什么 :contains(text) 选择所有标签?