我正在编写用于在AWS中配置用户,组,策略等的各种手册。
目前,我正在尝试编写一个任务,该任务将从给定的AWS IAM帐户中删除任何访问密钥。要使用ansible中的iam模块正确执行此操作,您必须指定要禁用的AWS访问密钥。
此脚本还可以预先创建用户(删除访问密钥是为了确保如果用户已经创建,则他们之前没有任何剩余的访问密钥。)
用户创建的输出被注册到一个变量中,如此
List<T>
console_user var的输出是:
T[]
我的问题是,如何获取“keys”字典下提供的访问密钥?由于我正在寻找的是关键,而不是价值,我不确定如何获得该访问密钥,以便我可以在下一个任务中使用它来说我想删除它。
提前感谢您的帮助。
答案 0 :(得分:0)
每个字典都有.keys()
个方法。例如,为每个用户打印密钥:
- debug:
msg: "User {{ item.user_name }} has keys {{ item.keys.keys() }}"
with_items: "{{ console_user.results }}"
或者使用JMESPath迭代每个用户的每个键:
- debug:
msg: "{{ item }}"
with_items: "{{ console_user.results | json_query('[].keys.keys(@)') }}"