У меня есть веб-инструмент, который позволяет пользователям IAM делать магию со своей учетной записью AWS. Учитывая, что у меня есть бесплатный план, любой пользователь AWS может создать новых пользователей IAM после того, как судебное разбирательство закончится, поэтому они в конечном итоге никогда не будут платить за мой сервис. Есть ли способ узнать идентификатор учетной записи Aws конкретного пользователя IAM? Таким образом, я могу сохранить этот идентификатор на db и заблокировать любого другого нового пользователя IAM, исходящего из этой конкретной учетной записи AWS.Программно определить идентификатор учетной записи AWS конкретного пользователя IAM
ответ
Если у вас есть доступ к iam GetUser, тогда этот вызов возвращает (помимо прочего) ARN для пользователя, который включает идентификатор учетной записи. Вам не нужно знать имя пользователя для его вызова - если ни один не указан, он использует вызывающего пользователя.
Вызов как AWS РМОК Get-User
бы вернуть:
{
"User": {
"UserName": "test",
"PasswordLastUsed": "2015-01-18T11:08:07Z",
"CreateDate": "2014-10-21T20:30:04Z",
"UserId": "AIDAXXXXXXXXXXXXX",
"Path": "/",
"Arn": "arn:aws:iam::123456789012:user/test"
}
}
ARN (Amazon номерных ресурсов (ARN)) для IAM сущностей формата arn:aws:iam::account-number:resource
, так что вы просто необходимо извлечь эту порцию(). Вы не можете гарантировать, что последние части также не будут содержать цифры, поэтому вы должны разделить на :
и принять 5-й компонент.
Вы можете использовать Get-IAMUser и получать информацию, включая ARN; синтаксический анализ ARN также будет иметь идентификатор учетной записи. Снимок экрана ниже.
PowerShell
Import-Module AWSPowerShell.psd1
Get-IAMUser
Boto
import boto
iam = boto.connect_iam()
iam.get_user()
Другой Python boto2 вариант в случае, если у вас нет доступа/разрешения для iam.get_user()
import boto.utils
print boto.utils.get_instance_metadata()['iam']['info']['InstanceProfileArn'].split(':')[4]
рубин SDK
#!/usr/bin/ruby
require 'aws-sdk'
require 'pp'
require 'colorize'
current_region='us-west-2'
current_profile='default'
Aws.config.update({
region: current_region,
credentials: Aws::SharedCredentials.new(profile_name: current_profile),
})
iam = Aws::IAM::Client.new
client = iam.get_account_authorization_details({
max_items: 1,
})
resp=client.user_detail_list[0].arn
acc="#{resp}".split(":")[4]
puts acc
От CLI
aws sts get-caller-identity
Если вы используете вызовы IAM на основе (то же, что предложили другие люди) ваш IAM пользователь должен иметь правильные разрешения для этих вызовов, но sts нужно пройти для любого пользователя IAM.
- 1. Идентификатор пользователя IAM от подписки AWS?
- 2. Fog AWS: Как получить идентификатор учетной записи
- 3. Получить идентификатор учетной записи AWS от Boto
- 4. Как получить идентификатор пользователя или идентификатор учетной записи AWS через AWS PHP SDK
- 5. Как подключиться к AWS Console с учетной записью пользователя IAM?
- 6. Ссылка пользователя Amazon AWS IAM недоступна
- 7. AWS IAM Доступ пользователя к S3
- 8. Получить идентификатор пользователя учетной записи пользователя Windows только по имени учетной записи
- 9. Невозможно увидеть экземпляры пользователя IAM в AWS
- 10. Как получить идентификатор учетной записи пользователя facebook?
- 11. AWS IAM: изменить ключ доступа Идентификатор от корня до IAM
- 12. Исключить разрешения из учетной записи администратора AWS?
- 13. Как получить данные учетной записи AWS с помощью java api? Не для пользователя IAM
- 14. Поиск моего идентификатора учетной записи AWS с использованием JavaScript
- 15. Идентификатор учетной записи Google?
- 16. S3 Политика IAM для доступа к другой учетной записи
- 17. Влияние идентификаторов учетной записи AWS
- 18. Неизвестные атрибуты идентификатор учетной записи
- 19. Активность учетной записи и использование учетной записи не работает
- 20. Как определить имя пользователя учетной записи AWS пользователя, который в последний раз запускал экземпляр EC2?
- 21. Получить идентификатор учетной записи подключенной учетной записи stripe
- 22. IAM Не удается получить доступ к моей учетной записи?
- 23. Что такое идентификатор учетной записи AWS для Heroku в Европе?
- 24. Блокировка учетной записи пользователя
- 25. Извлечение учетной записи пользователя
- 26. Как определить тип учетной записи?
- 27. AWS IAM добавить пользователя в группу
- 28. AWS :: IAM :: Политика для любого пользователя
- 29. AWS IAM: Разрешить экземпляр EC2 останавливаться самостоятельно
- 30. Переменное имя ресурса в политике AWS IAM
У вас есть учетные данные для этих пользователей? Как они идентифицируются с вами в данный момент? –
Да, у меня есть ID ключа доступа и секретный ключ доступа – alexandresaiz