Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Mengkonfigurasi otentikasi Pusat IAM Identitas dengan AWS CLI
Topik ini memberikan petunjuk tentang cara mengkonfigurasi AWS CLI with AWS IAM Identity Center (IAMIdentity Center) untuk mengambil kredensi untuk menjalankan perintah. AWS CLI Terutama ada dua cara untuk mengautentikasi pengguna dengan IAM Identity Center untuk mendapatkan kredensional untuk menjalankan AWS CLI perintah melalui file: config
-
(Disarankan) konfigurasi penyedia SSO token.
-
Konfigurasi lama yang tidak dapat disegarkan.
Untuk informasi tentang penggunaan autentikasi pembawa, yang tidak menggunakan ID akun dan peran, lihat Menyiapkan untuk menggunakan AWS CLI dengan CodeCatalyst di CodeCatalyst Panduan Pengguna Amazon.
catatan
Untuk proses terpandu menggunakan Pusat IAM Identitas dengan AWS CLI perintah, lihatTutorial: Menggunakan Pusat IAM Identitas untuk menjalankan perintah Amazon S3 di AWS CLI.
Topik
Prasyarat
-
Instal AWS CLI. Untuk informasi selengkapnya, lihat Menginstal atau memperbarui ke versi terbaru AWS CLI.
-
Anda harus terlebih dahulu memiliki akses ke SSO otentikasi dalam Pusat IAM Identitas. Pilih salah satu metode berikut untuk mengakses AWS kredensional Anda.
Ikuti petunjuk di Memulai di Panduan AWS IAM Identity Center Pengguna. Proses ini mengaktifkan Pusat IAM Identitas, membuat pengguna administratif, dan menambahkan set izin hak istimewa paling tidak sesuai.
catatan
Buat set izin yang menerapkan izin hak istimewa paling sedikit. Sebaiknya gunakan set PowerUserAccess
izin yang telah ditentukan sebelumnya, kecuali majikan Anda telah membuat set izin khusus untuk tujuan ini.
Keluar dari portal dan masuk lagi untuk melihat detail akses terprogram Anda Akun AWS, dan opsi untuk Administrator
atauPowerUserAccess
. Pilih PowerUserAccess
saat bekerja denganSDK.
Masuk AWS melalui portal penyedia identitas Anda. Jika Administrator Cloud Anda telah memberi Anda izin PowerUserAccess
(pengembang), Anda akan melihat Akun AWS bahwa Anda memiliki akses ke dan izin Anda ditetapkan. Di samping nama set izin Anda, Anda melihat opsi untuk mengakses akun secara manual atau terprogram menggunakan set izin tersebut.
Implementasi kustom dapat menghasilkan pengalaman yang berbeda, seperti nama set izin yang berbeda. Jika Anda tidak yakin izin mana yang disetel untuk digunakan, hubungi tim TI Anda untuk mendapatkan bantuan.
Masuk AWS melalui portal AWS akses Anda. Jika Administrator Cloud Anda telah memberi Anda izin PowerUserAccess
(pengembang), Anda akan melihat Akun AWS bahwa Anda memiliki akses ke dan izin Anda ditetapkan. Di samping nama set izin Anda, Anda melihat opsi untuk mengakses akun secara manual atau terprogram menggunakan set izin tersebut.
Hubungi tim TI Anda untuk bantuan.
Setelah mendapatkan akses ke Pusat IAM Identitas, kumpulkan informasi Pusat IAM Identitas Anda dengan melakukan hal berikut:
-
Di portal AWS akses Anda, pilih set izin yang Anda gunakan untuk pengembangan, dan pilih tautan Kunci akses.
-
Di kotak dialog Dapatkan kredensi, pilih tab yang cocok dengan sistem operasi Anda.
-
Pilih metode kredensial Pusat IAM Identitas untuk mendapatkan
SSO Start URL
danSSO Region
nilai yang perlu Anda jalankan.aws configure sso
Untuk informasi tentang nilai cakupan mana yang akan didaftarkan, lihat OAuth2.0 Cakupan akses di Panduan Pengguna Pusat IAM Identitas.
Konfigurasikan profil Anda dengan aws
configure sso
wizard
Untuk mengonfigurasi profil Pusat IAM Identitas untuk AWS CLI:
-
Di terminal pilihan Anda, jalankan
aws configure sso
perintah. -
AWS CLI Upaya untuk membuka browser default Anda untuk proses masuk akun Pusat IAM Identitas Anda. Proses ini mungkin meminta Anda untuk mengizinkan AWS CLI akses ke data Anda. Karena AWS CLI dibangun di atas SDK untuk Python, pesan izin mungkin berisi variasi nama
botocore
.Jika AWS CLI tidak dapat membuka browser, instruksi untuk memulai proses masuk secara manual ditampilkan.
If the browser does not open or you wish to use a different device to authorize this request, open the following URL:
https://device.sso.us-west-2.amazonaws.com/
Then enter the code:QCFK-N451
-
Pilih AWS akun yang akan digunakan dari daftar yang ditampilkan. Jika Anda diizinkan untuk menggunakan hanya satu akun, secara AWS CLI otomatis memilih akun itu dan melewatkan prompt.
There are 2 AWS accounts available to you. > DeveloperAccount, developer-account-admin@example.com (
123456789011
) ProductionAccount, production-account-admin@example.com (123456789022
) -
Pilih IAM peran yang akan digunakan dari daftar yang ditampilkan. Jika hanya ada satu peran yang tersedia, secara AWS CLI otomatis memilih peran itu dan melewatkan prompt.
Using the account ID
123456789011
There are 2 roles available to you. > ReadOnly FullAccess -
Tentukan format output default, default Wilayah AWS untuk mengirim perintah ke, dan nama untuk profil. Jika Anda menentukan
default
sebagai nama profil, profil ini menjadi profil default yang digunakan. Dalam contoh berikut, pengguna memasukkan Wilayah default, format output default, dan nama profil.CLI default client Region [None]:
us-west-2
<ENTER>CLI default output format [None]:
json
<ENTER>CLI profile name [123456789011_ReadOnly]:
my-dev-profile
<ENTER> -
Pesan terakhir menjelaskan konfigurasi profil yang telah selesai. Anda sekarang dapat menggunakan profil ini untuk meminta kredensional. Gunakan
aws sso login
perintah untuk meminta dan mengambil kredenal yang diperlukan untuk menjalankan perintah. Untuk petunjuk, silakan lihat Masuk ke sesi Pusat IAM Identitas.
Langkah-langkah ini menghasilkan pembuatan sso-session
bagian dan profil bernama dalam config
file yang terlihat seperti berikut:
Konfigurasikan hanya sso-session
bagian Anda dengan aws configure sso-session
wizard
catatan
Konfigurasi ini tidak kompatibel dengan Pusat IAM Identitas lama.
aws configure sso-session
Perintah memperbarui sso-session
bagian dalam ~/.aws/config
file. Jalankan aws configure sso-session
perintah dan berikan awal Pusat IAM Identitas Anda URL dan AWS Wilayah yang menghosting direktori Pusat IAM Identitas.
$
aws configure sso-session
SSO session name:
my-sso
SSO start URL [None]:
https://my-sso-portal.awsapps.com/start
SSO region [None]:
us-east-1
SSO registration scopes [None]:
sso:account:access
Konfigurasi manual menggunakan config
file
IAMInformasi konfigurasi Pusat Identitas disimpan dalam config
file dan dapat diedit menggunakan editor teks. Untuk menambahkan dukungan Pusat IAM Identitas secara manual ke profil bernama, Anda harus menambahkan kunci dan nilai ke config
file.
sso-session
Bagian config
file digunakan untuk mengelompokkan variabel konfigurasi untuk memperoleh token SSO akses, yang kemudian dapat digunakan untuk memperoleh AWS kredensional. Pengaturan berikut digunakan:
-
(Diperlukan)
sso_start_url
-
(Diperlukan)
sso_region
Anda menentukan sso-session
bagian dan mengaitkannya ke profil. sso_start_url
Pengaturan sso_region
dan harus diatur di dalam sso-session
bagian. Biasanya, sso_account_id
dan sso_role_name
harus diatur di profile
bagian sehingga SDK dapat meminta SSO kredensional.
Contoh berikut mengonfigurasi SSO kredensi SDK untuk meminta dan mendukung penyegaran token otomatis:
[profile
dev
] sso_session =my-sso
sso_account_id =111122223333
sso_role_name =SampleRole
[sso-sessionmy-sso
] sso_region =us-east-1
sso_start_url =https://my-sso-portal.awsapps.com/start
Ini juga memungkinkan sso-session
konfigurasi untuk digunakan kembali di beberapa profil:
[profile
dev
] sso_session =my-sso
sso_account_id =111122223333
sso_role_name =SampleRole
[profileprod
] sso_session =my-sso
sso_account_id =111122223333
sso_role_name =SampleRole2
[sso-sessionmy-sso
] sso_region =us-east-1
sso_start_url =https://my-sso-portal.awsapps.com/start
Namun, sso_account_id
dan sso_role_name
tidak diperlukan untuk semua skenario konfigurasi SSO token. Jika aplikasi Anda hanya menggunakan AWS layanan yang mendukung otentikasi pembawa, maka AWS
kredensi tradisional tidak diperlukan. Otentikasi pembawa adalah skema HTTP otentikasi yang menggunakan token keamanan yang disebut token pembawa. Dalam skenario ini, sso_account_id
dan sso_role_name
tidak diperlukan. Lihat panduan individual untuk AWS layanan Anda untuk menentukan apakah itu mendukung otorisasi token pembawa.
Selain itu, cakupan pendaftaran dapat dikonfigurasi sebagai bagian dari file. sso-session
Lingkup adalah mekanisme di OAuth 2.0 untuk membatasi akses aplikasi ke akun pengguna. Aplikasi dapat meminta satu atau lebih cakupan, dan token akses yang dikeluarkan untuk aplikasi akan terbatas pada cakupan yang diberikan. Cakupan ini menentukan izin yang diminta untuk diotorisasi untuk OIDC klien terdaftar dan token akses yang diambil oleh klien. Contoh berikut menetapkan sso_registration_scopes
untuk menyediakan akses untuk daftar akun/peran:
[sso-session
my-sso
] sso_region =us-east-1
sso_start_url =https://my-sso-portal.awsapps.com/start
sso_registration_scopes =sso:account:access
Token otentikasi di-cache ke disk di bawah sso/cache
direktori dengan nama file berdasarkan nama sesi.
catatan
Penyegaran token otomatis tidak didukung menggunakan konfigurasi lama yang tidak dapat disegarkan. Sebaiknya gunakan konfigurasi SSO token.
Untuk menambahkan dukungan Pusat IAM Identitas secara manual ke profil bernama, Anda harus menambahkan kunci dan nilai berikut ke definisi profil dalam config
file.
Anda dapat menyertakan kunci dan nilai lain yang valid dalam .aws/config
file. Contoh berikut adalah profil Pusat IAM Identitas:
[profile
my-sso-profile
] sso_start_url =https://my-sso-portal.awsapps.com/start
sso_region =us-west-2
sso_account_id =111122223333
sso_role_name =SSOReadOnlyRole
region =us-west-2
output =json
Untuk menjalankan perintah, Anda harus terlebih dahulu Masuk ke sesi Pusat IAM Identitas meminta dan mengambil kredensi sementara Anda.
Untuk informasi lebih lanjut tentang credentials
file config
dan, lihatKonfigurasi dan pengaturan file kredensi di AWS CLI.
Masuk ke sesi Pusat IAM Identitas
catatan
Proses masuk dapat meminta Anda untuk mengizinkan AWS CLI akses ke data Anda. Karena AWS CLI dibangun di atas SDK untuk Python, pesan izin mungkin berisi variasi namabotocore
.
Untuk mengambil dan menyimpan satu set kredensi Pusat IAM Identitas, jalankan perintah berikut AWS CLI untuk membuka browser default Anda dan memverifikasi log masuk Pusat IAM Identitas Anda.
$
aws sso login --profile my-dev-profile
SSO authorization page has automatically been opened in your default browser.
Follow the instructions in the browser to complete this authorization request.
Successfully logged into Start URL: https://my-sso-portal.awsapps.com/start
Kredensi sesi Pusat IAM Identitas Anda di-cache dan AWS CLI menggunakannya untuk mengambil AWS kredenal dengan aman untuk peran yang ditentukan dalam profil. IAM
Jika tidak AWS CLI dapat membuka browser Anda, itu meminta Anda untuk membukanya sendiri dan memasukkan kode yang ditentukan.
$
aws sso login --profile
my-dev-profile
Using a browser, open the following URL:
https://device.sso.us-west-2.amazonaws.com/
and enter the following code:QCFK-N451
Anda juga dapat menentukan sso-session
profil mana yang akan digunakan saat masuk menggunakan --sso-session
parameter aws sso login
perintah. sso-session
Opsi ini tidak tersedia untuk Pusat IAM Identitas lama.
$
aws sso login --sso-session
my-dev-session
Token otentikasi di-cache ke disk di bawah ~/.aws/sso/cache
direktori dengan nama file berdasarkan file. sso_start_url
Jalankan perintah dengan profil Pusat IAM Identitas Anda
Setelah masuk, Anda dapat menggunakan kredensional Anda untuk memanggil AWS CLI perintah dengan profil bernama terkait. Contoh berikut menunjukkan perintah menggunakan profil:
$
aws sts get-caller-identity --profile
my-dev-profile
Selama Anda masuk ke Pusat IAM Identitas dan kredenal yang di-cache tersebut tidak kedaluwarsa, kredenal yang kedaluwarsa akan diperbarui secara AWS CLI otomatis bila diperlukan. AWS Namun, jika kredensi Pusat IAM Identitas Anda kedaluwarsa, Anda harus memperbaruinya secara eksplisit dengan masuk ke akun Pusat Identitas Anda lagi. IAM
Keluar dari sesi Pusat IAM Identitas
Setelah selesai menggunakan profil Pusat IAM Identitas, Anda dapat membiarkan kredensialnya kedaluwarsa atau menjalankan perintah berikut untuk menghapus kredenal cache Anda.
$
aws sso logout
Successfully signed out of all SSO profiles.
Pemecahan Masalah
Jika Anda menemukan masalah menggunakan AWS CLI, lihat Memecahkan masalah kesalahan untuk AWS CLI untuk langkah-langkah pemecahan masalah.
Sumber daya terkait
Sumber daya tambahan adalah sebagai berikut.
-
Tutorial: Menggunakan Pusat IAM Identitas untuk menjalankan perintah Amazon S3 di AWS CLI
-
aws configure sso
dalam AWS CLI versi 2 Referensi -
aws configure sso-session
dalam AWS CLI versi 2 Referensi -
aws sso login
dalam AWS CLI versi 2 Referensi -
aws sso logout
dalam AWS CLI versi 2 Referensi -
Menyiapkan untuk menggunakan AWS CLI dengan CodeCatalyst di Panduan CodeCatalyst Pengguna Amazon
-
OAuth2.0 Cakupan akses di Panduan Pengguna Pusat IAM Identitas
-
Memulai tutorial di Panduan Pengguna Pusat IAM Identitas