Berikan akses ke Kubernetes API - Amazon EKS

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.

Berikan akses ke Kubernetes API

Cluster Anda memiliki titik akhir Kubernetes API. Kubectl menggunakan API ini. Anda dapat mengautentikasi ke API ini menggunakan dua jenis identitas:

  • Prinsipal AWS Identity and Access Management (IAM) (peran atau pengguna) - Jenis ini memerlukan otentikasi ke IAM. Pengguna dapat masuk AWS sebagai pengguna IAM atau dengan identitas federasi dengan menggunakan kredensil yang disediakan melalui sumber identitas. Pengguna hanya dapat masuk dengan identitas federasi jika administrator Anda sebelumnya menyiapkan federasi identitas menggunakan peran IAM. Ketika pengguna mengakses AWS dengan menggunakan federasi, mereka secara tidak langsung mengambil peran. Saat pengguna menggunakan jenis identitas ini, Anda:

    • Dapat menetapkan mereka Kubernetes izin sehingga mereka dapat bekerja dengan Kubernetes objek di cluster Anda. Untuk informasi selengkapnya tentang cara menetapkan izin ke prinsipal IAM Anda sehingga mereka dapat mengakses Kubernetes objek di klaster Anda, lihat. Kelola entri akses

    • Dapat menetapkan mereka izin IAM sehingga mereka dapat bekerja dengan kluster Amazon EKS Anda dan sumber dayanya menggunakan Amazon EKS API,,, AWS CLI AWS CloudFormation, AWS Management Console atau. eksctl Untuk informasi selengkapnya, lihat Tindakan yang ditentukan oleh Amazon Elastic Kubernetes Service di Referensi Otorisasi Layanan.

    • Node bergabung dengan cluster Anda dengan mengasumsikan peran IAM. Kemampuan untuk mengakses klaster Anda menggunakan prinsipal IAM disediakan oleh AWS IAM Authenticator for, Kubernetes yang berjalan pada bidang kontrol Amazon EKS.

  • Pengguna di penyedia OpenID Connect (OIDC) Anda sendiri — Jenis ini memerlukan otentikasi ke OIDCpenyedia Anda. Untuk informasi selengkapnya tentang menyiapkan OIDC penyedia Anda sendiri dengan kluster Amazon EKS Anda, lihatMengautentikasi pengguna untuk klaster Anda dari penyedia OpenID Connect identitas. Saat pengguna menggunakan jenis identitas ini, Anda:

    • Dapat menetapkan mereka Kubernetes izin sehingga mereka dapat bekerja dengan Kubernetes objek di cluster Anda.

    • Tidak dapat menetapkan mereka izin IAM sehingga mereka dapat bekerja dengan kluster Amazon EKS Anda dan sumber dayanya menggunakan Amazon EKS API,,, AWS CLI AWS CloudFormation, AWS Management Console atau. eksctl

Anda dapat menggunakan kedua jenis identitas dengan cluster Anda. Metode otentikasi IAM tidak dapat dinonaktifkan. Metode otentikasi OIDC adalah opsional.

Kaitkan Identitas IAM dengan Izin Kubernetes

