Aracılığıyla paylaş


Azure rol tabanlı erişim denetimiyle Key Vault anahtarlarına, sertifikalarına ve gizli dizilerine erişim sağlama

Not

Key Vault kaynak sağlayıcısı iki kaynak türünü destekler: kasalar ve yönetilen HSM'ler. Bu makalede açıklanan erişim denetimi yalnızca kasalar için geçerlidir. Yönetilen HSM erişim denetimi hakkında daha fazla bilgi edinmek için bkz . Yönetilen HSM erişim denetimi.

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

Azure RBAC, kullanıcıların anahtarları, gizli dizileri ve sertifika izinlerini yönetmesine olanak tanır ve tüm anahtar kasalarında tüm izinleri yönetmek için tek bir yer sağlar.

Azure RBAC modeli, kullanıcıların farklı kapsam düzeylerinde izinler ayarlamasına olanak tanır: yönetim grubu, abonelik, kaynak grubu veya tek tek kaynaklar. Anahtar kasası için Azure RBAC, kullanıcıların tek tek anahtarlar, gizli bilgiler ve sertifikalar üzerinde ayrı izinlere sahip olmasını sağlar.

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

Key Vault erişim modeline genel bakış

Anahtar kasasına erişim iki arabirim aracılığıyla denetlenmektedir: kontrol mekanizması ve veri mekanizması.

Kontrol düzlemi, Key Vault'un kendisini yönettiğiniz yerdir. Bu düzlemdeki işlemler olarak Key Vault'ları oluşturma ve silme, Key Vault özelliklerini alma ve erişim ilkelerini güncelleştirme yer alır.

Veri düzlemi, bir anahtar kasasında depolanan verilerle çalıştığınız yerdir. Anahtarları, gizli dizileri ve sertifikaları ekleyebilir, silebilir ve değiştirebilirsiniz.

Her iki düzlemde de kimlik doğrulaması için Microsoft Entra Kimliği kullanılır. Yetkilendirme için kontrol düzlemi Azure rol tabanlı erişim denetimini (Azure RBAC) ve veri alanı "Key Vault erişim ilkesi" (eski) veya Key Vault veri alanı işlemleri için Azure RBAC kullanır.

Her iki düzlemde de anahtar kasasına erişmek için tüm arayanların (kullanıcılar veya uygulamalar) doğru kimlik doğrulaması ve yetkilendirmeye sahip olması gerekir. Kimlik doğrulaması, çağıranın kimliğini oluşturur. Yetkilendirme, çağıranın hangi işlemleri yürütebileceğini belirler.

Uygulamalar uç noktalar üzerinden düzlemlere erişmektedir. İki düzlemin erişim denetimleri bağımsız olarak çalışır. Bir uygulamaya anahtar kasasında anahtar kullanma erişimi vermek için Azure RBAC veya Key Vault erişim ilkesi kullanarak veri düzlemi erişimi verirsiniz. Kullanıcıya Key Vault'un özelliklerine ve etiketlerine okuma erişimi vermek, ancak verilere (anahtarlar, gizli bilgiler veya sertifikalar) erişim vermemek için, Azure RBAC ile denetim düzlemi üzerinden erişim verirsiniz.

Erişim düzlemi uç noktaları

Aşağıdaki tabloda denetim ve veri düzlemleri için uç noktalar gösterilmektedir.

Erişim düzlemi Erişim uç noktaları Operations Erişim denetimi mekanizması
Kontrol düzlemi Global:
management.azure.com:443

21Vianet tarafından sağlanan Microsoft Azure:
management.chinacloudapi.cn:443

Azure US Government:
management.usgovcloudapi.net:443
Anahtar kasaları oluşturma, okuma, güncelleştirme ve silme

Key Vault erişim ilkelerini ayarlama

Key Vault etiketlerini ayarlama
Azure RBAC
Veri düzlemi Global:
<vault-name.vault.azure.net:443>

21Vianet tarafından sağlanan Microsoft Azure:
<vault-name.vault.azure.cn:443>

Azure US Government:
<vault-name.vault.usgovcloudapi.net:443>
Anahtarlar: şifreleme, şifre çözme, anahtar sarmalama, anahtar açma, imzalama, doğrulama, alma, listeleme, oluşturma, güncelleme, içe aktarma, silme, kurtarma, yedekleme, geri yükleme, temizleme, döndürme, döndürme politikasını alma, döndürme politikasını ayarlama, serbest bırakma

