Azure Key Vault güvenliği
Azure Key Vault bulutta şifreleme anahtarlarını, sertifikaları (ve sertifikalarla ilişkili özel anahtarları) ve gizli dizileri (bağlantı dizesi ve parolalar gibi) korur. Bununla birlikte, hassas ve iş açısından kritik verileri depolarken kasalarınızın ve bunların içinde depolanan verilerin güvenliğini en üst düzeye çıkarmak için adımlar atmalısınız.
Bu makalede Azure Key Vault'a yönelik güvenlik özelliklerine ve en iyi yöntemlere genel bir bakış sunulmaktadır.
Not
Azure Key Vault güvenlik önerilerinin kapsamlı bir listesi için bkz . Azure Key Vault için güvenlik temeli.
Ağ güvenliği
Hangi IP adreslerinin bunlara erişimi olduğunu belirterek kasalarınızın görünür olmasını azaltabilirsiniz. Azure Key Vault için sanal ağ hizmet uç noktaları, belirtilen bir sanal ağa erişimi kısıtlamanıza olanak tanır. Uç noktalar ayrıca IPv4 (internet protokolü sürüm 4) adres aralıkları listesine erişimi kısıtlamanıza da olanak tanır. Anahtar kasanıza bu kaynakların dışından bağlanan tüm kullanıcıların erişimi reddedilir. Tüm ayrıntılar için bkz. Azure Key Vault için sanal ağ hizmet uç noktaları
Güvenlik duvarı kuralları etkin olduktan sonra, kullanıcılar yalnızca istekleri izin verilen sanal ağlardan veya IPv4 adres aralıklarından geldiğinde Key Vault'tan veri okuyabilir. Bu, Azure portalından Key Vault'a erişim için de geçerlidir. Kullanıcılar Azure portalından bir anahtar kasasına göz atabilse de, istemci makineleri izin verilenler listesinde değilse anahtarları, gizli dizileri veya sertifikaları listeleyemez. Uygulama adımları için bkz . Azure Key Vault güvenlik duvarlarını ve sanal ağları yapılandırma
Azure Özel Bağlantı Hizmeti, sanal ağınızdaki bir Özel Uç Nokta üzerinden Azure Key Vault'a ve Azure'da barındırılan müşteri/iş ortağı hizmetlerine erişmenizi sağlar. Azure Özel Uç Noktası, sizi Azure Özel Bağlantı tarafından desteklenen bir hizmete özel ve güvenli bir şekilde bağlayan bir ağ arabirimidir. Özel uç nokta, sanal ağınızdan bir özel IP adresi kullanarak hizmeti etkili bir şekilde sanal ağınıza getirir. Hizmete giden tüm trafik özel uç nokta üzerinden yönlendirilebilir, bu nedenle ağ geçitleri, NAT cihazları, ExpressRoute veya VPN bağlantıları veya genel IP adresleri gerekmez. Sanal ağınız ve hizmet arasındaki trafik, Microsoft omurga ağı üzerinden geçer ve genel İnternet’ten etkilenme olasılığı ortadan kaldırılır. Bir Azure kaynağının örneğine bağlanarak erişim denetiminde en yüksek ayrıntı düzeyini sağlayabilirsiniz. Uygulama adımları için bkz. Key Vault'ı Azure Özel Bağlantı ile tümleştirme
TLS ve HTTPS
- Key Vault ön ucu (veri düzlemi) çok kiracılı bir sunucudur. Bu, farklı müşterilerin anahtar kasalarının aynı genel IP adresini paylaşabileceği anlamına gelir. Yalıtım elde etmek için her HTTP isteğinin kimliği doğrulanır ve diğer isteklerden bağımsız olarak yetkilendirilir.
- HTTPS protokolü, istemcinin TLS anlaşmasına katılmasını sağlar. İstemciler TLS sürümünü zorunlu kılabilir ve bir istemci bunu her uyguladığında tüm bağlantı ilgili düzey korumasını kullanır. Key Vault TLS 1.2 ve 1.3 protokol sürümlerini destekler.
Not
Burada örnek Kusto sorgusuyla Key Vault günlüklerini izleyerek istemciler tarafından kullanılan TLS sürümünü izleyebilirsiniz.
Key Vault kimlik doğrulama seçenekleri
Azure aboneliğinde anahtar kasası oluşturduğunuzda, bu kasa otomatik olarak aboneliğin Microsoft Entra kiracısıyla ilişkilendirildiğinde. Her iki düzlemdeki tüm arayanların bu kiracıya kaydolması ve anahtar kasasına erişmek için kimlik doğrulaması yapması gerekir. Her iki durumda da uygulamalar Key Vault'a üç şekilde erişebilir:
- Yalnızca uygulama: Uygulama bir hizmet sorumlusunu veya yönetilen kimliği temsil eder. Bu kimlik, anahtar kasasından sertifikalara, anahtarlara veya gizli dizilere düzenli aralıklarla erişmesi gereken uygulamalar için en yaygın senaryodur. Bu senaryonun çalışması için,
objectId
uygulamanın erişim ilkesinde belirtilmesi veapplicationId
belirtilmemesi veya olmasınull
gerekir. - Yalnızca kullanıcı: Kullanıcı, kiracıda kayıtlı herhangi bir uygulamadan anahtar kasasına erişir. Bu erişim türüne örnek olarak Azure PowerShell ve Azure portalı verilebilir. Bu senaryonun çalışması için kullanıcının
objectId
erişim ilkesinde belirtilmesi veapplicationId
belirtilmemesi veya olmasınull
gerekir. - Uygulama artı kullanıcı (bazen bileşik kimlik olarak da adlandırılır): Kullanıcının belirli bir uygulamadan anahtar kasasına erişmesi ve uygulamanın kullanıcının kimliğine bürünmek için adına kimlik doğrulaması (OBO) akışını kullanması gerekir. Bu senaryonun çalışması için hem hem de
applicationId
objectId
erişim ilkesinde belirtilmelidir.applicationId
gerekli uygulamayı veobjectId
kullanıcıyı tanımlar. Şu anda bu seçenek veri düzlemi Azure RBAC için kullanılamamaktadır.
Tüm erişim türlerinde uygulama, Microsoft Entra Kimliği ile kimlik doğrulaması yapar. Uygulama, uygulama türüne göre desteklenen herhangi bir kimlik doğrulama yöntemini kullanır. Uygulama, erişim izni vermek üzere düzlemdeki bir kaynak için belirteç alır. Kaynak, Azure ortamını temel alan yönetim veya veri düzlemindeki bir uç noktadır. Uygulama belirteci kullanır ve Key Vault'a bir REST API isteği gönderir. Daha fazla bilgi edinmek için kimlik doğrulama akışının tamamını gözden geçirin.
Her iki düzlemde de kimlik doğrulaması için tek bir mekanizma modelinin çeşitli avantajları vardır:
- Kuruluşlar, kuruluşlarındaki tüm anahtar kasalarına erişimi merkezi olarak denetleyebilir.
- Bir kullanıcı ayrılırsa kuruluştaki tüm anahtar kasalarına erişimi anında kaybeder.
- Kuruluşlar, ek güvenlik için çok faktörlü kimlik doğrulamasını etkinleştirmek gibi Microsoft Entra Id'deki seçenekleri kullanarak kimlik doğrulamasını özelleştirebilir.
Daha fazla bilgi için bkz . Key Vault kimlik doğrulamasıyla ilgili temel bilgiler.
Erişim modeline genel bakış
Anahtar kasasına erişim iki arabirimle denetlenmektedir: yönetim düzlemi ve veri düzlemi. Yönetim düzlemi, Key Vault'un kendisini yönettiğiniz yerdir. Bu düzlemdeki işlemler arasında anahtar kasaları 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. Yönetim düzlemi yetkilendirme için Azure rol tabanlı erişim denetimini (Azure RBAC) ve veri düzlemi bir Key Vault erişim ilkesini ve Key Vault veri düzlemi işlemleri için Azure RBAC'yi 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. Key Vault ile kimlik doğrulaması, belirli bir güvenlik sorumlusunun kimliğini doğrulamakla sorumlu olan Microsoft Entra Id ile birlikte çalışır.
Güvenlik sorumlusu, Azure kaynaklarına erişim isteyen bir kullanıcı, grup, hizmet veya uygulamayı temsil eden bir nesnedir. Azure, her güvenlik sorumlusuna benzersiz bir nesne kimliği atar.
- Kullanıcı güvenlik sorumlusu, Microsoft Entra Id'de profili olan bir kişiyi tanımlar.
- Grup güvenlik sorumlusu, Microsoft Entra Id'de oluşturulan bir kullanıcı kümesini tanımlar. Gruba atanan tüm roller veya izinler, gruptaki tüm kullanıcılara verilir.
- Hizmet sorumlusu, bir uygulamayı veya hizmeti tanımlayan bir güvenlik sorumlusu türüdür; yani kullanıcı veya grup yerine bir kod parçasıdır. Hizmet sorumlusu nesne kimliği, istemci kimliği olarak bilinir ve kullanıcı adı gibi davranır. Hizmet sorumlusunun istemci gizli dizisi veya sertifikası parolası gibi davranır. Birçok Azure Hizmeti, istemci kimliği ve sertifikasının otomatik yönetimiyle Yönetilen Kimlik atamayı destekler. Yönetilen kimlik, Azure'da kimlik doğrulaması için en güvenli ve önerilen seçenektir.
Key Vault'ta kimlik doğrulaması hakkında daha fazla bilgi için bkz . Azure Key Vault'ta kimlik doğrulaması.
Koşullu erişim
Key Vault, Microsoft Entra Koşullu Erişim ilkeleri için destek sağlar. Koşullu Erişim ilkelerini kullanarak, kuruluşunuzun güvenliğini sağlamak ve gerekmediğinde kullanıcınızın yolundan uzak kalmak için gerektiğinde Key Vault'a doğru erişim denetimlerini uygulayabilirsiniz.
Daha fazla bilgi için bkz. Koşullu Erişim'e genel bakış
Ayrıcalıklı erişim
Yetkilendirme, çağıranın hangi işlemleri gerçekleştirebileceğini belirler. Key Vault'ta yetkilendirme, yönetim düzleminde Azure rol tabanlı erişim denetimini (Azure RBAC) ve veri düzleminde Azure RBAC veya Azure Key Vault erişim ilkelerini kullanır.
Kasalara erişim, iki arabirim veya düzlem üzerinden gerçekleşir. Bu düzlemler, yönetim düzlemi ve veri düzlemidir.
- Yönetim düzlemi, Key Vault'un kendisini yönettiğiniz yerdir ve kasaları oluşturmak ve silmek için kullanılan arabirimdir. Ayrıca, anahtar kasası özelliklerini okuyabilir ve erişim ilkelerini yönetebilirsiniz.
- Veri düzlemi, bir anahtar kasasında depolanan verilerle çalışmanızı sağlar. Anahtarları, gizli dizileri ve sertifikaları ekleyebilir, silebilir ve değiştirebilirsiniz.
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 özelliklerine ve etiketlerine okuma erişimi vermek, ancak verilere (anahtarlar, gizli diziler veya sertifikalar) erişim vermek için, Azure RBAC ile yönetim düzlemi erişimi verirsiniz.
Aşağıdaki tabloda yönetim ve veri düzlemleri için uç noktalar gösterilmektedir.
Erişim düzlemi | Erişim uç noktaları | Operations | Erişim denetimi mekanizması |
---|---|---|---|
Yönetim düzlemi | Genel: management.azure.com:443 21Vianet tarafından sağlanan Microsoft Azure: management.chinacloudapi.cn:443 Azure ABD: management.usgovcloudapi.net:443 Azure Almanya: management.microsoftazure.de: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 | Genel: <vault-name>.vault.azure.net:443 21Vianet tarafından sağlanan Microsoft Azure: <vault-name>.vault.azure.cn:443 Azure ABD: <vault-name>.vault.usgovcloudapi.net:443 Azure Almanya: <vault-name>.vault.microsoftazure.de:443 |
Anahtarlar: şifreleme, şifre çözme, wrapKey, unwrapKey, sign, verify, get, list, create, update, import, delete, recover, backup, restore, purge, rotate (preview), getrotationpolicy (önizleme), setrotationpolicy (önizleme), release(preview) Sertifikalar: managecontacts, getissuers, listissuers, setissuers, deleteissuers, manageissuers, get, list, create, import, update, delete, recover, backup, restore, purge Gizli diziler: alma, listeleme, ayarlama, silme,kurtarma, yedekleme, geri yükleme, temizleme |
Key Vault erişim ilkesi 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 olanağı 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 bkz . Azure RBAC: Yerleşik roller.
Önemli
Erişim İlkesi izin modelini kullanırken, , Key Vault Contributor
veya anahtar kasası yönetim düzlemi için izinler içeren Microsoft.KeyVault/vaults/write
başka bir role sahip Contributor
bir kullanıcı, bir Key Vault erişim ilkesi ayarlayarak kendilerine veri düzlemi erişimi verebilir. Anahtar kasalarınızın, anahtarlarınızın, gizli dizilerinizin ve sertifikalarınızın yetkisiz erişimini ve yönetimini önlemek için, Erişim İlkesi izin modeli altında anahtar kasalarına Katkıda Bulunan rolü erişimini sınırlamak önemlidir. Bu riski azaltmak için, izin yönetimini 'Sahip' ve 'Kullanıcı Erişimi Yöneticisi' rolleri ile kısıtlayarak güvenlik işlemleri ile yönetim görevleri arasında net bir ayrım sağlayan Rol Tabanlı Erişim Denetimi (RBAC) izin modelini kullanmanızı öneririz. Daha fazla bilgi için bkz. Key Vault RBAC Kılavuzu ve Azure RBAC nedir?
Key Vault verilerine erişimi denetleme
Azure RBAC veya Key Vault erişim ilkelerini kullanarak Key Vault anahtarlarına, sertifikalarına ve gizli dizilerine erişimi denetleyebilirsiniz.
Daha fazla bilgi için bkz.
- Key Vault veri düzlemi işlemleri için Azure RBAC.
- Key Vault erişim ilkesi
Günlüğe kaydetme ve izleme
Key Vault günlüğü, kasanızda gerçekleştirilen etkinliklerle ilgili bilgileri kaydeder. Tüm ayrıntılar için bkz . Key Vault günlüğü.
Anahtar kasasında depolanan bir anahtarın, sertifikanın veya gizli anahtarın durumu değiştiğinde bildirim almak için Key Vault'ı Event Grid ile tümleştirebilirsiniz. Ayrıntılar için bkz. Azure Event Grid ile Key Vault'un izlenmesi
Hizmetinizin amaçlandığı gibi çalıştığından emin olmak için anahtar kasanızın durumunu izlemek de önemlidir. Bunun nasıl yapılacağını öğrenmek için bkz . Azure Key Vault için izleme ve uyarı verme.
Yedekleme ve kurtarma
Azure Key Vault geçici silme ve temizleme koruması, silinen kasaları ve kasa nesnelerini kurtarmanıza olanak tanır. Tüm ayrıntılar için bkz . Azure Key Vault geçici silmeye genel bakış.
Kasa içindeki nesnelerin güncelleştirilmesi/silinmesi/oluşturulması için kasanızın düzenli yedeklerini de almanız gerekir.