【问题标题】:Obtaining account name through boto3?通过boto3获取账户名?
【发布时间】:2020-07-06 03:52:53
【问题描述】:

有没有办法通过boto3获取当前的“账户名”? IE,人类可读的账户名,可以通过AWS账户设置进行设置,在少数地方可以用来代替账号。

我在boto3.client('sts').get_caller_identity()打印的信息中没有看到它

【问题讨论】:

    标签: boto3


    【解决方案1】:

    需要经过iam客户端

    def get_account_name() -> str:
      iam_client = boto3.client('iam')
      response = iam_client.list_account_aliases()
      aliases = response.get('AccountAliases', [])
      if aliases:
        return aliases[0]
      else:
        return ''
    

    【讨论】:

      【解决方案2】:

      它已经晚了,但可能对未来有所帮助。 如果您使用的是组织服务,则可以使用以下代码获取 Account Name

      org = boto3.client('organizations')
      account_name = org.describe_account(AccountId='<account-id>').get('Account')
      print(account_name ['Name'])
      

      【讨论】:

      • 注意:这似乎需要组织级别的权限,而不仅仅是帐户。我尝试使用我想获得名称(示例中为&lt;account-id&gt;)但没有调用 describe_account 的权限的帐户的管理员权限。
      猜你喜欢
      • 2023-03-25
      • 1970-01-01
      • 1970-01-01
      • 2017-06-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-06-14
      • 2022-10-16
      相关资源
      最近更新 更多