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.
Kelola entri akses
Prasyarat
-
Keakraban dengan opsi akses klaster untuk klaster Amazon EKS Anda. Untuk informasi selengkapnya, lihat Berikan akses ke Kubernetes API .
-
Sebuah klaster Amazon EKS yang sudah ada. Untuk menyebarkan satu, lihatMemulai dengan Amazon EKS. Untuk menggunakan entri akses dan mengubah mode otentikasi cluster, cluster harus memiliki versi platform yang sama atau lebih lambat dari versi yang tercantum dalam tabel berikut, atau Kubernetes versi yang lebih lambat dari versi yang tercantum dalam tabel.
Versi Kubernetes Versi platform 1.30
eks.2
1.29
eks.1
1.28
eks.6
1.27
eks.10
1.26
eks.11
1.25
eks.12
1.24
eks.15
1.23
eks.17
Anda dapat memeriksa versi Anda saat ini Kubernetes dan platform dengan mengganti
my-cluster
di perintah berikut dengan nama cluster Anda dan kemudian menjalankan perintah yang dimodifikasi:.aws eks describe-cluster --name
my-cluster
--query 'cluster.{"Kubernetes Version": version, "Platform Version": platformVersion}'penting
Setelah Amazon EKS memperbarui klaster Anda ke versi platform yang tercantum dalam tabel, Amazon EKS membuat entri akses dengan izin administrator ke klaster untuk prinsipal IAM yang awalnya membuat cluster. Jika Anda tidak ingin prinsipal IAM tersebut memiliki izin administrator ke cluster, hapus entri akses yang dibuat Amazon EKS.
Untuk cluster dengan versi platform yang lebih awal dari yang tercantum di tabel sebelumnya, pembuat klaster selalu merupakan administrator cluster. Tidak mungkin menghapus izin administrator cluster dari pengguna IAM atau peran yang membuat cluster.
-
Prinsipal IAM dengan izin berikut untuk klaster Anda:
CreateAccessEntry
,,,ListAccessEntries
DescribeAccessEntry
DeleteAccessEntry
, dan.UpdateAccessEntry
Untuk informasi selengkapnya tentang izin Amazon EKS, lihat Tindakan yang ditentukan oleh Amazon Elastic Kubernetes Service di Referensi Otorisasi Layanan. -
Prinsipal IAM yang ada untuk membuat entri akses untuk, atau entri akses yang ada untuk memperbarui atau menghapus.
Menyiapkan entri akses
Untuk mulai menggunakan entri akses, Anda harus mengubah mode otentikasi cluster ke mode API_AND_CONFIG_MAP
atauAPI
. Ini menambahkan API untuk entri akses.
Membuat entri akses
Pertimbangan
Sebelum membuat entri akses, pertimbangkan hal berikut:
-
Entri akses mencakup Nama Sumber Daya Amazon (ARN) dari satu, dan hanya satu, prinsipal IAM yang ada. Prinsipal IAM tidak dapat dimasukkan dalam lebih dari satu entri akses. Pertimbangan tambahan untuk ARN yang Anda tentukan:
-
Praktik terbaik IAM merekomendasikan untuk mengakses klaster Anda menggunakan peran IAM yang memiliki kredensi jangka pendek, daripada pengguna IAM 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 Panduan Pengguna IAM.
-
Jika ARN adalah untuk peran IAM, itu dapat mencakup jalur. ARN dalam
aws-auth
ConfigMap
entri, tidak dapat menyertakan jalur. Misalnya, ARN Anda bisaarn:aws:iam::
atau.111122223333
: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 dengan Akun AWS cluster Anda. Jika jenisnyaSTANDARD
, ARN bisa sama, atau berbeda, Akun AWS dari akun tempat cluster Anda berada. -
Anda tidak dapat mengubah prinsipal IAM setelah entri akses dibuat.
-
Jika Anda pernah menghapus prinsipal IAM dengan ARN ini, entri akses tidak dihapus secara otomatis. Kami menyarankan Anda menghapus entri akses dengan ARN untuk prinsipal IAM yang Anda hapus. Jika Anda tidak menghapus entri akses dan membuat ulang prinsipal IAM, meskipun memiliki ARN yang sama, entri akses tidak akan berfungsi. Ini karena meskipun ARN sama untuk prinsipal IAM yang dibuat ulang,
roleID
atauuserID
(Anda dapat melihat ini denganaws sts get-caller-identity
AWS CLI perintah) berbeda untuk prinsip IAM yang dibuat ulang daripada untuk prinsipal IAM asli. Meskipun Anda tidak melihat kepala sekolah IAMroleID
atauuserID
untuk entri akses, Amazon EKS menyimpannya dengan entri akses.
-
-
Setiap entri akses memiliki tipe. Anda dapat menentukan
EC2 Linux
(untuk peran IAM yang digunakan dengan Linux atau Bottlerocket node yang dikelola sendiri),EC2 Windows
(untuk peran IAM yang digunakan dengan node yang dikelola sendiri Windows),FARGATE_LINUX
(untuk peran IAM yang digunakan dengan), atau sebagai tipe. AWS Fargate (Fargate)STANDARD
Jika Anda tidak menentukan jenis, Amazon EKS secara otomatis menyetel jenisnyaSTANDARD
. Tidak perlu membuat entri akses untuk peran IAM yang digunakan untuk grup node terkelola atau profil Fargate, karena Amazon EKS menambahkan entri untuk peran ini ke, terlepas dari versi platform mana cluster Andaaws-auth
ConfigMap
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 prinsipal IAM yang Anda tentukan adalah peran IAM atau pengguna IAM. Kecuali Anda memiliki alasan khusus untuk menentukan nama pengguna Anda sendiri, sebaiknya jangan tentukan nama pengguna dan biarkan Amazon EKS membuatnya secara otomatis untuk Anda. Jika Anda menentukan nama pengguna Anda sendiri:-
Itu tidak bisa dimulai dengan
system:
,eks:
,aws:
,amazon:
, atauiam:
. -
Jika nama pengguna untuk peran IAM, 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 ARN. Karena ARN termasuk titik dua, ia memenuhi persyaratan ini. Titik dua tidak diperlukan jika Anda tidak menyertakan{{SessionName}}
nama pengguna Anda.
Tipe utama IAM Tipe Nilai nama pengguna yang ditetapkan secara otomatis oleh Amazon EKS Pengguna STANDARD
ARN pengguna. Contoh:
arn:aws:iam::
111122223333
:user/my-user
Peran STANDARD
STS ARN dari peran ketika diasumsikan. Amazon EKS
{{SessionName}}
menambahkan peran tersebut.Contoh:
arn:aws:sts::
111122223333
:assumed-role/my-role
/{{SessionName}}Jika ARN peran 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 otorisasi Kubernetes RBAC, Anda dapat menambahkan satu atau beberapa nama grup ke entri akses. Setelah Anda membuat entri akses, Anda dapat menambahkan dan menghapus nama grup. Agar prinsipal IAM memiliki akses ke Kubernetes objek di cluster Anda, Anda harus membuat dan mengelola objek otorisasi Kubernetes berbasis peran (RBAC). Buat KubernetesRoleBinding
atauClusterRoleBinding
objek pada cluster Anda yang menentukan nama grup sebagaisubject
forkind: Group
. Kubernetesmengotorisasi akses utama IAM 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 berbasis peran (RBAC). Untuk informasi selengkapnya, lihat Menggunakan Otorisasi RBAC dalam dokumentasi. Kubernetes penting
Amazon EKS tidak mengonfirmasi bahwa objek Kubernetes RBAC apa pun yang ada di cluster Anda menyertakan nama grup apa pun yang Anda tentukan.
Alih-alih, atau sebagai tambahan, Kubernetes mengotorisasi akses utama IAM ke Kubernetes objek di klaster Anda, Anda dapat mengaitkan kebijakan akses Amazon EKS ke entri akses. Amazon EKS memberi otorisasi kepada prinsipal IAM 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 objek Kubernetes RBAC. Untuk informasi selengkapnya, lihat Mengaitkan dan memisahkan kebijakan akses ke dan dari entri akses.
-
Jika Anda membuat entri akses dengan tipe
EC2 Linux
atauEC2 Windows
, prinsipal IAM yang membuat entri akses harus memilikiiam:PassRole
izin. Untuk informasi selengkapnya, lihat Memberikan izin pengguna untuk meneruskan peran ke Layanan AWS dalam Panduan Pengguna IAM. -
Mirip dengan perilaku IAM standar, pembuatan dan pembaruan entri akses pada akhirnya konsisten, dan mungkin memerlukan beberapa detik untuk menjadi efektif setelah panggilan API 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 ARN utama adalah peran terkait layanan. Anda dapat mengidentifikasi peran terkait layanan dengan ARN mereka, yang ada dalam format.
arn:aws:iam::*:role/aws-service-role/*
Anda dapat membuat entri akses menggunakan AWS Management Console atau AWS CLI.
Memperbarui entri akses
Anda dapat memperbarui entri akses menggunakan AWS Management Console atau AWS CLI.
Menghapus entri akses
Jika Anda menemukan bahwa Anda menghapus entri akses karena kesalahan, Anda selalu dapat membuatnya kembali. Jika entri akses yang Anda hapus dikaitkan dengan kebijakan akses apa pun, asosiasi akan dihapus secara otomatis. Anda tidak perlu memisahkan kebijakan akses dari entri akses sebelum menghapus entri akses.
Anda dapat menghapus entri akses menggunakan AWS Management Console atau AWS CLI.