Mencari cara cepat untuk menarik nomor akun saya, saya awalnya berpikir untuk menggunakan aws iam get-account-authorization-details --max-items 1
tetapi ada beberapa masalah dengan melakukannya dengan cara ini. Adakah cara untuk melakukan ini yang mungkin tidak berasal dari lintas akun?
100
aws sts get-caller-identity|jq -r ".Account"
aws sts get-caller-identity --output json | jq '.Account' | sed 's/\"//g'
--query 'Account'
bagian tersebut.jq
keterlibatan atau penginstalan pada sistem. Beberapa server melarang penginstalan paket asing karena keamanan. Anda dapat melakukan sesuatu seperti iniaws sts get-caller-identity --output json |grep Account |awk -F ': "' '{print$2}' |sed 's/\".*//'
tetapi itu sedikit mengganggu dan Anda sebaiknya melakukannya pada--query 'Account' --output text
saat itu.Dari jawaban terkait saya untuk AWS PowerShell CLI , ID Akun Anda adalah bagian dari Arn sumber daya yang Anda buat ... dan yang dibuat secara otomatis untuk Anda. Beberapa sumber daya juga akan mencantumkan Anda sebagai OwnerId.
Grup Keamanan Default secara otomatis dibuat untuk Anda di setiap VPC default kawasan sebagai grup keamanan yang dicadangkan. Dari dokumentasi :
Hal ini menjadikannya kandidat yang dapat diandalkan untuk mengambil ID akun kami, selama Anda menggunakan EC2 klasik atau memiliki VPC default (* lihat kasus edge jika tidak ada).
Contoh:
Ini digunakan
--query
untuk memfilter keluaran ke "ID pemilik" untuk hasil pertama dari permintaan ini, dan kemudian menggunakan--output
untuk mengeluarkan ID akun Anda sebagai teks biasa:Kasus tepi:
(Terima kasih @kenchew) Perhatikan bahwa jika Anda telah menghapus VPC default di wilayah tertentu, grup keamanan ini tidak ada lagi dan Anda harus menggunakan salah satu solusi alternatif berikut:
Bacaan lebih lanjut:
sumber
Jika Anda menjalankan di server yang dijalankan dengan peran yang diasumsikan, Anda tidak dapat memanggil
aws sts get-caller-identity
. Selain itu, dengandescribe-security-groups
Anda tidak selalu dapat menggunakan--group-names
filter (tidak berfungsi jika Anda tidak memiliki VPC default), jadi pilih saja grup keamanan pertama. Menurut saya ini adalah yang paling andal, terlepas dari jenis autentikasi yang Anda gunakan atau jenis VPC yang Anda miliki.sumber
Metode favorit saya adalah menggunakan
aws iam get-user [--profile <profile>]
karena Anda hanya memerlukan peran layanan mandiri IAM agar ini berfungsi.sumber