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 kepada pengguna Kubernetes dengan OIDC penyedia eksternal
Amazon EKS mendukung penggunaan OpenID Connect (OIDC) penyedia identitas sebagai metode untuk mengautentikasi pengguna ke klaster Anda. OIDCpenyedia identitas dapat digunakan dengan, atau sebagai alternatif untuk AWS Identity and Access Management (IAM). Untuk informasi selengkapnya tentang penggunaanIAM, lihatBerikan akses IAM kepada pengguna dan peran ke Kubernetes APIs. Setelah mengonfigurasi otentikasi ke klaster, Anda dapat membuat Kubernetes roles
dan clusterroles
menetapkan izin ke peran, lalu mengikat peran ke identitas menggunakan dan. Kubernetes rolebindings
clusterrolebindings
Untuk informasi selengkapnya, lihat Menggunakan RBAC Otorisasi
Pertimbangan
-
Anda dapat mengaitkan satu penyedia OIDC identitas ke klaster Anda.
-
Kubernetestidak menyediakan penyedia OIDC identitas. Anda dapat menggunakan penyedia OIDC identitas publik yang ada, atau Anda dapat menjalankan penyedia identitas Anda sendiri. Untuk daftar penyedia tersertifikasi, lihat OpenID Certification
di situs OpenID. -
Penerbit URL penyedia OIDC identitas harus dapat diakses publik, sehingga Amazon EKS dapat menemukan kunci penandatanganan. Amazon EKS tidak mendukung penyedia OIDC identitas dengan sertifikat yang ditandatangani sendiri.
-
Anda tidak dapat menonaktifkan IAM otentikasi ke klaster Anda, karena masih diperlukan untuk menggabungkan node ke cluster.
-
EKSCluster Amazon masih harus dibuat oleh AWS IAMprinsipal, bukan pengguna penyedia OIDC identitas. Ini karena pembuat cluster berinteraksi dengan Amazon EKSAPIs, bukan. Kubernetes APIs
-
OIDCpengguna yang diautentikasi oleh penyedia identitas tercantum dalam log audit klaster jika CloudWatch log diaktifkan untuk bidang kontrol. Untuk informasi selengkapnya, lihat Mengaktifkan atau menonaktifkan log bidang kontrol.
-
Anda tidak dapat masuk ke akun AWS Management Console dengan akun dari OIDC penyedia. Anda hanya dapat melihat Kubernetes sumber daya di konsol dengan masuk ke AWS Identity and Access Management akun AWS Management Console dengan.
Kaitkan penyedia OIDC identitas
Sebelum Anda dapat mengaitkan penyedia OIDC identitas dengan klaster Anda, Anda memerlukan informasi berikut dari penyedia Anda:
- Penerbit URL
-
Penyedia OIDC identitas yang memungkinkan API server menemukan kunci penandatanganan publik untuk memverifikasi token. URL URLHarus dimulai dengan
https://
dan harus sesuai denganiss
klaim dalam token OIDC ID penyedia. Sesuai dengan OIDC standar, komponen jalur diperbolehkan tetapi parameter kueri tidak. Biasanya hanya URL terdiri dari nama host, sepertihttps://server.example.org
atauhttps://example.com
. Ini URL harus mengarah ke tingkat di bawah ini.well-known/openid-configuration
dan harus dapat diakses publik melalui internet. - ID Klien (juga dikenal sebagai audiens)
-
ID untuk aplikasi klien yang membuat permintaan otentikasi ke penyedia OIDC identitas.
Anda dapat mengaitkan penyedia identitas menggunakan eksctl
atau AWS Management Console.
Contoh IAM kebijakan
Jika Anda ingin mencegah penyedia OIDC identitas dikaitkan dengan klaster, buat dan kaitkan IAM kebijakan berikut ke IAM akun EKS administrator Amazon Anda. Untuk informasi selengkapnya, lihat Membuat IAM kebijakan dan Menambahkan izin IAM identitas di Panduan IAM Pengguna dan Tindakan, sumber daya, dan kunci kondisi untuk Amazon Elastic Kubernetes Service di Referensi Otorisasi Layanan.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "denyOIDC", "Effect": "Deny", "Action": [ "eks:AssociateIdentityProviderConfig" ], "Resource": "arn:aws:eks:
us-west-2
.amazonaws.com:111122223333
:cluster/*" }, { "Sid": "eksAdmin", "Effect": "Allow", "Action": [ "eks:*" ], "Resource": "*" } ] }
Contoh kebijakan berikut memungkinkan asosiasi penyedia OIDC identitas jika clientID
is kubernetes
dan issuerUrl
ishttps://cognito-idp.us-west-2amazonaws.com/*
.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowCognitoOnly", "Effect": "Deny", "Action": "eks:AssociateIdentityProviderConfig", "Resource": "arn:aws:eks:
us-west-2
:111122223333
:cluster/my-instance
", "Condition": { "StringNotLikeIfExists": { "eks:issuerUrl": "https://cognito-idp.us-west-2
.amazonaws.com/*" } } }, { "Sid": "DenyOtherClients", "Effect": "Deny", "Action": "eks:AssociateIdentityProviderConfig", "Resource": "arn:aws:eks:us-west-2
:111122223333
:cluster/my-instance
", "Condition": { "StringNotEquals": { "eks:clientId": "kubernetes
" } } }, { "Sid": "AllowOthers", "Effect": "Allow", "Action": "eks:*", "Resource": "*" } ] }
Mitra penyedia OIDC identitas yang divalidasi
Amazon EKS memelihara hubungan dengan jaringan mitra yang menawarkan dukungan untuk penyedia OIDC identitas yang kompatibel. Lihat dokumentasi mitra berikut untuk detail tentang cara mengintegrasikan penyedia identitas dengan AmazonEKS.
Mitra | Produk | Dokumentasi |
---|---|---|
PingIdentity |
Amazon EKS bertujuan untuk memberi Anda berbagai pilihan opsi untuk mencakup semua kasus penggunaan. Jika Anda mengembangkan penyedia identitas OIDC kompatibel yang didukung secara komersial yang tidak tercantum di sini, hubungi tim mitra kami di aws-container-partners@amazon .com