Aracılığıyla paylaş


Azure Kubernetes Service (AKS) için erişim ve kimlik seçenekleri

Kubernetes kümelerine erişimi çeşitli yollarla doğrulayabilir, yetkileyebilir, güvenlileştirebilir ve denetleyebilirsiniz:

  • Kubernetes rol tabanlı erişim denetimini (Kubernetes RBAC) kullanarak kullanıcılara, gruplara ve hizmet hesaplarına yalnızca ihtiyaç duydukları kaynaklara erişim vekleyebilirsiniz.
  • Azure Kubernetes Service (AKS) ile Microsoft Entra Id ve Azure RBAC kullanarak güvenlik ve izin yapısını daha da geliştirebilirsiniz.

Kubernetes RBAC ve AKS, küme erişiminizin güvenliğini sağlamanıza yardımcı olur ve geliştiricilere ve operatörlere yalnızca gereken en düşük izinleri sağlar.

Bu makalede, AKS'de kimlik doğrulaması yapmanıza ve izin atamanıza yardımcı olan temel kavramlar açıklanır.

Kubernetes RBAC

Kubernetes RBAC, kullanıcı eylemlerinin ayrıntılı filtrelemesini sağlar. Bu denetim mekanizmasıyla:

  • Çalışan uygulama iş yüklerinden kaynak oluşturma ve değiştirme veya günlükleri görüntüleme iznini kullanıcılara veya kullanıcı gruplarına atarsınız.
  • İzinleri tek bir ad alanına veya AKS kümesinin tamamına göre kapsam oluşturabilirsiniz.
  • İzinleri tanımlamak için roller oluşturur ve ardından bu rolleri rol bağlamaları olan kullanıcılara atarsınız.

Daha fazla bilgi için bkz . Kubernetes RBAC yetkilendirmesini kullanma.

Roller ve ClusterRoles

Roller

Kubernetes RBAC'ye sahip kullanıcılara izin atamadan önce kullanıcı izinlerini Rol olarak tanımlayacaksınız. Rolleri kullanarak bir ad alanı içinde izinler verin.

Not

Kubernetes rolleri izinleri verir; izinleri reddetmez.

Kümenin tamamında veya belirli bir ad alanı dışındaki küme kaynaklarına izin vermek için, bunun yerine ClusterRoles kullanabilirsiniz.

ClusterRoles

ClusterRole belirli bir ad alanı yerine tüm kümedeki kaynaklara izin verir ve uygular.

RoleBindings ve ClusterRoleBindings

Kaynaklara izin vermek için roller tanımladıktan sonra, bu Kubernetes RBAC izinlerini rolebinding ile atarsınız. AKS kümeniz Microsoft Entra Id ile tümleştirilirse, RoleBindings, Microsoft Entra kullanıcılarına küme içinde eylem gerçekleştirme izni verir. Kubernetes rol tabanlı erişim denetimini ve Microsoft Entra kimliklerini kullanarak küme kaynaklarına erişimi denetleme bölümüne bakın.

RoleBindings

RoleBindings kullanarak belirli bir ad alanı için kullanıcılara roller atayın. RoleBindings ile tek bir AKS kümesini mantıksal olarak ayırarak yalnızca kullanıcıların atanan ad alanında uygulama kaynaklarına erişmesini sağlayabilirsiniz.

Rolleri kümenin tamamında veya belirli bir ad alanının dışındaki küme kaynaklarına bağlamak için ClusterRoleBindings kullanırsınız.

ClusterRoleBinding

ClusterRoleBinding ile, rolleri kullanıcılara bağlar ve belirli bir ad alanı yerine tüm kümedeki kaynaklara uygularsınız. Bu yaklaşım, yöneticilere veya destek mühendislerine AKS kümesindeki tüm kaynaklara erişim vermenizi sağlar.

Not

