我正在创建一个用于创建 IAM 角色的模块。消费者将提供这样的东西
role_cross_account_config = [{
account_ids = ["1111112222222","333332222222"]
external_id = "yesss"
require_mfa = true
},{
account_ids = ["845666666666"]
external_id = "dsaa"
require_mfa = false
},{
account_ids = ["7777788888888","6666444444444"]
external_id = "dsaa"
require_mfa = false
},{
account_ids = ["555564444444"]
external_id = "yesss"
require_mfa = true
},{
account_ids = ["3333399997777"]
external_id = null
require_mfa = true
},{
account_ids = ["64558888888","24331551111","77788644433"]
external_id = "yesss"
require_mfa = true
}]
我正在尝试合并具有相同值的所有对象external_id
and require_mfa
与所有物体合而为一account_ids
所以我应该得到这样的东西
new_list = [{
account_ids = ["1111112222222","333332222222","555564444444","64558888888","24331551111","77788644433"]
external_id = "yesss"
require_mfa = true
},{
account_ids = ["845666666666","7777788888888","6666444444444"]
external_id = "dsaa"
require_mfa = false
},{
account_ids = ["3333399997777"]
external_id = null
require_mfa = true
}]
我能够做到这一点,但仅限于那些具有相同价值观的人require_mfa
and external_id = null
这是通过使用 for 循环和 if else 逻辑。我绞尽脑汁寻找解决办法,但到目前为止无法想出任何解决方案
NOTE:
-
require_mfa
是布尔值
-
external_id
是字符串
- The
external_id
可以有任何价值。这意味着消费者可以用任何东西输入尽可能多的物体external_id
他们选择。我正在尝试将外部 id 和 require mfa 共享相同值的任何对象组合起来。