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.

Not

Azure Portal aracılığıyla hizmet sertifikası yapılandırması Azure Uygulaması Key Vault RBAC izin modelini desteklemez. Azure PowerShell, Azure CLI, ARM şablonu dağıtımlarını App Service genel kimliği için Key Vault Sertifikası Kullanıcı rolü ataması ile kullanabilirsiniz; örneğin, genel buluttaki Microsoft Azure Uygulaması Service' gibi.

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

Azure RBAC kullanıcıların Anahtar, Gizli Dizi ve Sertifika izinlerini yönetmesine olanak tanır. Tüm anahtar kasalarında izinlerin tamamının tek bir yerden yönetilmesini 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 ayrıca kullanıcıların tek tek anahtarlar, gizli diziler ve sertifikalar üzerinde ayrı izinlere sahip olmasını sağlar

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

Tek tek anahtarlar, gizli diziler ve sertifika rol atamaları için en iyi yöntemler

Önerimiz, Key Vault kapsamında atanmış rollerle ortam başına uygulama başına bir kasa (Geliştirme, Üretim Öncesi ve Üretim) kullanmaktır.

Tek tek anahtarlar, gizli diziler ve sertifikalar üzerinde rol atamaktan kaçınılmalıdır. Genel rehberliğe yönelik özel durumlar:

  • Tek tek gizli dizilerin birden çok uygulama arasında paylaşılması gereken senaryolar, örneğin, bir uygulamanın diğer uygulamadan verilere erişmesi gerekir

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

Bu Key Vault Contributor rol yalnızca anahtar kasalarını yönetmek için yönetim düzlemi işlemlerine yöneliktir. Anahtarlara, gizli dizilere ve sertifikalara erişime izin vermez.

Yerleşik rol Açıklama Kimlik
Key Vault Yönetici istrator Bir anahtar kasasında ve sertifikalar, anahtarlar ve gizli diziler de dahil olmak üzere içindeki tüm nesnelerde tüm veri düzlemi işlemlerini gerçekleştirin. Anahtar kasası kaynakları yönetilemez veya rol atamaları yönetilemez. 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 sertifikalarının, anahtarlarının ve gizli dizilerinin meta verilerini okuyun. Gizli dizi içeriği veya anahtar malzeme 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 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 dizi 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 Şifreleme Kullanıcısı Anahtarların meta verilerini okuyun ve sarmalama/kaldırma 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 Şifreleme 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 Şifreleme Hizmeti Yayın 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 Gizli DiziLeri Yetkilisi İzinleri yönetme dışında anahtar kasasının gizli dizileri üzerinde herhangi bir eylem 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 Gizli Dizi Kullanıcısı Özel anahtara sahip bir sertifikanın gizli dizi kısmı da dahil olmak üzere gizli dizi içeriğini 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şimi Yönetici istrator Key Vault Yönetici istrator, Key Vault Sertifika Yetkilisi, Key Vault Şifreleme Yetkilisi, Key Vault Şifreleme Hizmeti Şifreleme Kullanıcısı, Key Vault Şifreleme Kullanıcısı, Key Vault Okuyucusu, Key Vault Gizli DiziLeri Yetkilisi veya Key Vault Gizli Dizileri Kullanıcı rolleri için rol atamaları ekleyerek veya kaldırarak Azure Key Vault erişimini 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 dizisi, 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ı eklemek için Key Vault Veri Erişimi Yönetici strator, Kullanıcı Erişimi Yönetici istrator veya Sahip gibi izinleriniz olmalıdır Microsoft.Authorization/roleAssignments/writeMicrosoft.Authorization/roleAssignments/delete.

Key Vault'ta Azure RBAC izinlerini etkinleştirme

Not

İzin modelini değiştirmek için Sahip ve Kullanıcı Erişimi Yönetici istrator rollerinin parçası olan 'Microsoft.Authorization/roleAssignments/write' izni gerekir. 'Service Yönetici istrator' ve 'Co-Yönetici istrator' gibi klasik abonelik yöneticisi rolleri desteklenmez.

  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 yeniden adlandırılırsa betikleriniz çalışmaya devam eder. Bu belgede rol adı yalnızca okunabilirlik için kullanılır.

Rol ataması oluşturmak için aşağıdaki komutu çalıştırın:

az role assignment create --role <role_name_or_id> --assignee <assignee> --scope <scope>

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