Microsoft/AKS, yerleşik bir Kubernetes rolü ve yerleşik rol aks-service bağlaması aks-service-rolebindingaltında kullanıcı onayıyla tüm küme eylemlerini gerçekleştirir.

Bu rol AKS'nin küme sorunlarını gidermesine ve tanılamasına olanak tanır, ancak izinleri değiştiremez, rol veya rol bağlamaları ya da diğer yüksek ayrıcalıklı eylemler oluşturamaz. Rol erişimi yalnızca tam zamanında (JIT) erişime sahip etkin destek biletleri altında etkinleştirilir. AKS destek ilkeleri hakkında daha fazla bilgi edinin.

Kubernetes hizmet hesapları

Hizmet hesapları , Kubernetes'teki birincil kullanıcı türlerinden biridir. Kubernetes API'sinde hizmet hesapları bulunur ve yönetilebilir. Hizmet hesabı kimlik bilgileri Kubernetes gizli dizileri olarak depolanır ve yetkili podlar tarafından API Server ile iletişim kurmak için kullanılmasına olanak sağlar. Çoğu API isteği, bir hizmet hesabı veya normal bir kullanıcı hesabı için kimlik doğrulama belirteci sağlar.

Normal kullanıcı hesapları, yalnızca hizmetler ve işlemler için değil, insan yöneticiler veya geliştiriciler için daha geleneksel erişim sağlar. Kubernetes normal kullanıcı hesaplarını ve parolalarını depolamak için bir kimlik yönetimi çözümü sağlamasa da, dış kimlik çözümlerini Kubernetes ile tümleştirebilirsiniz. AKS kümeleri için bu tümleşik kimlik çözümü Microsoft Entra ID'dir.

Kubernetes'teki kimlik seçenekleri hakkında daha fazla bilgi için bkz . Kubernetes kimlik doğrulaması.

Azure rol tabanlı erişim denetimi

Azure rol tabanlı erişim denetimi (RBAC), Azure kaynakları için ayrıntılı erişim yönetimi sağlayan, Azure Resource Manager üzerinde oluşturulmuş bir yetkilendirme sistemidir.

RBAC sistemi Açıklama
Kubernetes RBAC AKS kümenizdeki Kubernetes kaynakları üzerinde çalışacak şekilde tasarlanmıştır.
Azure RBAC Azure aboneliğinizdeki kaynaklar üzerinde çalışacak şekilde tasarlanmıştır.

Azure RBAC ile, uygulanacak izinleri özetleyen bir rol tanımı oluşturursunuz. Ardından, belirli bir kapsam için rol ataması aracılığıyla bu rol tanımını bir kullanıcı veya grup atarsınız. Kapsam tek bir kaynak, kaynak grubu veya abonelik genelinde olabilir.

Daha fazla bilgi için bkz. Azure rol tabanlı erişim denetimi (Azure RBAC) nedir?

AKS kümesini tam olarak çalıştırmak için gereken iki erişim düzeyi vardır:

AKS kaynağına erişimi yetkilendirmek için Azure RBAC

Azure RBAC ile kullanıcılarınıza (veya kimliklerinize) bir veya daha fazla abonelikte AKS kaynaklarına ayrıntılı erişim sağlayabilirsiniz. Örneğin, kümenizi ölçeklendirmek ve yükseltmek için Azure Kubernetes Service Katkıda Bulunanı rolünü kullanabilirsiniz. Bu arada, Azure Kubernetes Service Cluster Admin rolüne sahip başka bir kullanıcının yalnızca Yönetici'yi kubeconfigçekme izni vardır.

AKS'de Kubernetes yapılandırma dosyasına erişimi tanımlamak için Azure RBAC kullanın.

Kubernetes için Azure RBAC Yetkilendirmesi

Azure RBAC tümleştirmesiyle AKS, Azure rol tanımı ve rol atamalarını kullanarak Microsoft Entra tümleşik Kubernetes kümesi kaynak izinlerini ve atamalarını yönetebilmeniz için bir Kubernetes Yetkilendirme web kancası sunucusu kullanır.