Sertifikalar: kişileri yönet, verenkaynaklarını al, verenkaynaklarını listele, verenkaynaklarını ayarla, verenkaynaklarını sil, verenkaynaklarını yönet, al, listele, oluştur, içe aktar, güncelle, sil, kurtar, yedekle, geri yükle, temizle

Sırlar: alma, listeleme, ayarlama, silme, kurtarma, yedekleme, geri yükleme, temizleme
Key Vault erişim ilkesi (eski) veya Azure RBAC

Key Vault'a yönetici erişimini yönetme

Bir kaynak grubunda anahtar kasası oluşturduğunuzda, Microsoft Entra Id kullanarak erişimi yönetirsiniz. Kullanıcılara veya gruplara bir kaynak grubundaki anahtar kasalarını yönetme yetkisi verirsiniz. Uygun Azure rollerini atayarak belirli bir kapsam düzeyinde erişim verebilirsiniz. Kullanıcıya anahtar kasalarını yönetme erişimi vermek için, kullanıcıya belirli bir kapsamda önceden tanımlanmış Key Vault Contributor bir rol atarsınız. Aşağıdaki kapsam düzeyleri bir Azure rolüne atanabilir:

  • Abonelik: Abonelik düzeyinde atanan bir Azure rolü, bu abonelik içindeki tüm kaynak grupları ve kaynaklar için geçerlidir.
  • Kaynak grubu: Kaynak grubu düzeyinde atanan bir Azure rolü, bu kaynak grubundaki tüm kaynaklar için geçerlidir.
  • Belirli kaynak: Belirli bir kaynak için atanan azure rolü bu kaynak için geçerlidir. Bu durumda, kaynak belirli bir anahtar kasasıdır.

Önceden tanımlanmış birkaç rol vardır. Önceden tanımlanmış bir rol gereksinimlerinize uymuyorsa, kendi rolünüzü tanımlayabilirsiniz. Daha fazla bilgi için Azure RBAC: Yerleşik roller bölümüne bakın.

Önemli

Bir kullanıcının Contributor anahtar kasası denetim düzlemi için izinleri varsa, kullanıcı bir anahtar kasası erişim politikası ayarlayarak veri düzlemine erişim izni verebilir. Anahtar kasalarınıza kimlerin rol erişimi olduğunu Contributor sıkı bir şekilde denetlemeniz gerekir. Anahtar kasalarınıza, anahtarlarınıza, gizli dizilerinize ve sertifikalarınıza yalnızca yetkili kişilerin erişebildiğinden ve bunları yönetebildiğinden emin olun.

Bireysel anahtarlar, parolalar ve sertifikalar için rol atama en iyi uygulamaları

Önerimiz, anahtar kasası kapsamında roller atanarak, her ortam (Geliştirme, Üretim Öncesi ve Üretim) için uygulama başına bir kasa kullanmaktır.

Bireysel anahtarlar, gizli bilgiler ve sertifikalar üzerinde rol atamak önerilmez. Özel durumlar şunlardır:

  • Tek tek gizli diziler tek tek kullanıcı erişimi gerektirir; örneğin, kullanıcıların Azure Bastion kullanarak bir sanal makinede kimlik doğrulaması yapmak için SSH özel anahtarlarını okuması gerekir.
  • Bireysel gizli bilgiler birden çok uygulama arasında paylaşılmalıdır; örneğin, bir uygulamanın diğer bir uygulamanın verilerine erişmesi gerektiğinde.

Azure Key Vault yönetim yönergeleri hakkında daha fazla bilgi için bkz:

Key Vault veri düzlemi işlemleri için Azure yerleşik rolleri

Not

Rol Key Vault Contributor, yalnızca denetim düzlemi işlemleriyle anahtar kasalarını yönetmek içindir. Anahtarlara, gizli dizilere ve sertifikalara erişime izin vermez.

