Kf menyediakan kumpulan peran Kubernetes yang memungkinkan beberapa tim berbagi cluster Kf. Halaman ini menjelaskan peran dan praktik terbaik yang harus diikuti saat menggunakannya.
Kapan harus menggunakan peran Kf
Peran Kf memungkinkan beberapa tim berbagi cluster Kubernetes dengan Kf yang diinstal. Peran ini memberikan akses ke setiap Ruang Kf.
Gunakan peran Kf untuk berbagi akses ke cluster jika hal berikut benar:
- Cluster ini digunakan oleh tim tepercaya.
- Workload di cluster memiliki asumsi yang sama tentang tingkat keamanan yang disediakan oleh lingkungan.
- Cluster ada di project Google Cloud yang dikontrol ketat.
Peran kf tidak akan:
- Lindungi cluster Anda dari developer atau workload yang tidak tepercaya. Lihat model tanggung jawab bersama GKE untuk mengetahui informasi selengkapnya.
- Memberikan isolasi untuk workload Anda. Lihat panduan untuk meningkatkan keamanan cluster untuk mengetahui informasi selengkapnya.
- Mencegah peran Kubernetes tambahan ditentukan yang berinteraksi dengan Kf.
- Cegah akses dari administrator yang memiliki akses ke project atau cluster Google Cloud.
Peran kf
Bagian berikut menjelaskan Peran RBAC Kubernetes yang disediakan oleh Kf dan cara berinteraksi dengan IAM Google Kubernetes Engine (GKE).
Peran yang telah ditetapkan
Kf menyediakan beberapa peran Kubernetes yang telah ditentukan sebelumnya untuk membantu Anda memberikan akses ke berbagai subjek yang menjalankan peran yang berbeda. Setiap peran standar dapat terikat dengan subjek dalam Namespace Kubernetes yang dikelola oleh Ruang Kf.
Jika subjek terikat dengan peran dalam Namespace Kubernetes, aksesnya akan dibatasi untuk objek yang ada di Namespace yang cocok dengan pemberian yang tercantum dalam peran. Di Kf, beberapa resource ditentukan pada cakupan cluster. Kf memantau perubahan pada subjek di Namespace dan memberikan peran tambahan yang terbatas pada cakupan cluster.
Peran | Judul | Deskripsi | Cakupan |
---|---|---|---|
space-auditor |
Auditor Ruang | Mengizinkan akses hanya baca ke Ruang. | Spasi |
space-developer |
Developer Ruang | Memungkinkan developer aplikasi men-deploy dan mengelola aplikasi dalam Ruang. | Spasi |
space-manager |
Pengelola Ruang | Mengizinkan administrasi dan kemampuan untuk mengelola auditor, developer, dan pengelola di Ruang. | Spasi |
SPACE_NAME-manager |
Pengelola Ruang Dinamis | Memberikan akses tulis ke satu objek Ruang, yang secara otomatis diberikan kepada semua subjek dengan peran space-manager dalam Ruang yang dinamai. |
Cluster |
kf-cluster-reader |
Cluster Reader | Mengizinkan akses hanya baca ke objek Kf cakupan cluster, yang otomatis diberikan ke semua space-auditor , space-developer , dan space-manager . |
Cluster |
Informasi tentang aturan kebijakan yang membentuk setiap peran standar dapat ditemukan di dokumentasi referensi peran Kf.
Peran IAM
Peran Kf memberikan kontrol akses untuk objek dalam cluster Kubernetes. Subjek juga harus diberi peran IAM untuk melakukan autentikasi ke cluster:
Administrator platform harus diberi peran IAM
roles/container.admin
. Hal ini akan memungkinkan mereka menginstal, mengupgrade, dan menghapus Kf serta membuat dan menghapus objek Kf cakupan cluster seperti Spaces atau ClusterServiceBrokers.Pengguna akhir kf harus diberi peran IAM
roles/container.viewer
. Peran ini akan memungkinkan mereka melakukan autentikasi ke cluster dengan izin terbatas yang dapat diperluas menggunakan peran Kf.
IAM menawarkan Peran bawaan tambahan untuk GKE guna mengatasi kasus penggunaan lanjutan:
Role | Title | Description | Lowest resource |
---|---|---|---|
roles/ |
Kubernetes Engine Admin |
Provides access to full management of clusters and their Kubernetes API objects.
To set a service account on nodes, you must also have the Service Account User role
( |
|
roles/ |
Kubernetes Engine KMS Crypto Key User | Allow the Kubernetes Engine service agent in the cluster project to call KMS with user provided crypto keys to sign payloads. | |
roles/ |
Kubernetes Engine Cluster Admin |
Provides access to management of clusters.
To set a service account on nodes, you must also have the Service Account User role
( |
|
roles/ |
Kubernetes Engine Cluster Viewer |
Provides access to get and list GKE clusters. |
|
roles/ |
Kubernetes Engine Default Node Service Account | Least privilege role to use as the default service account for GKE Nodes. | |
roles/ |
Kubernetes Engine Developer |
Provides access to Kubernetes API objects inside clusters. |
|
roles/ |
Kubernetes Engine Host Service Agent User |
Allows the Kubernetes Engine service account in the host project to configure shared network resources for cluster management. Also gives access to inspect the firewall rules in the host project. |
|
roles/ |
Kubernetes Engine Viewer |
Provides read-only access to resources within GKE clusters, such as nodes, pods, and GKE API objects. |
|
Memetakan peran Cloud Foundry ke Kf
Cloud Foundry menyediakan peran yang mirip dengan peran bawaan Kf. Cloud Foundry memiliki dua jenis peran utama:
- Peran yang ditetapkan oleh subsistem User Account and Authentication (UAA) yang menyediakan cakupan OAuth terperinci yang berlaku untuk semua endpoint Cloud Foundry API.
- Peran yang diberikan dalam Cloud Controller API (CAPI) yang memberikan akses terperinci ke resource API.
Peran UAA
Peran yang disediakan oleh UAA paling mirip dengan peran IAM cakupan project:
- Pengguna Admin di Cloud Foundry dapat melakukan aktivitas administratif untuk semua
organisasi dan ruang Cloud Foundry. Peran ini paling mirip dengan
peran IAM
roles/container.admin
. - Pengguna Admin hanya baca di Cloud Foundry dapat mengakses semua endpoint Cloud Foundry API. Peran ini paling mirip dengan peran IAM
roles/container.admin
. - Pengguna auditor global di Cloud Foundry memiliki akses baca ke semua endpoint Cloud Foundry API kecuali secret. Tidak ada peran IAM yang setara, tetapi Anda dapat membuat peran khusus dengan izin yang serupa.
Peran Cloud Controller API
Peran yang disediakan oleh CAPI paling mirip dengan peran Kf yang diberikan dalam cluster
ke subjek yang memiliki peran IAM roles/container.viewer
di project pemilik:
- Auditor ruang di Cloud Foundry memiliki akses baca ke resource di ruang CF.
Peran ini paling mirip dengan peran Kf
space-auditor
. - Developer ruang di Cloud Foundry memiliki kemampuan untuk men-deploy dan mengelola aplikasi di ruang CF.
Peran ini paling mirip dengan peran Kf
space-developer
. - Pengelola ruang di Cloud Foundry dapat mengubah setelan untuk ruang CF dan
menetapkan pengguna ke peran.
Peran ini paling mirip dengan peran Kf
space-manager
.
Langkah selanjutnya
- Mempelajari lebih lanjut keamanan GKE di Ringkasan Keamanan.
- Memastikan pemahaman Anda tentang model tanggung jawab bersama GKE.
- Mempelajari lebih lanjut kontrol akses di GKE.
- Membaca ringkasan multi-tenancy GKE.
- Pelajari cara memperkuat cluster GKE.
- Pahami izin Kubernetes yang membentuk setiap peran bawaan Kf.