Kubernetes için Azure RBAC yetkilendirme akışı

Yukarıdaki diyagramda gösterildiği gibi, Azure RBAC tümleştirmesi kullanılırken Kubernetes API'sine yapılan tüm istekler Microsoft Entra tümleştirmesi bölümünde açıklandığı gibi aynı kimlik doğrulama akışını izler.

İstekte bulunan kimlik Microsoft Entra Id'de mevcutsa Azure, isteği yetkilendirmek için Kubernetes RBAC ile birlikte çalışacaktır. Kimlik Microsoft Entra Id (kubernetes hizmet hesabı) dışındaysa, yetkilendirme normal Kubernetes RBAC'ye ertelenir.

Bu senaryoda, Tıpkı Kubernetes rollerinde olduğu gibi kullanıcılara yerleşik roller atamak veya özel roller oluşturmak için Azure RBAC mekanizmalarını ve API'lerini kullanırsınız.

Bu özellik sayesinde kullanıcılara abonelikler arasında AKS kaynağı için izin vermekle kalmaz, aynı zamanda Kubernetes API erişimini denetleyen bu kümelerin her birinin içindeki rolü ve izinleri de yapılandırmış olursunuz. Örneğin, rolü abonelik kapsamında verebilirsiniz Azure Kubernetes Service RBAC Reader . Rol alıcısı, tüm kümelerdeki tüm Kubernetes nesnelerini değiştirmeden listeleyip alabilir.

Önemli

Bu özelliği kullanmadan önce Kubernetes için Azure RBAC yetkilendirmesini etkinleştirmeniz gerekir. Daha fazla ayrıntı ve adım adım yönergeler için Kubernetes için Azure RBAC'yi kullanma Yetkilendirme nasıl yapılır kılavuzumuzu izleyin.

Yerleşik roller

AKS aşağıdaki dört yerleşik rolü sağlar. Bunlar, CRD'leri destekleme gibi birkaç farklılığı olan Kubernetes yerleşik rollerine benzer. Her Azure yerleşik rolünün izin verdiği eylemlerin tam listesine bakın.

Rol Açıklama
Azure Kubernetes Service RBAC Okuyucusu Ad alanında çoğu nesneyi görmek için salt okunur erişime izin verir.
Rollerin veya rol bağlamalarının görüntülenmesine izin vermez.
görüntülemeye Secretsizin vermez. İçeriğin okunmasıSecrets, ad alanında herhangi bir ServiceAccount api erişimine ServiceAccount izin veren ad alanında (ayrıcalık yükseltme biçimi) kimlik bilgilerine erişim sağlar.
Azure Kubernetes Service RBAC Yazıcısı Ad alanı içindeki çoğu nesneye okuma/yazma erişimine izin verir.
Rollerin veya rol bağlamalarının görüntülenmesine veya değiştirilmesine izin vermez.
Podlara ad alanında herhangi bir ServiceAccount olarak erişmeye Secrets ve çalıştırmaya izin verir, böylece ad alanında herhangi bir ServiceAccount'ın API erişim düzeylerini elde etmek için kullanılabilir.
Azure Kubernetes Service RBAC Yöneticisi Ad alanı içinde verilmesi amaçlanan yönetici erişimine izin verir.
Ad alanı içinde rol ve rol bağlamaları oluşturma özelliği de dahil olmak üzere bir ad alanında (veya küme kapsamındaki) çoğu kaynağa okuma/yazma erişimi sağlar.
Kaynak kotasına veya ad alanına yazma erişimine izin vermez.
Azure Kubernetes Service RBAC Kümesi Yöneticisi Süper kullanıcı erişiminin herhangi bir kaynak üzerinde herhangi bir eylem gerçekleştirmesine izin verir.
Kümedeki ve tüm ad alanlarındaki her kaynak üzerinde tam denetim sağlar.

