Bantu meningkatkan halaman ini
Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Untuk berkontribusi pada panduan pengguna ini, pilih GitHub tautan Edit halaman ini di yang terletak di panel kanan setiap halaman.
Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Berikan akses pengontrol penyeimbang beban Mode Otomatis EKS ke Rahasia tertentu
Dalam tutorial ini, Anda memberikan akses baca pengontrol penyeimbang beban Mode Otomatis Amazon EKS ke Ku Secret bernetes tertentu. Ini membuka blokir otentikasi OIDC pada ALB. Ingress Anda menggunakan ruang nama yang dicakup Role dan RoleBinding ditargetkan pada grup. eks:managed
Tutorial ini membutuhkan waktu sekitar 15 menit untuk menyelesaikannya. Objek Kubernetes RBAC yang Anda buat tidak dikenakan biaya. AWS
Pengontrol penyeimbang beban Mode Otomatis Amazon EKS mendukung otentikasi OIDC pada objek AL Ingress B. Ini menggunakan alb.ingress.kubernetes.io/auth-type: oidc anotasi untuk mengaktifkan otentikasi ini. Untuk menyelesaikan konfigurasi OIDC, controller membaca Kubernetes yang dinamai dalam anotasiSecret. alb.ingress.kubernetes.io/auth-idp-oidc Kebijakan akses terkelola saat ini tidak diberikan get pada Secret objek, sehingga rekonsiliasi gagal dengan pesan yang mirip dengan:
Failed build model due to ingress: <ns>/<name>: secrets "<secret>" is forbidden: User "arn:aws:sts::<acct>:assumed-role/AWSServiceRoleForAmazonEKS/<session>" cannot get resource "secrets" in API group "" in the namespace "<ns>"
Dengan menggunakan mekanisme yang dijelaskan diBerikan Kubernetes RBAC tambahan ke pengontrol yang dikelola Mode Otomatis EKS, Anda dapat memberikan pengontrol terkelola tepat get pada OIDC yang dibutuh Secret kannya.
Prasyarat
Sebelum memulai, pastikan Anda memiliki:
-
Cluster Mode Otomatis Amazon EKS dengan entri
AWSServiceRoleForAmazonEKSakses yang dibuat secara otomatis. -
kubectldikonfigurasi dengan akses cluster. -
AWS CLI diinstal dan dikonfigurasi dengan izin untuk
aws sts get-caller-identitydanaws eks describe-access-entry. -
ALB
Ingressyang menggunakanalb.ingress.kubernetes.io/auth-type: oidcanotasi, dan KubernetesSecretyang dirujukkannya.
Langkah 1: Identifikasi Rahasia untuk ditambahkan ke daftar izinkan
Konfigurasi OIDC pada ALB Ingress terlihat seperti berikut ini. Catat Secret nama dan Ingress namespace — objek RBAC harus hidup di namespace yang sama dengan. Secret
annotations: alb.ingress.kubernetes.io/auth-type: oidc alb.ingress.kubernetes.io/auth-idp-oidc: > { "issuer": "...", "authorizationEndpoint": "...", "tokenEndpoint": "...", "userInfoEndpoint": "...", "secretName": "oidc" }
Sisa contoh ini menggunakan namespace monitoring dan Secret namaoidc.
Langkah 2: Terapkan Peran bercakupan ruang nama dan RoleBinding
Formulir ini get memberikan persis nama tepat Secret dalam satu namespace. Simpan yang berikut ini sebagaieks-managed-oidc-secret-reader.yaml:
apiVersion: rbac.authorization.k8s.io/v1 kind: Role metadata: name: eks-managed-oidc-secret-reader namespace: monitoring rules: - apiGroups: [""] resources: ["secrets"] resourceNames: ["oidc"] verbs: ["get"] --- apiVersion: rbac.authorization.k8s.io/v1 kind: RoleBinding metadata: name: eks-managed-oidc-secret-reader namespace: monitoring subjects: - kind: Group name: eks:managed apiGroup: rbac.authorization.k8s.io roleRef: kind: Role name: eks-managed-oidc-secret-reader apiGroup: rbac.authorization.k8s.io
Menerapkannya:
kubectl apply -f eks-managed-oidc-secret-reader.yaml
Untuk menambahkan lebih banyak Secret objek ke daftar izinkan nanti, tambahkan nama mereka ke Role’s `resourceNames daftar dan terapkan kembali.
Langkah 3: Konfirmasikan pemulihan Ingress
Pengontrol penyeimbang beban merekonsiliasi ulang Ingress pada lintasan berikutnya (biasanya dalam beberapa menit). Saat hibah berfungsi, secrets "oidc" is forbidden kesalahan sebelumnya berhenti muncul di Ingress dan penyeimbang beban berlanjut. Jika kesalahan berlanjut, periksa kembaliRole’s `namespace,resourceNames, dan RoleBinding subjeknya.
Menghapus hibah
penting
Simpan Role dan RoleBinding di tempatnya selama ALB Ingress digunakanalb.ingress.kubernetes.io/auth-type: oidc. Menghapusnya kembali merusak resolusi OIDC pada. Ingress
Jika Anda berhenti menggunakan OIDC padaIngress, hapus hibah:
kubectl delete rolebinding eks-managed-oidc-secret-reader -n monitoring kubectl delete role eks-managed-oidc-secret-reader -n monitoring
Sumber daya terkait
-
Berikan Kubernetes RBAC tambahan ke pengontrol yang dikelola Mode Otomatis EKS— Tinjauan konseptual
eks:managedkelompok dan bagaimana ruang lingkup hibah. -
Berikan akses kepada pengguna IAM ke Kubernetes dengan entri akses EKS— Entri akses Amazon EKS.
-
Menggunakan Otorisasi RBAC
dalam dokumentasi Kubernetes.