Yerleşik rol Açıklama Kimlik
Key Vault Yöneticisi Bir anahtar kasasında ve sertifikalar, anahtarlar ve gizli bilgiler de dahil olmak üzere içindeki tüm nesnelerde tüm veri düzlemi işlemlerini gerçekleştirin. Anahtar kasası kaynaklarını veya rol atamalarını yönetemez. Yalnızca 'Azure rol tabanlı erişim denetimi' izin modelini kullanan anahtar kasalarında çalışır. 00482a5a-887f-4fb3-b363-3b7fe8e74483
Key Vault Okuyucusu Anahtar kasalarının ve onların sertifikalarının, anahtarlarının ve gizli bilgilerinin meta verilerini okuyun. Gizli içerikler veya anahtar materyaller gibi hassas değerler okunamıyor. Yalnızca 'Azure rol tabanlı erişim denetimi' izin modelini kullanan anahtar kasalarında çalışır. 21090545-7ca7-4776-b22c-e363652d74d2
Key Vault Temizleme İşleci Geçici olarak silinen kasaların kalıcı olarak silinmesine izin verir. a68e7c17-0ab2-4c09-9a58-125dae29748c
Key Vault Sertifika Yetkilisi İzinleri yönetme dışında anahtar kasasının sertifikalarında herhangi bir eylem gerçekleştirin. Yalnızca 'Azure rol tabanlı erişim denetimi' izin modelini kullanan anahtar kasalarında çalışır. a4417e6f-fecd-4de8-b567-7b0420556985
Key Vault Sertifika Kullanıcısı Gizli kısmı ve anahtar bölümü de dahil olmak üzere tüm sertifika içeriğini okuyun. Yalnızca 'Azure rol tabanlı erişim denetimi' izin modelini kullanan anahtar kasalarında çalışır. db79e9a7-68ee-4b58-9aeb-b90e7c24fcba
Key Vault Şifreleme Yetkilisi İzinleri yönetme dışında anahtar kasasının anahtarları üzerinde herhangi bir eylem gerçekleştirin. Yalnızca 'Azure rol tabanlı erişim denetimi' izin modelini kullanan anahtar kasalarında çalışır. 14b46e9e-c2b7-41b4-b07b-48a6ebf60603
Key Vault Şifreleme Hizmeti Kullanıcısı Anahtarların meta verilerini okuyun ve şifreleme/şifre çözme işlemleri gerçekleştirin. Yalnızca 'Azure rol tabanlı erişim denetimi' izin modelini kullanan anahtar kasalarında çalışır. e147488a-f6f5-4113-8e2d-b22465e65bf6
Key Vault Kripto Kullanıcısı Anahtarları kullanarak şifreleme işlemleri gerçekleştirin. Yalnızca 'Azure rol tabanlı erişim denetimi' izin modelini kullanan anahtar kasalarında çalışır. 12338af0-0e69-4776-bea7-57ae8d297424
Key Vault Kripto Servisi Sürüm Kullanıcısı Azure Gizli Bilgi İşlem ve eşdeğer ortamlar için sürüm anahtarları. Yalnızca 'Azure rol tabanlı erişim denetimi' izin modelini kullanan anahtar kasalarında çalışır.
Key Vault Sırları Görevlisi İzinleri yönetmek dışında, anahtar kasasındaki gizli öğeler üzerinde herhangi bir işlem gerçekleştirin. Yalnızca 'Azure rol tabanlı erişim denetimi' izin modelini kullanan anahtar kasalarında çalışır. b86a8fe4-44ce-4948-aee5-eccb2c155cd7
Key Vault Sırlar Kullanıcısı Özel anahtara sahip bir sertifikanın gizli kısmı da dahil olmak üzere gizli içerikleri okuyun. Yalnızca 'Azure rol tabanlı erişim denetimi' izin modelini kullanan anahtar kasalarında çalışır. 4633458b-17de-408a-b874-0445c86b69e6

Azure yerleşik rol tanımları hakkında daha fazla bilgi için bkz . Azure yerleşik rolleri.

Yerleşik Key Vault veri düzlemi rol atamalarını yönetme

