Azure Key Vault geliştirici kılavuzu
Azure Key Vault, hassas bilgilere uygulamalarınızdan güvenli bir şekilde erişmenizi sağlar:
- Anahtarlar, gizli diziler ve sertifikalar, kodu kendiniz yazmak zorunda kalmadan korunur ve bunları uygulamalarınızdan kolayca kullanabilirsiniz.
- Müşterilerin kendi anahtarlarını, gizli dizilerini ve sertifikalarını sahiplenmesine ve yönetmesine izin vererek temel yazılım özelliklerini sağlamaya odaklanabilirsiniz. Bu şekilde, uygulamalarınız müşterilerinizin kiracı anahtarları, gizli dizileri ve sertifikaları için sorumluluk veya olası sorumluluğa sahip olmaz.
- Uygulamanız imzalama ve şifreleme için anahtarları kullanabilir ancak anahtar yönetimini uygulamanız dışında tutabilir. Daha fazla bilgi için bkz . Anahtarlar hakkında.
- Parolalar, erişim anahtarları ve SAS belirteçleri gibi kimlik bilgilerini Key Vault'ta gizli dizi olarak depolayarak yönetebilirsiniz. Daha fazla bilgi için bkz . Gizli diziler hakkında.
- Sertifikaları yönetin. Daha fazla bilgi için bkz . Sertifikalar hakkında.
Azure Key Vault hakkında genel bilgi için bkz . Azure Key Vault hakkında.
Genel önizlemeler
Düzenli aralıklarla yeni bir Key Vault özelliğinin genel önizlemesini yayınlıyoruz. Genel önizleme özelliklerini deneyin ve geri bildirim e-posta adresimiz aracılığıyla azurekeyvault@microsoft.comdüşüncelerinizi bize bildirin.
Anahtar kasaları oluşturma ve yönetme
Diğer Azure hizmetlerinde olduğu gibi Key Vault da Azure Resource Manager aracılığıyla yönetilir. Azure Resource Manager, Azure için dağıtım ve yönetim hizmetidir. Bunu kullanarak Azure hesabınızdaki kaynakları oluşturabilir, güncelleştirebilir ve silebilirsiniz.
Azure rol tabanlı erişim denetimi (RBAC), yönetim düzlemi olarak da bilinen yönetim katmanına erişimi denetler. Key Vault'taki yönetim düzlemini, erişim ilkeleri dahil olmak üzere anahtar kasalarını ve bunların özniteliklerini oluşturmak ve yönetmek için kullanırsınız. Anahtarları, sertifikaları ve gizli dizileri yönetmek için veri düzlemini kullanırsınız.
Key Vault'a yönetim erişimi vermek için önceden tanımlanmış Key Vault Katkıda Bulunanı rolünü kullanabilirsiniz.
Anahtar kasası yönetimi için API'ler ve SDK'lar
Azure CLI | PowerShell | REST API | Resource Manager | .NET | Python | Java | JavaScript |
---|---|---|---|---|---|---|---|
Başvuru Hızlı Başlangıç |
Başvuru Hızlı Başlangıç |
Başvuru | Başvuru Hızlı Başlangıç |
Başvuru | Başvuru | Başvuru | Başvuru |
Yükleme paketleri ve kaynak kodu için bkz . İstemci kitaplıkları.
Kodda Key Vault'ta kimlik doğrulaması yapma
Key Vault, erişim izni vermek için bir Microsoft Entra güvenlik sorumlusu gerektiren Microsoft Entra kimlik doğrulamasını kullanır. Microsoft Entra güvenlik sorumlusu bir kullanıcı, uygulama hizmet sorumlusu, Azure kaynakları için yönetilen kimlik veya bu türlerden herhangi biri olabilir.
Kimlik doğrulaması en iyi yöntemleri
Azure'a dağıtılan uygulamalar için yönetilen kimlik kullanmanızı öneririz. Yönetilen kimlikleri desteklemeyen Azure hizmetlerini kullanıyorsanız veya uygulamalar şirket içinde dağıtılıyorsa, sertifikaya sahip bir hizmet sorumlusu olası bir alternatiftir. Bu senaryoda sertifikaNın Key Vault'ta depolanması ve sık sık döndürülmesi gerekir.
Geliştirme ve test ortamları için gizli dizi içeren bir hizmet sorumlusu kullanın. Yerel geliştirme ve Azure Cloud Shell için bir kullanıcı sorumlusu kullanın.
Her ortamda şu güvenlik sorumlularını öneririz:
- Üretim ortamı: Sertifika ile yönetilen kimlik veya hizmet sorumlusu.
- Test ve geliştirme ortamları: Yönetilen kimlik, sertifikalı hizmet sorumlusu veya gizli dizili hizmet sorumlusu.
- Yerel geliştirme: Gizli dizili kullanıcı sorumlusu veya hizmet sorumlusu.
Azure Identity istemci kitaplıkları
Önceki kimlik doğrulama senaryoları Azure Identity istemci kitaplığı tarafından desteklenir ve Key Vault SDK'larıyla tümleştirilir. Azure Identity istemci kitaplığını, kodunuzu değiştirmeden ortamlar ve platformlar arasında kullanabilirsiniz. Kitaplık, Azure CLI, Visual Studio, Visual Studio Code ve diğer yollarla Azure kullanıcısında oturum açan kullanıcılardan kimlik doğrulama belirteçlerini otomatik olarak alır.
Azure Identity istemci kitaplığı hakkında daha fazla bilgi için bkz:
.NET | Python | Java | JavaScript |
---|---|---|---|
Azure Kimlik SDK'sı .NET | Azure Kimlik SDK'sı Python | Azure Kimlik SDK'sı Java | Azure Kimlik SDK'sı JavaScript |
Not
Key Vault .NET SDK sürüm 3 için Uygulama Kimlik Doğrulaması kitaplığı önerilir, ancak artık kullanım dışıdır. Key Vault .NET SDK sürüm 4'e geçmek için AppAuthentication to Azure.Identity geçiş kılavuzunu izleyin.
Uygulamalarda Key Vault'ta kimlik doğrulaması yapma öğreticileri için bkz:
- .NET'te sanal makineyle Azure Key Vault kullanma
- Python'da sanal makineyle Azure Key Vault kullanma
- Key Vault'u .NET'teki bir Azure web uygulamasına bağlamak için yönetilen kimlik kullanma
Anahtarları, sertifikaları ve gizli dizileri yönetme
Not
.NET, Python, Java, JavaScript, PowerShell ve Azure CLI sdk'ları, Key Vault hizmet ekibi desteğiyle genel önizleme ve genel kullanılabilirlik aracılığıyla Key Vault özellik yayın sürecinin bir parçasıdır. Key Vault için diğer SDK istemcileri kullanılabilir, ancak GitHub üzerinden tek tek SDK ekipleri tarafından derlenir ve desteklenir ve ekip zamanlamalarında yayınlanır.
Veri düzlemi anahtarlara, sertifikalara ve gizli dizilere erişimi denetler. Veri düzlemi üzerinden erişim denetimi için yerel kasa erişim ilkelerini veya Azure RBAC'yi kullanabilirsiniz.
Anahtarlar için API'ler ve SDK'lar
Azure CLI | PowerShell | REST API | Resource Manager | .NET | Python | Java | JavaScript |
---|---|---|---|---|---|---|---|
Başvuru Hızlı Başlangıç |
Başvuru Hızlı Başlangıç |
Başvuru | Başvuru Hızlı Başlangıç |
Başvuru Hızlı Başlangıç |
Başvuru Hızlı Başlangıç |
Başvuru Hızlı Başlangıç |
Başvuru Hızlı Başlangıç |
Diğer Kitaplıklar
Key Vault ve Yönetilen HSM için şifreleme istemcisi
Bu modül, Go için Azure Key Vault Anahtarları istemci modülü için bir şifreleme istemcisi sağlar.
Not
Bu proje Azure SDK ekibi tarafından desteklenmez, ancak desteklenen diğer dillerdeki şifreleme istemcileriyle uyumlu olur.
Dil | Başvuru |
---|---|
Go | Başvuru |
Sertifikalar için API'ler ve SDK'lar
Azure CLI | PowerShell | REST API | Resource Manager | .NET | Python | Java | JavaScript |
---|---|---|---|---|---|---|---|
Başvuru Hızlı Başlangıç |
Başvuru Hızlı Başlangıç |
Başvuru | Yok | Başvuru Hızlı Başlangıç |
Başvuru Hızlı Başlangıç |
Başvuru Hızlı Başlangıç |
Başvuru Hızlı Başlangıç |
Gizli diziler için API'ler ve SDK'lar
Azure CLI | PowerShell | REST API | Resource Manager | .NET | Python | Java | JavaScript |
---|---|---|---|---|---|---|---|
Başvuru Hızlı Başlangıç |
Başvuru Hızlı Başlangıç |
Başvuru | Başvuru Hızlı Başlangıç |
Başvuru Hızlı Başlangıç |
Başvuru Hızlı Başlangıç |
Başvuru Hızlı Başlangıç |
Başvuru Hızlı Başlangıç |
Gizli dizilerin kullanımı
Uygulamanızın yalnızca gizli dizilerini depolamak için Azure Key Vault'ı kullanın. Key Vault'ta depolanması gereken gizli dizilere örnek olarak şunlar verilebilir:
- İstemci uygulama gizli dizileri
- Bağlantı dizeleri
- Parolalar
- Paylaşılan erişim anahtarları
- SSH anahtarları
Kullanıcı adları ve uygulama kimlikleri gibi gizli dizilerle ilgili tüm bilgiler gizli dizide etiket olarak depolanabilir. Diğer hassas yapılandırma ayarları için Azure Uygulaması Yapılandırma'yı kullanmanız gerekir.
Başvurular
Yükleme paketleri ve kaynak kodu için bkz . İstemci kitaplıkları.
Key Vault için veri düzlemi güvenliği hakkında bilgi için bkz . Azure Key Vault güvenlik özellikleri.
Uygulamalarda Key Vault kullanma
Key Vault'taki en son özelliklerden yararlanmak için, uygulamanızda gizli dizileri, sertifikaları ve anahtarları kullanmak için kullanılabilir Key Vault SDK'larını kullanmanızı öneririz. Key Vault SDK'ları ve REST API'leri, ürün için yeni özellikler kullanıma sunuldukça güncelleştirilir ve en iyi yöntemleri ve yönergeleri izler.
Temel senaryolar için, Microsoft iş ortakları veya açık kaynak topluluklar tarafından sağlanan destekle basitleştirilmiş kullanıma yönelik başka kitaplıklar ve tümleştirme çözümleri vardır.
Sertifikalar için şunları kullanabilirsiniz:
- Bir Azure anahtar kasasında depolanan sertifikaların otomatik olarak yenilenmesini sağlayan Key Vault sanal makinesi (VM) uzantısı. Daha fazla bilgi için, şuraya bakın:
- Key Vault'tan sertifikaları içeri aktarabilen ve otomatik olarak yenileyebilen Hizmet tümleştirmesini Azure Uygulaması. Daha fazla bilgi için bkz . Key Vault'tan sertifika içeri aktarma.
Gizli diziler için şunları kullanabilirsiniz:
- App Service uygulama ayarlarıyla Key Vault gizli dizileri. Daha fazla bilgi için bkz. App Service ve Azure İşlevleri için Key Vault başvurularını kullanma.
- Key Vault, uygulamanızın yapılandırmaya ve gizli dizilere erişimini kolaylaştırmak için Azure Uygulaması Yapılandırması ile başvurur. Daha fazla bilgi için bkz. Azure Uygulaması Yapılandırmasında Key Vault başvurularını kullanma.
Kod örnekleri
Key Vault'un uygulamalarla birlikte kullanılmasına ilişkin tam örnekler için bkz . Azure Key Vault kod örnekleri.
Göreve özgü kılavuz
Aşağıdaki makaleler ve senaryolar, Azure Key Vault ile çalışmaya yönelik göreve özgü yönergeler sağlar:
- Bir anahtar kasasına erişmek için istemci uygulamanızın çeşitli işlevler için birden çok uç noktaya erişebilmesi gerekir. Bkz . Güvenlik duvarının arkasındaki Key Vault'a erişme.
- Azure VM'de çalışan bir bulut uygulamasının bir sertifikaya ihtiyacı vardır. Bu sertifikayı bu VM'ye nasıl alacaksınız? Bkz . Windows için Key Vault sanal makine uzantısı veya Linux için Key Vault sanal makine uzantısı.
- Azure CLI, PowerShell veya Azure portalını kullanarak erişim ilkesi atamak için bkz . Key Vault erişim ilkesi atama.
- Geçici silme özelliği etkinleştirilmiş bir anahtar kasasının ve çeşitli anahtar kasası nesnelerinin kullanımı ve yaşam döngüsü hakkında yönergeler için bkz . Geçici silme ve temizleme koruması ile Azure Key Vault kurtarma yönetimi.
- Dağıtım sırasında parametre olarak güvenli bir değer (parola gibi) geçirmeniz gerektiğinde, bu değeri bir anahtar kasasında gizli dizi olarak depolayabilir ve diğer Resource Manager şablonlarındaki değere başvurabilirsiniz. Bkz . Dağıtım sırasında güvenli parametre değerlerini geçirmek için Azure Key Vault kullanma.
Key Vault ile tümleştirme
Aşağıdaki hizmetler ve senaryolarda Key Vault kullanılır veya key vault ile tümleştirilir:
- Bekleyen şifreleme, kalıcı hale geldiğinde verilerin kodlamasına (şifrelemeye) olanak tanır. Veri şifreleme anahtarları, erişimi daha fazla sınırlamak için genellikle Azure Key Vault'taki bir anahtar şifreleme anahtarıyla şifrelenir.
- Azure Information Protection , kendi kiracı anahtarınızı yönetmenize olanak tanır. Örneğin, Microsoft kiracı anahtarınızı yönetmek yerine (varsayılan), kuruluşunuz için geçerli olan belirli düzenlemelere uymak için kendi kiracı anahtarınızı yönetebilirsiniz. Kendi kiracı anahtarınızı yönetmeye kendi anahtarınızı getirin (KAG) de denir.
- Azure Özel Bağlantı, sanal ağınızdaki özel bir uç nokta üzerinden Azure hizmetlerine (örneğin Azure Key Vault, Azure Depolama ve Azure Cosmos DB) ve Azure tarafından barındırılan müşteri/iş ortağı hizmetlerine erişmenizi sağlar.
- Azure Event Grid ile Key Vault tümleştirmesi, Key Vault'ta depolanan bir gizli dizinin durumu değiştiğinde kullanıcılara bildirim verilmesini sağlar. Gizli dizilerin yeni sürümlerini uygulamalara dağıtabilir veya kesintileri önlemek için yakın süre sonu gizli dizilerini döndürebilirsiniz.
- Azure DevOps gizli dizilerinizi Key Vault'ta istenmeyen erişimden koruyun.
- Azure Databricks'ten Azure Depolama'ya bağlanmak için Key Vault'ta depolanan gizli dizileri kullanın.
- Kubernetes'te Gizli Dizi Deposu CSI sürücüsü için Azure Key Vault sağlayıcısını yapılandırın ve çalıştırın.
Key Vault'a genel bakış ve kavramlar
Hakkında bilgi edinmek için:
- Silme işleminin yanlışlıkla veya kasıtlı olmasına bakılmaksızın silinen nesnelerin kurtarılmasına olanak tanıyan bir özellik için bkz . Azure Key Vault geçici silmeye genel bakış.
- Azaltmayla ilgili temel kavramlar ve uygulamanız için bir yaklaşım elde etme, bkz . Azure Key Vault azaltma kılavuzu.
- Bölgeler ve güvenlik alanları arasındaki ilişkiler, bkz . Azure Key Vault güvenlik dünyaları ve coğrafi sınırlar.