AWS IAM Authenticator for Kubernetes diinstal pada bidang kontrol cluster Anda. Ini memungkinkan AWS Identity and Access Management(IAM) prinsipal (peran dan pengguna) yang Anda izinkan untuk mengakses Kubernetes sumber daya di cluster Anda. Anda dapat mengizinkan prinsipal IAM untuk mengakses Kubernetes objek di cluster Anda menggunakan salah satu metode berikut:

  • Membuat entri akses — Jika klaster Anda berada pada atau lebih lambat dari versi platform yang tercantum di bagian Prasyarat untuk Kubernetes versi klaster Anda, kami sarankan Anda menggunakan opsi ini.

    Gunakan entri akses untuk mengelola Kubernetes izin prinsipal IAM dari luar cluster. Anda dapat menambahkan dan mengelola akses ke cluster dengan menggunakan EKS API, AWS Command Line Interface, AWS SDK AWS CloudFormation, dan AWS Management Console. Ini berarti Anda dapat mengelola pengguna dengan alat yang sama dengan yang Anda buat dengan cluster.

    Untuk memulai, ikutiMenyiapkan entri akses, laluMigrasi entri yang ada untuk aws-auth ConfigMap mengakses entri.

  • Menambahkan entri ke aws-auth ConfigMap — Jika versi platform cluster Anda lebih awal dari versi yang tercantum di bagian Prasyarat, maka Anda harus menggunakan opsi ini. Jika versi platform cluster Anda pada atau lebih lambat dari versi platform yang tercantum di bagian Prasyarat untuk Kubernetes versi klaster Anda, dan Anda telah menambahkan entri keConfigMap, maka sebaiknya Anda memigrasikan entri tersebut untuk mengakses entri. ConfigMapNamun, Anda tidak dapat memigrasikan entri yang ditambahkan Amazon EKS, seperti entri untuk peran IAM yang digunakan dengan grup node terkelola atau profil Fargate. Untuk informasi selengkapnya, lihat Berikan akses ke Kubernetes API .

    • Jika Anda harus menggunakan aws-auth ConfigMap opsi, Anda dapat menambahkan entri ke ConfigMap menggunakan eksctl create iamidentitymapping perintah. Untuk informasi selengkapnya, lihat Mengelola pengguna dan peran IAM dalam eksctl dokumentasi.

Atur Mode Otentikasi Cluster

Setiap cluster memiliki mode otentikasi. Mode otentikasi menentukan metode mana yang dapat Anda gunakan untuk memungkinkan prinsipal IAM mengakses Kubernetes objek di cluster Anda. Ada tiga mode otentikasi.

penting

Setelah metode entri akses diaktifkan, itu tidak dapat dinonaktifkan.

Jika ConfigMap metode ini tidak diaktifkan selama pembuatan cluster, itu tidak dapat diaktifkan nanti. Semua cluster yang dibuat sebelum pengenalan entri akses memiliki ConfigMap metode yang diaktifkan.

Bagian aws-auth ConfigMap dalam cluster

Ini adalah mode otentikasi asli untuk cluster Amazon EKS. Prinsipal IAM yang menciptakan cluster adalah pengguna awal yang dapat mengakses cluster dengan menggunakankubectl. Pengguna awal harus menambahkan pengguna lain ke daftar di aws-auth ConfigMap dan menetapkan izin yang memengaruhi pengguna lain dalam cluster. Pengguna lain ini tidak dapat mengelola atau menghapus pengguna awal, karena tidak ada entri di ConfigMap to manage.

Baik entri ConfigMap dan akses

Dengan mode otentikasi ini, Anda dapat menggunakan kedua metode untuk menambahkan prinsip IAM ke cluster. Perhatikan bahwa setiap metode menyimpan entri terpisah; misalnya, jika Anda menambahkan entri akses dari AWS CLI, aws-auth ConfigMap tidak diperbarui.

Akses entri saja

Dengan mode otentikasi ini, Anda dapat menggunakan EKS API, AWS Command Line Interface, AWS SDK AWS CloudFormation, dan AWS Management Console untuk mengelola akses ke cluster untuk prinsipal IAM.

Setiap entri akses memiliki tipe dan Anda dapat menggunakan kombinasi cakupan akses untuk membatasi prinsipal ke namespace tertentu dan kebijakan akses untuk menetapkan kebijakan izin yang dapat digunakan kembali yang telah dikonfigurasi sebelumnya. Atau, Anda dapat menggunakan STANDARD jenis dan Kubernetes RBAC grup untuk menetapkan izin khusus.

Mode autentikasi Metode
ConfigMaphanya (CONFIG_MAP) aws-auth ConfigMap
EKS API dan ConfigMap (API_AND_CONFIG_MAP) mengakses entri di EKS API, AWS Command Line Interface, AWS SDK AWS CloudFormation, dan dan AWS Management Console aws-auth ConfigMap
EKS API saja (API) mengakses entri di EKS API, AWS Command Line Interface, AWS SDK, dan AWS CloudFormation AWS Management Console