Gunakan halaman ini untuk memahami izin RBAC yang dipegang oleh komponen penayangan Knative untuk mempertahankan akses ke cluster. Izin ini diperlukan dan diaktifkan secara default di penayangan Knative. Jangan mencoba menonaktifkannya.
Komponen | Namespace | Akun Layanan |
---|---|---|
activator |
knative-serving | pengontrol |
autoscaler |
knative-serving | pengontrol |
controller |
knative-serving | pengontrol |
webhook |
knative-serving | pengontrol |
storage-version-migration-serving |
knative-serving | pengontrol |
webhook |
knative-serving | pengontrol |
cloud-run-operator |
cloud-run-system | operator cloud-run |
Perhatikan bahwa akun layanan cloud-run-operator
memiliki kumpulan izin yang sama seperti controller
. Operator adalah yang men-deploy semua komponen
penayangan Knative, termasuk pengontrol dan definisi resource kustom.
RBAC untuk akun layanan penayangan Knative
Gunakan definisi apiGroup
berikut untuk memahami izin kontrol akses
yang dimiliki setiap resource di penayangan Knative untuk akun layanan controller
dan cloud-run-operator
.
- apiGroups:
- ""
resources:
- pods
- secrets
verbs:
- deletecollection
- apiGroups:
- ""
resources:
- nodes
verbs:
- get
- watch
- list
- apiGroups:
- ""
resources:
- pods
- namespaces
- secrets
- configmaps
- endpoints
- services
- events
- serviceaccounts
verbs:
- get
- list
- create
- update
- delete
- patch
- watch
- apiGroups:
- ""
resources:
- endpoints/restricted
verbs:
- create
- apiGroups:
- ""
resources:
- namespaces/finalizers
verbs:
- update
- apiGroups:
- apps
resources:
- deployments
- deployments/finalizers
verbs:
- get
- list
- create
- update
- delete
- patch
- watch
- apiGroups:
- admissionregistration.k8s.io
resources:
- mutatingwebhookconfigurations
- validatingwebhookconfigurations
verbs:
- get
- list
- create
- update
- delete
- patch
- watch
- apiGroups:
- apiextensions.k8s.io
resources:
- customresourcedefinitions
- customresourcedefinitions/status
verbs:
- get
- list
- create
- update
- delete
- patch
- watch
- apiGroups:
- autoscaling
resources:
- horizontalpodautoscalers
verbs:
- get
- list
- create
- update
- delete
- patch
- watch
- apiGroups:
- coordination.k8s.io
resources:
- leases
verbs:
- get
- list
- create
- update
- delete
- patch
- watch
- apiGroups:
- admissionregistration.k8s.io
resources:
- validatingwebhookconfigurations
verbs:
- get
- list
- create
- update
- delete
- patch
- watch
Tabel berikut mencantumkan cara izin RBAC digunakan dalam penayangan Knative, dengan:
- view mencakup kata kerja: get, list, watch
- mengubah berisi kata kerja: membuat, memperbarui, menghapus, patch
Izin | Alasan |
---|---|
Dapat melihat semua secrets |
Webhook perlu membaca rahasia dari namespace knative-serving .
Pengontrol domainmapping harus membaca rahasia sertifikat yang dibuat oleh fitur TLS otomatis, lalu menyalinnya ke namespace gke-system . |
Dapat mengubah pods |
Pengontrol DomainMapping perlu membuat Pod yang digunakan untuk menyalurkan permintaan untuk memenuhi tantangan HTTP01. |
Dapat mengubah secrets |
Pengontrol domainmapping perlu membuat atau memperbarui rahasia sertifikat.
Webhook perlu membaca rahasia dari namespace knative-serving . |
Dapat mengubah configmaps |
Digunakan di fitur URL default. Pengontrol perlu memperbarui peta konfigurasi "config-domain" dalam namespace "knative-serving" untuk menambahkan URL `nip.io`. |
Dapat mengubah endpoints |
Pengontrol layanan serverless perlu membuat, memperbarui, atau menghapus endpoint. Pengontrol rute perlu membuat, memperbarui, atau menghapus endpoint. |
Dapat mengubah services |
Pengontrol rute perlu membuat, memperbarui, atau menghapus layanan. Pengontrol serverless perlu membuat, memperbarui, atau menghapus layanan. Pengontrol domainmapping perlu membuat layanan untuk melayani permintaan tantangan HTTP01. |
Dapat mengubah events |
Pengontrol penayangan Knative membuat dan memunculkan peristiwa untuk resource yang dikelola oleh Knative. |
Dapat mengubah serviceaccounts |
Penyajian Knative perlu membaca akun layanan secara tidak langsung. |
Dapat mengubah endpoints/restricted |
Penayangan Knative perlu membuat endpoint saat RestrictedEndpointsAdmission diaktifkan. |
Dapat mengubah deployments |
Pengontrol revisi perlu membuat atau mengupdate deployment untuk layanan Knative. |
Dapat mengubah mutatingwebhookconfiguration |
Webhook Knative menambahkan caBundle ke konfigurasi hookweb yang berubah yang dimiliki oleh Knative. |
Dapat mengubah validatingwebhookconfiguration |
Webhook Knative menambahkan caBundle ke konfigurasi validasiwebhook yang dimiliki oleh Knative. |
Dapat mengubah
customresourcedifinitions customresourcedefinitions/status |
Tugas pasca-penginstalan Knative perlu mengupgrade CRD terkait Knative ke versi v1. |
Dapat mengubah horizontalpodautoscalers |
Knative mendukung penskalaan otomatis berdasarkan HPA. |
Dapat mengubah namespace/finalizer |
Penyajian Knative perlu menetapkan ownerreference ke namespace penayangan Knative. |