Azure portalını kullanarak rol atamak için bkz . Azure portalını kullanarak Azure rolleri atama. Azure portalında, Erişim denetimi (IAM) sekmesindeki tüm kaynaklar için Azure rol atamaları ekranı kullanılabilir.

Kaynak grubu kapsamı rol ataması

  1. Anahtar kasanızı içeren Kaynak Grubuna gidin.

    Rol ataması - kaynak grubu

  2. Erişim denetimi (IAM) öğesini seçin.

  3. Ekle>Rol ataması ekle seçeneğini belirleyerek Rol ataması ekle sayfasını açın.

  4. Aşağıdaki rolü atayın. Ayrıntılı adımlar için bkz. Azure portalı kullanarak Azure rolleri atama.

    Ayar Value
    Rol "Key Vault Okuyucusu"
    Şu kişiye erişim ata: Geçerli kullanıcı
    Üyeler E-posta adresine göre arama

    Azure portalında rol ataması ekleme sayfası.

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ı

  1. Key Vault > Erişim denetimi (IAM) sekmesine gidin

  2. Ekle>Rol ataması ekle seçeneğini belirleyerek Rol ataması ekle sayfasını açın.

  3. Aşağıdaki rolü atayın. Ayrıntılı adımlar için bkz. Azure portalı kullanarak Azure rolleri atama.

    Ayar Value
    Rol "Key Vault Gizli Dizi Sorumlusu"
    Şu kişiye erişim ata: Geçerli kullanıcı
    Üyeler E-posta adresine göre arama

    Azure portalında rol ataması ekleme sayfası.

az role assignment create --role "Key Vault Secrets Officer" --assignee {i.e jalichwa@microsoft.com} --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 dizi kapsamı rol ataması

Not

Anahtar kasası gizli dizisi, sertifika, anahtar kapsamı rol atamaları yalnızca burada açıklanan sınırlı senaryolarda en iyi güvenlik uygulamalarıyla uyumlu olacak şekilde kullanılmalıdır.

  1. Daha önce oluşturulmuş bir gizli diziyi açın.

  2. Erişim denetimi (IAM) sekmesine tıklayın

    Rol ataması - gizli dizi

  3. Ekle>Rol ataması ekle seçeneğini belirleyerek Rol ataması ekle sayfasını açın.

  4. Aşağıdaki rolü atayın. Ayrıntılı adımlar için bkz. Azure portalı kullanarak Azure rolleri atama.

    Ayar Value
    Rol "Key Vault Gizli Dizi Sorumlusu"
    Şu kişiye erişim ata: Geçerli kullanıcı
    Üyeler E-posta adresine göre arama

    Azure portalında rol ataması ekleme sayfası.

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 Gizli DiziLeri Yetkilisi" rolü olmadan yeni gizli dizi eklemeyi doğrulayın.

    1. Anahtar kasası Erişim denetimi (IAM) sekmesine gidin ve bu kaynak için "Key Vault Gizli Dizileri Yetkilisi" rol atamasını kaldırın.

      Atamayı kaldırma - anahtar kasası

    2. Önceden oluşturulmuş gizli diziye gidin. Tüm gizli dizi özelliklerini görebilirsiniz.

      Erişimli gizli dizi görünümü

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

      Yeni gizli dizi oluşturma

  2. Gizli dizi düzeyinde "Key Vault Gizli Dizi Yetkilisi" rolü olmadan gizli dizi düzenlemeyi doğrulayın.

    1. Daha önce oluşturulmuş gizli dizi Erişim Denetimi (IAM) sekmesine gidin ve bu kaynak için "Key Vault Gizli Dizileri Yetkilisi" rol atamasını kaldırın.

    2. Önceden oluşturulmuş gizli diziye gidin. Gizli dizi özelliklerini görebilirsiniz.

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

  3. Anahtar kasası düzeyinde okuyucu rolü olmadan okunan gizli dizileri doğrulayın.

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

    2. Anahtar kasasının Gizli Diziler sekmesine gitmek şu hatayı göstermelidir:

      Gizli dizi sekmesi - hata

Özel roller oluşturma

az role definition create command

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

Sık Sorulan Sorular:

Key Vault içindeki uygulama ekiplerine yalıtım sağlamak için Key Vault rol tabanlı erişim denetimi (RBAC) izin modeli nesne kapsamı atamalarını kullanabilir miyim?

Hayır 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 gösterir.

Daha fazla bilgi edinin