AWS CLI - получить имя учетной записи из имени профиля? - PullRequest
0 голосов
/ 02 октября 2019

Я пытаюсь создать сценарии развертывания для своих объектов aws.

Мы создали отдельные учетные записи для производства и разработки, и я хочу передать аргумент, в котором пользователь может указать, в какую среду развертывать,Поскольку профиль - это то, что связывает их с учетной записью, которую они используют, есть ли способ получить имя учетной записи по имени профиля в командной строке?

Ответы [ 2 ]

0 голосов
/ 02 октября 2019

Вы можете использовать sts get-caller-identity, чтобы получить идентификатор учетной записи. Как правило, это можно сделать без расширенных разрешений, хотя требуется неинтуитивное сопоставление идентификаторов учетных записей с вашим именем для учетной записи, хотя в некоторых случаях это полезно, поскольку оно детерминировано и будет уникальным для всех учетных записей.

$ aws --profile profilename sts get-caller-identity
{
    "Account": "#####", 
    "UserId": "ABC", 
    "Arn": "arn:aws:iam::#####:user.name"
}

Вы также можете использовать iam list-account-aliases, что проще в использовании:

$ aws --profile profilename iam list-account-aliases
{
    "AccountAliases": [
        "my-company-account-alias"
    ]
}
0 голосов
/ 02 октября 2019

Команда description-account даст вам имя учетной записи

https://docs.aws.amazon.com/cli/latest/reference/organizations/describe-account.html

Не ясно, как это поможет вам в автоматизации развертываний, но я думаю, что это ответ на ваш вопрос.

...