Bantu tingkatkan halaman ini
Ingin berkontribusi pada panduan pengguna ini? Gulir ke bagian bawah halaman ini dan pilih Edit halaman ini GitHub. Kontribusi Anda akan membantu membuat panduan pengguna kami lebih baik untuk semua orang.
Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Buat entri akses
Pertimbangan
Sebelum membuat entri akses, pertimbangkan hal berikut:
-
Mode otentikasi yang diatur dengan benar. Lihat Ubah mode otentikasi untuk menggunakan entri akses.
-
Entri akses mencakup Nama Sumber Daya Amazon (ARN) dari satu, dan hanya satu, IAM prinsipal yang ada. IAMPrinsipal tidak dapat dimasukkan dalam lebih dari satu entri akses. Pertimbangan tambahan untuk ARN yang Anda tentukan:
-
IAMPraktik terbaik merekomendasikan untuk mengakses klaster Anda menggunakan IAM peran yang memiliki kredensi jangka pendek, daripada IAM pengguna yang memiliki kredensi jangka panjang. Untuk informasi selengkapnya, lihat Mewajibkan pengguna manusia untuk menggunakan federasi dengan penyedia identitas untuk mengakses AWS menggunakan kredensi sementara di IAM Panduan Pengguna.
-
Jika ARN adalah untuk IAM peran, itu dapat mencakup jalur. ARNsdalam
aws-auth
ConfigMap
entri, tidak dapat menyertakan jalur. Misalnya, Anda ARN bisaarn:aws:iam::
atau111122223333
:role/development/apps/
my-role
arn:aws:iam::
.111122223333
:role/my-role
-
Jika jenis entri akses adalah apa pun selain
STANDARD
(lihat pertimbangan selanjutnya tentang jenis), ARN harus sama Akun AWS dengan cluster Anda. Jika jenisnyaSTANDARD
, ARN bisa sama, atau berbeda, Akun AWS dari akun tempat cluster Anda berada. -
Anda tidak dapat mengubah IAM prinsipal setelah entri akses dibuat.
-
Jika Anda pernah menghapus IAM prinsipal dengan iniARN, entri akses tidak dihapus secara otomatis. Kami menyarankan Anda menghapus entri akses dengan ARN untuk IAM prinsipal yang Anda hapus. Jika Anda tidak menghapus entri akses dan membuat ulang IAM prinsipal, meskipun memiliki entri yang samaARN, entri akses tidak akan berfungsi. Ini karena meskipun sama untuk IAM prinsipal yang dibuat ulang,
roleID
atauuserID
(Anda dapat melihat ini denganaws sts get-caller-identity
AWS CLI perintah) berbeda untuk prinsipal yang dibuat ulang daripada untuk IAM prinsipal asliIAM. ARN Meskipun Anda tidak melihat IAM kepala sekolahroleID
atauuserID
untuk entri akses, Amazon EKS menyimpannya dengan entri akses.
-
-
Setiap entri akses memiliki tipe. Anda dapat menentukan
EC2 Linux
(untuk IAM peran yang digunakan dengan node yang dikelola sendiri oleh Linux atau Bottlerocket),EC2 Windows
(untuk IAM peran yang digunakan dengan node yang dikelola sendiri Windows),FARGATE_LINUX
(untuk IAM peran yang digunakan dengan AWS Fargate), atau sebagai tipe.STANDARD
Jika Anda tidak menentukan jenis, Amazon EKS secara otomatis menyetel jenisnyaSTANDARD
. Tidak perlu membuat entri akses untuk IAM peran yang digunakan untuk grup node terkelola atau profil Fargate, karena Amazon EKS menambahkan entri untuk peran ini keaws-auth
ConfigMap
, terlepas dari versi platform mana klaster Anda berada.Anda tidak dapat mengubah jenis setelah entri akses dibuat.
-
Jika jenis entri aksesnya
STANDARD
, Anda dapat menentukan nama pengguna untuk entri akses. Jika Anda tidak menentukan nilai untuk nama pengguna, Amazon EKS menetapkan salah satu nilai berikut untuk Anda, tergantung pada jenis entri akses dan apakah IAM prinsipal yang Anda tentukan adalah IAM peran atau IAM pengguna. Kecuali Anda memiliki alasan khusus untuk menentukan nama pengguna Anda sendiri, sebaiknya jangan tentukan nama pengguna dan biarkan Amazon membuatnya EKS secara otomatis untuk Anda. Jika Anda menentukan nama pengguna Anda sendiri:-
Itu tidak bisa dimulai dengan
system:
,eks:
,aws:
,amazon:
, atauiam:
. -
Jika nama pengguna adalah untuk IAM peran, kami sarankan Anda menambahkan
{{SessionName}}
ke akhir nama pengguna Anda. Jika Anda{{SessionName}}
menambahkan nama pengguna Anda, nama pengguna harus menyertakan titik dua sebelum {{SessionName}}. Ketika peran ini diasumsikan, nama sesi yang ditentukan saat mengasumsikan peran secara otomatis diteruskan ke cluster dan akan muncul di CloudTrail log. Misalnya, Anda tidak dapat memiliki nama penggunajohn{{SessionName}}
. Nama pengguna harus:john{{SessionName}}
ataujo:hn{{SessionName}}
. Usus besar hanya harus sebelumnya{{SessionName}}
. Nama pengguna yang dihasilkan oleh Amazon EKS dalam tabel berikut mencakup fileARN. Karena ARN termasuk titik dua, ia memenuhi persyaratan ini. Titik dua tidak diperlukan jika Anda tidak menyertakan{{SessionName}}
nama pengguna Anda.
IAMtipe utama Tipe Nilai nama pengguna yang ditetapkan Amazon EKS secara otomatis Pengguna STANDARD
ARNDari pengguna. Contoh:
arn:aws:iam::
111122223333
:user/my-user
Peran STANDARD
STSARNPeran ketika diasumsikan. Amazon EKS menambahkan
{{SessionName}}
peran tersebut.Contoh:
arn:aws:sts::
111122223333
:assumed-role/my-role
/{{SessionName}}Jika peran ARN yang Anda tentukan berisi jalur, Amazon EKS menghapusnya di nama pengguna yang dihasilkan.
Peran EC2 Linux
atauEC2 Windows
system:node:{{EC2PrivateDNSName}}
Peran FARGATE_LINUX
system:node:{{SessionName}}
Anda dapat mengubah nama pengguna setelah entri akses dibuat.
-
-
Jika jenis entri akses adalah
STANDARD
, dan Anda ingin menggunakan Kubernetes RBAC otorisasi, Anda dapat menambahkan satu atau beberapa nama grup ke entri akses. Setelah Anda membuat entri akses, Anda dapat menambahkan dan menghapus nama grup. Agar IAM prinsipal memiliki akses ke Kubernetes objek di cluster Anda, Anda harus membuat dan mengelola objek otorisasi () Kubernetes RBAC berbasis peran. Buat KubernetesRoleBinding
atauClusterRoleBinding
objek pada cluster Anda yang menentukan nama grup sebagaisubject
forkind: Group
. Kubernetesmengotorisasi akses IAM utama ke objek cluster apa pun yang telah Anda tentukan dalamClusterRole
objek KubernetesRole
atau yang juga Anda tentukan dalam pengikatan Anda.roleRef
Jika Anda menentukan nama grup, sebaiknya Anda terbiasa dengan objek otorisasi () Kubernetes RBAC berbasis peran. Untuk informasi selengkapnya, lihat Menggunakan RBAC Otorisasidalam Kubernetes dokumentasi. penting
Amazon EKS tidak mengonfirmasi bahwa Kubernetes RBAC objek apa pun yang ada di klaster Anda menyertakan nama grup apa pun yang Anda tentukan.
Alih-alih, atau sebagai tambahan, Kubernetes mengotorisasi akses IAM utama ke Kubernetes objek di klaster Anda, Anda dapat mengaitkan kebijakan EKS akses Amazon ke entri akses. Amazon EKS mengotorisasi IAM prinsipal untuk mengakses Kubernetes objek di klaster Anda dengan izin dalam kebijakan akses. Anda dapat membuat cakupan izin kebijakan akses ke Kubernetes ruang nama yang Anda tentukan. Penggunaan kebijakan akses tidak mengharuskan Anda mengelola Kubernetes RBAC objek. Untuk informasi selengkapnya, lihat Mengaitkan kebijakan akses dengan entri akses.
-
Jika Anda membuat entri akses dengan tipe
EC2 Linux
atauEC2 Windows
, IAM prinsipal yang membuat entri akses harus memilikiiam:PassRole
izin. Untuk informasi selengkapnya, lihat Memberikan izin pengguna untuk meneruskan peran ke Layanan AWS dalam IAM Panduan Pengguna. -
Mirip dengan IAMperilaku standar, pembuatan dan pembaruan entri akses pada akhirnya konsisten, dan mungkin memerlukan beberapa detik untuk menjadi efektif setelah API panggilan awal berhasil dikembalikan. Anda harus merancang aplikasi Anda untuk memperhitungkan potensi penundaan ini. Kami menyarankan agar Anda tidak menyertakan entri akses yang dibuat atau diperbarui di jalur kode ketersediaan tinggi yang penting dari aplikasi Anda. Sebaliknya, buat perubahan dalam inisialisasi terpisah atau rutinitas pengaturan yang lebih jarang Anda lakukan. Selain itu, pastikan untuk memverifikasi bahwa perubahan telah dibuat merata sebelum alur kerja produksi bergantung padanya.
-
Entri akses tidak mendukung peran terkait layanan. Anda tidak dapat membuat entri akses di mana prinsipal ARN adalah peran terkait layanan. Anda dapat mengidentifikasi peran terkait layanan berdasarkan peran merekaARN, yang ada dalam format
arn:aws:iam::*:role/aws-service-role/*
.
Anda dapat membuat entri akses menggunakan AWS Management Console atau AWS CLI.