Microsoft Entra tümleştirmesi

Microsoft Entra tümleştirmesi ile AKS kümesi güvenliğinizi geliştirin. Onlarca yıllık kurumsal kimlik yönetimi üzerine kurulan Microsoft Entra ID, çekirdek dizin hizmetlerini, uygulama erişim yönetimini ve kimlik korumasını birleştiren çok kiracılı, bulut tabanlı bir dizin ve kimlik yönetimi hizmetidir. Microsoft Entra Id ile şirket içi kimlikleri AKS kümeleriyle tümleştirerek hesap yönetimi ve güvenliği için tek bir kaynak sağlayabilirsiniz.

AKS kümeleriyle Microsoft Entra tümleştirmesi

Microsoft Entra tümleşik AKS kümeleri ile kullanıcılara veya gruplara bir ad alanı içindeki veya küme genelindeki Kubernetes kaynaklarına erişim vekleyebilirsiniz.

  1. Bir kubectl yapılandırma bağlamı elde etmek için kullanıcı az aks get-credentials komutunu çalıştırır.
  2. Bir kullanıcı ile kubectlAKS kümesiyle etkileşime geçtiğinde, kullanıcıdan Microsoft Entra kimlik bilgileriyle oturum açması istenir.

Bu yaklaşım, kullanıcı hesabı yönetimi ve parola kimlik bilgileri için tek bir kaynak sağlar. Kullanıcı kaynaklara yalnızca küme yöneticisi tarafından tanımlanan şekilde erişebilir.

Microsoft Entra kimlik doğrulaması, OpenID Connect ile AKS kümelerine sağlanır. OpenID Connect, OAuth 2.0 protokolünün üzerine kurulmuş bir kimlik katmanıdır. OpenID Connect hakkında daha fazla bilgi için OpenID Connect belgelerine bakın. Kimlik doğrulama belirteçlerini doğrulamak için Kubernetes kümesinin içinden Web Kancası Belirteci Kimlik Doğrulaması kullanılır. Web kancası belirteci kimlik doğrulaması AKS kümesinin bir parçası olarak yapılandırılır ve yönetilir.

Web kancası ve API sunucusu

Web kancası ve API sunucusu kimlik doğrulama akışı

Yukarıdaki grafikte gösterildiği gibi, API sunucusu AKS web kancası sunucusunu çağırır ve aşağıdaki adımları gerçekleştirir:

  1. kubectlKullanıcıların OAuth 2.0 cihaz yetkilendirmesi verme akışıyla oturum açması için Microsoft Entra istemci uygulamasını kullanır.
  2. Microsoft Entra ID bir access_token, id_token ve refresh_token sağlar.
  3. Kullanıcı, içinden kubeconfigbir access_token ile isteğinde kubectl bulunur.
  4. kubectl access_token API Server'a gönderir.
  5. API Sunucusu, doğrulama gerçekleştirmek için Auth WebHook Sunucusu ile yapılandırılır.
  6. Kimlik doğrulama web kancası sunucusu, Microsoft Entra ortak imzalama anahtarını denetleyerek JSON Web Belirteci imzasının geçerli olduğunu onaylar.
  7. Sunucu uygulaması, MS Graph API'sinden oturum açmış kullanıcının grup üyeliklerini sorgulamak için kullanıcı tarafından sağlanan kimlik bilgilerini kullanır.
  8. Erişim belirtecinin kullanıcı asıl adı (UPN) talebi ve nesne kimliğine göre kullanıcının grup üyeliği gibi kullanıcı bilgileriyle API Sunucusuna bir yanıt gönderilir.
  9. API, Kubernetes Rolü/RoleBinding'i temel alan bir yetkilendirme kararı gerçekleştirir.
  10. Yetkilendirildikten sonra API sunucusu öğesine kubectlbir yanıt döndürür.
  11. kubectl kullanıcıya geri bildirim sağlar.