Yerleşik rol Açıklama Kimlik
Key Vault Veri Erişim Yöneticisi Azure Anahtar Kasası erişimini, Anahtar Kasası Yöneticisi, Anahtar Kasası Sertifika Yetkilisi, Anahtar Kasası Kripto Yetkilisi, Anahtar Kasası Kripto Hizmeti Şifreleme Kullanıcısı, Anahtar Kasası Kripto Kullanıcısı, Anahtar Kasası Okuyucusu, Anahtar Kasası Gizli Diziler Yetkilisi veya Anahtar Kasası Gizli Diziler Kullanıcısı rolleri için rol atamaları ekleyerek veya kaldırarak yönetin. Rol atamalarını kısıtlamak için bir ABAC koşulu içerir. 8b54135c-b56d-4d72-a534-26097cfdc8d8

Key Vault ile Azure RBAC gizli, anahtar ve sertifika izinlerini kullanma

Anahtar kasası için yeni Azure RBAC izin modeli, kasa erişim ilkesi izin modeline alternatif sağlar.

Önkoşullar

Bir Azure aboneliğiniz olmalıdır. Aksi takdirde başlamadan önce ücretsiz bir hesap oluşturabilirsiniz.

Rol atamalarını yönetmek için, yalnızca belirli Key Vault rollerini atamak veya kaldırmak için kısıtlı izinlere sahip Microsoft.Authorization/roleAssignments/write, Microsoft.Authorization/roleAssignments/delete veya Sahip gibi ve izinleriniz olmalıdır.

Key Vault'ta Azure RBAC izinlerini etkinleştirme

Not

İzin modelini değiştirmek için Sahip ve Kullanıcı Erişimi Yöneticisi rollerinin parçası olan sınırsız 'Microsoft.Authorization/roleAssignments/write' izni gerekir. İzin modelini değiştirmek için 'Hizmet Yöneticisi' ve 'Ortak Yönetici' gibi klasik abonelik yöneticisi rolleri veya kısıtlanmış 'Key Vault Veri Erişim Yöneticisi' kullanılamaz.

  1. Yeni Anahtar Kasası'nda Azure RBAC izinlerini etkinleştirin.

    Azure RBAC izinlerini etkinleştirme - yeni kasa

  2. Mevcut anahtar kasasında Azure RBAC izinlerini etkinleştirin:

    Azure RBAC izinlerini etkinleştirme - mevcut kasa

Önemli

Azure RBAC izin modelinin ayarlanması tüm erişim ilkeleri izinlerini geçersiz kılar. Eşdeğer Azure rolleri atanmadığında kesintilere neden olabilir.

Rol atama

Not

Betiklerde rol adı yerine benzersiz rol kimliğini kullanmanız önerilir. Bu nedenle, bir rolün adı değiştirildiğinde, betikleriniz çalışmaya devam eder. Bu belgedeki rol adı okunabilirlik için kullanılır.

Azure CLI kullanarak rol ataması oluşturmak için az role assignment komutunu kullanın:

az role assignment create --role {role-name-or-id} --assignee {assignee-upn}> --scope {scope}

Tüm ayrıntılar için bkz . Azure CLI kullanarak Azure rolleri atama.

Kaynak grubu kapsamı rol ataması

az role assignment create --role "Key Vault Reader" --assignee {i.e user@microsoft.com} --scope /subscriptions/{subscriptionid}/resourcegroups/{resource-group-name}

Tüm ayrıntılar için bkz . Azure CLI kullanarak Azure rolleri atama.

Yukarıdaki rol ataması, anahtar kasasındaki anahtar kasası nesnelerini listeleme olanağı sağlar.

Key Vault kapsamı rol ataması

az role assignment create --role "Key Vault Secrets Officer" --assignee {assignee-upn} --scope /subscriptions/{subscriptionid}/resourcegroups/{resource-group-name}/providers/Microsoft.KeyVault/vaults/{key-vault-name}

Tüm ayrıntılar için bkz . Azure CLI kullanarak Azure rolleri atama.

Gizli kapsam rol ataması

Not

Anahtar kasası, gizli, sertifika ve anahtar kapsamı rol atamaları, yalnızca tek tek anahtarlar, gizli bilgiler ve sertifika rol atamaları için en iyi yöntemler bölümünde belirtilen sınırlı senaryolarda, güvenlik en iyi uygulamaları ile uyumlu olacak şekilde kullanılmalıdır.

az role assignment create --role "Key Vault Secrets Officer" --assignee {i.e user@microsoft.com} --scope /subscriptions/{subscriptionid}/resourcegroups/{resource-group-name}/providers/Microsoft.KeyVault/vaults/{key-vault-name}/secrets/RBACSecret

Tüm ayrıntılar için bkz . Azure CLI kullanarak Azure rolleri atama.

Test edin ve doğrulayın

Not

Tarayıcılar önbelleğe alma kullanır ve rol atamaları kaldırıldıktan sonra sayfa yenilemesi gerekir. Rol atamalarının yenilenmesi için birkaç dakika izin ver

  1. Anahtar kasası düzeyinde "Key Vault Secrets Officer" rolü olmadan yeni bir gizli eklemeyi doğrulayın.

    1. Anahtar Kasası Erişim Denetimi (IAM) sekmesine gidin ve bu kaynak için "Anahtar Kasası Sırları Yetkilisi" rol atamasını kaldırın.

      Atamayı kaldırma - anahtar kasası

    2. Önceden oluşturulmuş gizliye gidin. Tüm gizli özellikleri görebilirsiniz.

      Erişimli gizli manzara

    3. Yeni gizli anahtar oluştur (Gizli Anahtarlar > +Oluştur/İçeri Aktar) şu hatayı göstermelidir:

      Yeni gizli oluştur

  2. "Gizli üzerinde 'Key Vault Gizli Yetkilisi' rolü olmadan gizli düzenlemeyi doğrulayın."

    1. Önceden oluşturulmuş gizli Erişim Kontrolü (IAM) sekmesine gidin ve bu kaynak için "Key Vault Gizli Yetkilisi" rol atamasını kaldırın.

    2. Önceden oluşturulmuş gizliye gidin. Gizli özellikleri görebilirsiniz.

      Erişim olmadan gizli görünüm

  3. Okuyucu rolü olmadan anahtar kasası düzeyinde okunan gizli bilgileri doğrulayın.

    1. Anahtar kasası kaynak grubunun Erişim Kontrolü (IAM) sekmesine gidin ve "Key Vault Okuyucusu" rol atamasını kaldırın.

    2. Anahtar kasasının Sırlar sekmesine gitmek şu hatayı göstermelidir:

      Gizli sekme - hata

Özel roller oluşturma

rol tanımı oluşturma komutu

az role definition create --role-definition '{ \
    "Name": "Backup Keys Operator", \
    "Description": "Perform key backup/restore operations", \
    "Actions": [], \
    "DataActions": [ \
        "Microsoft.KeyVault/vaults/keys/read ", \
        "Microsoft.KeyVault/vaults/keys/backup/action", \
        "Microsoft.KeyVault/vaults/keys/restore/action" \
    ], \
    "NotDataActions": [], \
    "AssignableScopes": ["/subscriptions/{subscriptionId}"] \
}'

Özel roller oluşturma hakkında daha fazla bilgi için bkz:

Özel Azure rolleri

Key Vault rol atamaları oluşturmak için yapay zekayı kullanma

GitHub Copilot, özel gereksinimlerinize göre Key Vault rol atamaları için doğru Azure CLI veya PowerShell komutlarını oluşturmanıza yardımcı olabilir.

I need to set up Azure RBAC for my Key Vault. Help me create the role assignment commands for the following scenario:
- Key vault name: my-app-keyvault
- Resource group: my-app-rg
- Subscription ID: <my-subscription-id>
- I need to grant a managed identity (client ID: <managed-identity-client-id>) the ability to read and write secrets, but not manage keys or certificates.
Provide both Azure CLI and PowerShell commands, and explain which built-in role is most appropriate for this least-privilege scenario.

GitHub Copilot yapay zeka ile desteklendiğinden sürprizler ve hatalar mümkündür. Daha fazla bilgi için Sıkça Sorulan Sorular bölümüne bakın.

Sık Sorulan Sorular

Key Vault içindeki uygulama ekiplerine yalıtım sağlamak için Azure RBAC nesne kapsamı atamalarını kullanabilir miyim?

Hayır Azure RBAC izin modeli, Key Vault'taki tek tek nesnelere kullanıcıya veya uygulamaya erişim atamanıza olanak tanır, ancak ağ erişim denetimi, izleme ve nesne yönetimi gibi tüm yönetim işlemleri kasa düzeyinde izinler gerektirir ve bu da güvenli bilgileri uygulama ekipleri genelindeki işleçlere sunar.

Daha fazla bilgi edinin