私はAWS_ACCESS_KEY_IDとAWS_SECRET_KEYを持っています。これらはアクティブな資格情報であるため、AWSアカウントに属するアクティブなユーザーに属します。どのようにBoto3を使用すると、このAWSアカウントのIDを見つけることができますか?BotoからAWSアカウントIDを取得
10
A
答えて
18
アカウントID get-caller-identity sts関数から取得できます。これは、「アカウント」フィールドを返します。
client = boto3.client("sts", aws_access_key_id=access_key, aws_secret_access_key=secret_key)
account_id = client.get_caller_identity()["Account"]
1
次の関数は、あなたの鍵のペアのためにあなたのアカウントIDを取得します:
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はフォーマット "ARN:AWS:IAM :: ACCOUNT_ID:ユーザー/ USERNAME" であるので、これは動作します。コロンで分割すると、アカウントIDは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. Boto AWS Glacier - アーカイブを取得
- 2. botoを使用して1つのAWSアカウントから別のAWSアカウントにAMIをコピーします
- 3. nodejsからtwitterアカウントのメールIDを取得するには
- 4. GoogleからGoogleアカウントの所有者を取得するプロジェクトID
- 5. Recurly:メールIDからアカウント情報を取得する
- 6. AWS Lambda Boto describe_volumes
- 7. AWS S3バケットのboto
- 8. 単一のaws環境で異なるアカウントからパブリックIPを取得する
- 9. Keychainからアカウント名を取得する
- 10. YouTubeサーバーキーからGCPアカウントを取得
- 11. アンドロイド - "people api"からGoogleアカウントを検索してIDを取得する方法
- 12. IDからURLを取得
- 13. AWS BOTO:ハンドラなしコンフィグレーション後
- 14. Boto AWS認識のエラー
- 15. BOTO Pythonを使用してAWSでインスタンスのパブリックDNSを取得する方法
- 16. JavascriptサブIDから親IDを取得
- 17. paypalアカウントからクライアントIDと秘密鍵を取得する方法
- 18. Windowsサービスからのアカウント名の取得
- 19. BOTO3を使用したAWSアカウントの制限の取得
- 20. IDからのIDの取得PHP SDK
- 21. AWSののbotoだからここのスレッド
- 22. AWS DynamoDBからチャンクのデータを取得
- 23. RubyのAWS S3からファイルを取得
- 24. MxnetイテレータAWS S3からデータを取得
- 25. AWS Custom Authorizer - クッキーからトークンを取得
- 26. AWSアクセスキーIDと秘密のアクセスキーを.pemファイルから取得する方法
- 27. AWS Botoすべてのロールを表示
- 28. ツイッターを返すアカウントのユーザーIDを取得する
- 29. CognitoフェデレーションIDプール内でのAWS Cognito IDの削除と取得
- 30. jQuery idからdivでidからオブジェクトを取得
ここで言及したいくつかの方法https://gist.github.com/gene1wood/6d4974b7503336d642c9 [boto3で現在のユーザーアカウントIDを取得]の – Montaro
可能な複製(HTTPS:/ /stackoverflow.com/questions/33332050/getting-the-current-user-account-id-in-boto3) –
@MarnixKloosterこの質問はGoogleの検索「BotoアカウントID」に最初に表示されます。たぶん、他の質問に重複していると印をつけてください。 – Zags