У меня есть AWS_ACCESS_KEY_ID и AWS_SECRET_KEY. Это активные учетные данные, поэтому они принадлежат активному пользователю, который принадлежит учетной записи AWS. Как, используя Boto3, я могу найти идентификатор этой учетной записи AWS?Получить идентификатор учетной записи AWS от Boto
10
A
ответ
18
AccountID могут быть схвачены из функции get-caller-identity sts. Это возвращает поле «Account»:
client = boto3.client("sts", aws_access_key_id=access_key, aws_secret_access_key=secret_key)
account_id = client.get_caller_identity()["Account"]
1
Следующая функция поможет вам идентификатор аккаунта для пары ключей:
import boto3
def get_aws_account_id(access_key, secret_key):
sts = boto3.client(
"sts", aws_access_key_id=access_key, aws_secret_access_key=secret_key,
)
user_arn = sts.get_caller_identity()["Arn"]
return user_arn.split(":")[4]
Это работает, потому что пользователь ARN имеет формат «Арн: AWS: РМКО :: ACCOUNT_ID: пользователь/USERNAME». Разделение по двоеточиям, идентификатор учетной записи - это 4-й элемент (0-индексный).
2
Что-то, как это будет работать:
import boto3
ACCESS_KEY = 'FOO'
SECRET_KEY = 'BAR'
iam = boto3.resource('iam',
aws_access_key_id=ACCESS_KEY,
aws_secret_access_key=SECRET_KEY,
)
account_id = iam.CurrentUser().arn.split(':')[4]
print account_id
Если вы используете EC2 IAM ролей, вы можете опустить все/секретного ключа вещи доступа и код становится просто:
iam = boto3.resource('iam')
account_id = iam.CurrentUser().arn.split(':')[4]
Смежные вопросы
- 1. Можете ли вы получить имя учетной записи aws от boto?
- 2. Fog AWS: Как получить идентификатор учетной записи
- 3. Как получить идентификатор пользователя или идентификатор учетной записи AWS через AWS PHP SDK
- 4. Получить идентификатор учетной записи подключенной учетной записи stripe
- 5. Идентификатор учетной записи Google?
- 6. Как получить идентификатор учетной записи пользователя facebook?
- 7. Влияние идентификаторов учетной записи AWS
- 8. Скопируйте AMI из одной учетной записи AWS в другую учетную запись AWS, используя boto
- 9. Программно определить идентификатор учетной записи AWS конкретного пользователя IAM
- 10. Что такое идентификатор учетной записи AWS для Heroku в Европе?
- 11. Неизвестные атрибуты идентификатор учетной записи
- 12. Получить имя учетной записи от контактного объекта
- 13. Aws dynamodb перекрестный доступ к учетной записи
- 14. AWS boto вызовы функций от Лямбда-кода
- 15. AWS Lambda Boto describe_volumes
- 16. AWS Powershell для получения номера учетной записи AWS
- 17. Быстрый способ получить номер учетной записи AWS из инструментов cli?
- 18. Получить идентификатор пользователя учетной записи пользователя Windows только по имени учетной записи
- 19. AWS Boto SNS - получить endpoint_arn устройства маркеров
- 20. Исключить разрешения из учетной записи администратора AWS?
- 21. Ошибка учетной записи Node.js и aws
- 22. Настройка учетной записи электронной почты AWS SES
- 23. Идентификатор учетной записи Android AccountManager для имени
- 24. AWS Boto экземпляр мечения
- 25. Python Boto DynamoDB: получить только указанные атрибуты от записи
- 26. Активность учетной записи и использование учетной записи не работает
- 27. Получить ресурсы, связанные с учетной записью AWS
- 28. Получить идентификатор зарегистрированного пользователя, а не системной учетной записи
- 29. Как получить идентификатор электронной почты пользователя учетной записи google?
- 30. Невозможно получить идентификатор пользователя при создании новой учетной записи
Некоторые методы, упомянутые здесь https://gist.github.com/gene1wood/6d4974b7503336d642c9 – Montaro
Возможная Дубликат [получение текущей учетной записи пользователя идентификатор в boto3] (HTTPS://stackoverflow.com/questions/33332050/getting-the-current-user-account-id-in-boto3) –
@MarnixKlooster Этот вопрос сначала появляется в Google для поиска «Идентификатор учетной записи Boto». Возможно, отметьте другой вопрос как дубликат. – Zags