AKS tarafından yönetilen Microsoft Entra tümleştirmesi nasıl yapılır kılavuzumuzla AKS'yi Microsoft Entra ID ile tümleştirmeyi öğrenin.

AKS hizmeti izinleri

Küme oluştururken AKS, kullanıcı adına kümeyi oluşturmak ve çalıştırmak için ihtiyaç duyduğu kaynakları (VM'ler ve NIC'ler gibi) oluşturur veya değiştirir. Bu kimlik, küme oluşturma sırasında oluşturulan kümenin kimlik izninden farklıdır.

Küme izinlerini oluşturma ve çalıştırma kimliği

Kümeyi oluşturan ve çalıştıran kimlik tarafından aşağıdaki izinler gereklidir.

İzin Nedeni
Microsoft.Compute/diskEncryptionSets/read Disk şifreleme kümesi kimliğini okumak için gereklidir.
Microsoft.Compute/proximityPlacementGroups/write Yakınlık yerleştirme gruplarını güncelleştirmek için gereklidir.
Microsoft.Network/applicationGateways/read
Microsoft.Network/applicationGateways/write
Microsoft.Network/virtualNetworks/subnets/join/action
Uygulama ağ geçitlerini yapılandırmak ve alt ağa katılmak için gereklidir.
Microsoft.Network/virtualNetworks/subnets/join/action Özel bir sanal ağ kullanılırken alt ağ için Ağ Güvenlik Grubu'nun yapılandırılması gerekir.
Microsoft.Network/publicIPAddresses/join/action
Microsoft.Network/publicIPPrefixes/join/action
Standart Load Balancer giden genel IP'leri yapılandırmak için gereklidir.
Microsoft.OperationalInsights/workspaces/sharedkeys/read
Microsoft.OperationalInsights/workspaces/read
Microsoft.OperationsManagement/solutions/write
Microsoft.OperationsManagement/solutions/read
Microsoft.ManagedIdentity/userAssignedIdentities/assign/action
Log Analytics çalışma alanlarını ve kapsayıcılar için Azure izlemeyi oluşturmak ve güncelleştirmek için gereklidir.
Microsoft.Network/virtualNetworks/joinLoadBalancer/action IP tabanlı Load Balancer Arka Uç Havuzlarını yapılandırmak için gereklidir.

AKS kümesi kimlik izinleri

Aşağıdaki izinler, AKS kümesi kimliği tarafından oluşturulur ve AKS kümesiyle ilişkilendirilir. Her izin aşağıdaki nedenlerle kullanılır:

İzin Nedeni
Microsoft.ContainerService/managedClusters/*
Kullanıcı oluşturmak ve kümeyi çalıştırmak için gereklidir
Microsoft.Network/loadBalancers/delete
Microsoft.Network/loadBalancers/read
Microsoft.Network/loadBalancers/write
LoadBalancer hizmetinin yük dengeleyicisini yapılandırmak için gereklidir.
Microsoft.Network/publicIPAddresses/delete
Microsoft.Network/publicIPAddresses/read
Microsoft.Network/publicIPAddresses/write
LoadBalancer hizmetinin genel IP'lerini bulmak ve yapılandırmak için gereklidir.
Microsoft.Network/publicIPAddresses/join/action LoadBalancer hizmeti için genel IP'leri yapılandırmak için gereklidir.
Microsoft.Network/networkSecurityGroups/read
Microsoft.Network/networkSecurityGroups/write
LoadBalancer hizmetinin güvenlik kurallarını oluşturmak veya silmek için gereklidir.
Microsoft.Compute/disks/delete
Microsoft.Compute/disks/read
Microsoft.Compute/disks/write
Microsoft.Compute/locations/DiskOperations/read
AzureDisks'i yapılandırmak için gereklidir.
Microsoft.Storage/storageAccounts/delete
Microsoft.Storage/storageAccounts/listKeys/action
Microsoft.Storage/storageAccounts/read
Microsoft.Storage/storageAccounts/write
Microsoft.Storage/operations/read
AzureFile veya AzureDisk için depolama hesaplarını yapılandırmak için gereklidir.
Microsoft.Network/routeTables/read
Microsoft.Network/routeTables/routes/delete
Microsoft.Network/routeTables/routes/read
Microsoft.Network/routeTables/routes/write
Microsoft.Network/routeTables/write
Düğümler için yol tablolarını ve yollarını yapılandırmak için gereklidir.
Microsoft.Compute/virtualMachines/read Bölgeler, hata etki alanı, boyut ve veri diskleri gibi bir VMAS'daki sanal makinelerin bilgilerini bulmak için gereklidir.
Microsoft.Compute/virtualMachines/write AzureDisk'leri VMAS'deki bir sanal makineye eklemek için gereklidir.
Microsoft.Compute/virtualMachineScaleSets/read
Microsoft.Compute/virtualMachineScaleSets/virtualMachines/read
Microsoft.Compute/virtualMachineScaleSets/virtualmachines/instanceView/read
Alanlar, hata etki alanı, boyut ve veri diskleri gibi bir sanal makine ölçek kümesindeki sanal makinelerin bilgilerini bulmak için gereklidir.
Microsoft.Network/networkInterfaces/write VMAS'daki bir sanal makineyi yük dengeleyici arka uç adres havuzuna eklemek için gereklidir.
Microsoft.Compute/virtualMachineScaleSets/write Yük dengeleyici arka uç adres havuzlarına sanal makine ölçek kümesi eklemek ve sanal makine ölçek kümesindeki düğümlerin ölçeğini genişletmek için gereklidir.
Microsoft.Compute/virtualMachineScaleSets/delete Bir sanal makine ölçek kümesini yük dengeleyici arka uç adres havuzlarına silmek ve sanal makine ölçek kümesindeki düğümlerin ölçeğini küçültmek için gereklidir.
Microsoft.Compute/virtualMachineScaleSets/virtualmachines/write AzureDisk'leri eklemek ve bir sanal makine ölçek kümesinden yük dengeleyiciye bir sanal makine eklemek için gereklidir.
Microsoft.Network/networkInterfaces/read VMAS içindeki sanal makineler için iç IP'leri ve yük dengeleyici arka uç adres havuzlarını aramak için gereklidir.
Microsoft.Compute/virtualMachineScaleSets/virtualMachines/networkInterfaces/read Bir sanal makine ölçek kümesindeki bir sanal makine için iç IP'leri ve yük dengeleyici arka uç adres havuzlarını aramak için gereklidir.
Microsoft.Compute/virtualMachineScaleSets/virtualMachines/networkInterfaces/ipconfigurations/publicipaddresses/read Sanal makine ölçek kümesindeki bir sanal makinenin genel IP'lerini bulmak için gereklidir.
Microsoft.Network/virtualNetworks/read
Microsoft.Network/virtualNetworks/subnets/read
Başka bir kaynak grubundaki iç yük dengeleyici için bir alt ağ olup olmadığını doğrulamak için gereklidir.
Microsoft.Compute/snapshots/delete
Microsoft.Compute/snapshots/read
Microsoft.Compute/snapshots/write
AzureDisk için anlık görüntüleri yapılandırmak için gereklidir.
Microsoft.Compute/locations/vmSizes/read
Microsoft.Compute/locations/operations/read
AzureDisk birim sınırlarını bulmak için sanal makine boyutlarını bulmak için gereklidir.

Ek küme kimliği izinleri

Belirli özniteliklere sahip bir küme oluştururken, küme kimliği için aşağıdaki ek izinlere ihtiyacınız olacaktır. Bu izinler otomatik olarak atanmadığından, oluşturulduktan sonra bunları küme kimliğine eklemeniz gerekir.

İzin Nedeni
Microsoft.Network/networkSecurityGroups/write
Microsoft.Network/networkSecurityGroups/read
Başka bir kaynak grubunda ağ güvenlik grubu kullanılıyorsa gereklidir. LoadBalancer hizmetinin güvenlik kurallarını yapılandırmak için gereklidir.
Microsoft.Network/virtualNetworks/subnets/read
Microsoft.Network/virtualNetworks/subnets/join/action
Özel VNET gibi başka bir kaynak grubunda alt ağ kullanılıyorsa gereklidir.
Microsoft.Network/routeTables/routes/read
Microsoft.Network/routeTables/routes/write
Özel yönlendirme tablosuna sahip özel bir VNET gibi başka bir kaynak grubundaki yol tablosuyla ilişkilendirilmiş bir alt ağ kullanılıyorsa gereklidir. Diğer kaynak grubundaki alt ağ için zaten bir alt ağ olup olmadığını doğrulamak için gereklidir.
Microsoft.Network/virtualNetworks/subnets/read Başka bir kaynak grubunda iç yük dengeleyici kullanılıyorsa gereklidir. Kaynak grubundaki iç yük dengeleyici için bir alt ağın zaten mevcut olup olmadığını doğrulamak için gereklidir.
Microsoft.Network/privatednszones/* Özel bir privateDNSZone gibi başka bir kaynak grubunda özel dns bölgesi kullanılıyorsa gereklidir.

AKS Düğümü Erişimi

Varsayılan olarak AKS için Düğüm Erişimi gerekli değildir. Belirli bir bileşenden yararlanılırsa düğüm için aşağıdaki erişim gereklidir.

Access Nedeni
kubelet MSI'ye ACR erişimi vermek için gereklidir.
http app routing "Rastgele ad".aksapp.io yazma izni için gereklidir.
container insights Log Analytics çalışma alanına izin vermek için gereklidir.

Özet

Microsoft Entra tümleştirmesi etkinleştirildiğinde kullanıcıların Kubernetes'de nasıl kimlik doğrulaması yapabileceklerini gösteren hızlı bir özet için tabloyu görüntüleyin. Her durumda kullanıcının komut dizisi şöyledir:

  1. Azure'da kimlik doğrulaması yapmak için komutunu çalıştırın az login .

  2. kümenin kimlik bilgilerini içine .kube/configindirmek için komutunu çalıştırınaz aks get-credentials.

  3. Komutları çalıştırın kubectl .

    • İlk komut, aşağıdaki tabloda açıklandığı gibi kümede kimlik doğrulaması yapmak için tarayıcı tabanlı kimlik doğrulamasını tetikleyebilir.

Azure portalında şunları bulabilirsiniz:

  • İkinci sütunda başvuruda bulunılan Rol Verme (Azure RBAC rol verme), Erişim Denetimi sekmesinde gösterilir.
  • Küme Yöneticisi Microsoft Entra grubu Yapılandırma sekmesinde gösterilir.
    • Azure CLI'da parametre adıyla --aad-admin-group-object-ids da bulunur.
Açıklama Rol verme gerekli Küme yöneticisi Microsoft Entra grupları ne zaman kullanılmalı
İstemci sertifikası kullanarak eski yönetici oturum açma bilgileri Azure Kubernetes Hizmet Kümesi Yönetici Rolü. Bu rol, eski (Microsoft Entra olmayan) bir küme yönetici sertifikasını kullanıcının .kube/configiçine indiren bayrağıyla --admin birlikte kullanılmasına izin veriraz aks get-credentials. "Azure Kubernetes Service Küme Yöneticisi Rolü" tek amacı budur. yok Kümenize erişimi olan geçerli bir Microsoft Entra grubuna erişiminiz olmaması nedeniyle kalıcı olarak engellenirseniz.
El ile (Küme)RoleBindings ile Microsoft Entra Kimliği Azure Kubernetes Service Kümesi Kullanıcı Rolü. "Kullanıcı" rolü az aks get-credentials bayrağı olmadan --admin kullanılabilir. (Bu, "Azure Kubernetes Hizmet Kümesi Kullanıcı Rolü" öğesinin tek amacıdır.) Sonuç olarak, Microsoft Entra ID özellikli bir kümede, tarafından ilk kez kullanıldığında kubectltarayıcı tabanlı kimlik doğrulamasını tetikleyen içine boş bir girdi .kube/config indirilir. Kullanıcı bu grupların hiçbirinde değil. Kullanıcı herhangi bir Küme Yöneticisi grubunda olmadığından, hakları küme yöneticileri tarafından ayarlanan tüm RoleBinding'ler veya ClusterRoleBinding'ler tarafından tamamen denetlenecektir. (Küme)RoleBindings , Microsoft Entra kullanıcılarını veya Microsoft Entra gruplarını olarak subjectsgösterir. Böyle bir bağlama ayarlanmamışsa, kullanıcı herhangi bir kubectl komutu çıkaramaz. Ayrıntılı erişim denetimi istiyorsanız ve Kubernetes Yetkilendirmesi için Azure RBAC kullanmıyorsanız. Bağlamaları ayarlayan kullanıcının bu tabloda listelenen diğer yöntemlerden biri tarafından oturum açması gerektiğini unutmayın.
Yönetici grubunun üyesine göre Microsoft Entra Id Yukarıdakiyle aynı Kullanıcı, burada listelenen gruplardan birinin üyesidir. AKS, listelenen tüm grupları Kubernetes rolüne cluster-admin bağlayan bir ClusterRoleBinding'i otomatik olarak oluşturur. Bu nedenle, bu gruplardaki kullanıcılar tüm kubectl komutları olarak cluster-adminçalıştırabilir. Kullanıcılara tam yönetici hakları vermek istiyorsanız ve Kubernetes için Azure RBAC yetkilendirmesini kullanmıyorsanız .
Kubernetes Için Azure RBAC Yetkilendirmesi ile Microsoft Entra Id İki rol:
İlk olarak, Azure Kubernetes Service Kümesi Kullanıcı Rolü (yukarıda gösterildiği gibi).
İkincisi, "Azure Kubernetes Service RBAC..." rollerini veya kendi özel alternatifinizi seçin.
Kubernetes için Azure RBAC Yetkilendirmesi etkinleştirildiğinde Yapılandırma sekmesindeki yönetici rolleri alanı önemsizdir. Kubernetes yetkilendirmesi için Azure RBAC kullanıyorsunuz. Bu yaklaşım, RoleBindings veya ClusterRoleBindings'i ayarlamanıza gerek kalmadan ayrıntılı denetim sağlar.

Sonraki adımlar

  • Microsoft Entra ID ve Kubernetes RBAC kullanmaya başlamak için bkz . Microsoft Entra Id'yi AKS ile tümleştirme.
  • İlişkili en iyi yöntemler için bkz . AKS'de kimlik doğrulaması ve yetkilendirme için en iyi yöntemler.
  • Kubernetes için Azure RBAC Yetkilendirmesi'ni kullanmaya başlamak için bkz . Azure Kubernetes Service (AKS) Kümesi içinde erişim yetkilendirmek için Azure RBAC kullanma.
  • Dosyanızın kubeconfig güvenliğini sağlamaya başlamak için bkz . Küme yapılandırma dosyasına erişimi sınırlama.
  • AKS'de yönetilen kimlikleri kullanmaya başlamak için bkz . AKS'de yönetilen kimlik kullanma.

Temel Kubernetes ve AKS kavramları hakkında daha fazla bilgi için aşağıdaki makalelere bakın: