Müşteri tarafından yönetilen anahtarları kullanarak bekleyen şifreleme

Bekleyen web uygulamanızın uygulama verilerini şifrelemek için Azure Depolama Hesabı ve Azure Key Vault gerekir. Bu hizmetler, uygulamanızı bir dağıtım paketinden çalıştırdığınızda kullanılır.

  • Azure Depolama bekleyen şifreleme sağlar. Sistem tarafından sağlanan anahtarları veya kendi müşteri tarafından yönetilen anahtarlarınızı kullanabilirsiniz. Uygulama verilerinizin Azure'da bir web uygulamasında çalışmadığında depolandığı yerdir.
  • Dağıtım paketinden çalıştırmak, App Service bir dağıtım özelliğidir. Site içeriğinizi Paylaşılan Erişim İmzası (SAS) URL'si kullanarak bir Azure Depolama Hesabından dağıtmanıza olanak tanır.
  • Key Vault başvuruları, App Service bir güvenlik özelliğidir. Çalışma zamanında gizli dizileri uygulama ayarları olarak içeri aktarmanızı sağlar. Azure Depolama Hesabınızın SAS URL'sini şifrelemek için bunu kullanın.

Bekleyen şifrelemeyi ayarlama

Azure Depolama hesabı oluşturma

İlk olarak bir Azure Depolama hesabı oluşturun ve bunu müşteri tarafından yönetilen anahtarlarla şifreleyin. Depolama hesabı oluşturulduktan sonra paket dosyalarını karşıya yüklemek için Azure Depolama Gezgini kullanın.

Ardından sas oluşturmak için Depolama Gezgini kullanın.

Not

Bu SAS URL'sini kaydedin; daha sonra çalışma zamanında dağıtım paketine güvenli erişim sağlamak için kullanılır.

Depolama hesabınızdan bir paketten çalıştırmayı yapılandırma

Dosyanızı Blob depolamaya yükledikten ve dosya için bir SAS URL'sine sahip olduktan sonra, uygulama ayarını SAS URL'si olarak ayarlayın WEBSITE_RUN_FROM_PACKAGE . Aşağıdaki örnek bunu Azure CLI kullanarak yapar:

az webapp config appsettings set --name <app-name> --resource-group <resource-group-name> --settings WEBSITE_RUN_FROM_PACKAGE="<your-SAS-URL>"

Bu uygulama ayarının eklenmesi, web uygulamanızın yeniden başlatılmasına neden olur. Uygulama yeniden başlatıldıktan sonra uygulamaya göz atın ve uygulamanın dağıtım paketini kullanarak doğru şekilde başlatıldığından emin olun. Uygulama düzgün başlatılmadıysa Paketten çalıştırma sorun giderme kılavuzuna bakın.

Key Vault başvurularını kullanarak uygulama ayarını şifreleme

Artık uygulama ayarının WEBSITE_RUN_FROM_PACKAGE değerini SAS ile kodlanmış URL'ye Key Vault başvurusuyla değiştirebilirsiniz. Bu, SAS URL'sini ek bir güvenlik katmanı sağlayan Key Vault şifrelenmiş olarak tutar.

  1. Key Vault örneği oluşturmak için aşağıdaki az keyvault create komutu kullanın.

    az keyvault create --name "Contoso-Vault" --resource-group <group-name> --location eastus    
    
  2. Uygulamanıza anahtar kasanıza erişim izni vermek için şu yönergeleri izleyin:

  3. Dış URL'nizi anahtar kasanıza gizli dizi olarak eklemek için aşağıdaki az keyvault secret set komutu kullanın:

    az keyvault secret set --vault-name "Contoso-Vault" --name "external-url" --value "<SAS-URL>"    
    
  4. Dış URL'ye Key Vault başvurusu olarak değeriyle uygulama ayarını oluşturmak WEBSITE_RUN_FROM_PACKAGE için aşağıdaki az webapp config appsettings set komutu kullanın:

    az webapp config appsettings set --settings WEBSITE_RUN_FROM_PACKAGE="@Microsoft.KeyVault(SecretUri=https://Contoso-Vault.vault.azure.net/secrets/external-url/<secret-version>"    
    

    , <secret-version> önceki az keyvault secret set komutun çıkışında yer alır.

Bu uygulama ayarının güncelleştirilmesi web uygulamanızın yeniden başlatılmasına neden olur. Uygulama yeniden başlatıldıktan sonra, Key Vault başvuruyu kullanarak doğru şekilde başlatıldığından emin olun.

Erişim belirtecini döndürme

Depolama hesabınızın SAS anahtarını düzenli aralıklarla döndürmek en iyi yöntemdir. Web uygulamasının yanlışlıkla erişimi kaybetmediğinden emin olmak için Key Vault'da SAS URL'sini de güncelleştirmeniz gerekir.

  1. Azure portal depolama hesabınıza giderek SAS anahtarını döndürün. Ayarlar>Erişim tuşları'nın altında SAS tuşunu döndürmek için simgeyi seçin.

  2. Yeni SAS URL'sini kopyalayın ve anahtar kasanızda güncelleştirilmiş SAS URL'sini ayarlamak için aşağıdaki komutu kullanın:

    az keyvault secret set --vault-name "Contoso-Vault" --name "external-url" --value "<SAS-URL>"    
    
  3. Uygulama ayarınızdaki anahtar kasası başvurusunu yeni gizli dizi sürümüne güncelleştirin:

    az webapp config appsettings set --settings WEBSITE_RUN_FROM_PACKAGE="@Microsoft.KeyVault(SecretUri=https://Contoso-Vault.vault.azure.net/secrets/external-url/<secret-version>"    
    

    , <secret-version> önceki az keyvault secret set komutun çıkışında yer alır.

Web uygulamasının veri erişimini iptal etme

Web uygulamasının depolama hesabına erişimini iptal etmek için iki yöntem vardır.

Azure Depolama hesabı için SAS anahtarını döndürme

Depolama hesabının SAS anahtarı döndürülürse, web uygulamasının depolama hesabına artık erişimi olmaz, ancak paket dosyasının son indirilen sürümüyle çalışmaya devam eder. Son indirilen sürümü temizlemek için web uygulamasını yeniden başlatın.

Web uygulamasının Key Vault erişimini kaldırma

Web uygulamasının Key Vault erişimini devre dışı bırakarak web uygulamasının site verilerine erişimini iptal edebilirsiniz. Bunu yapmak için web uygulamasının kimliğine yönelik erişim ilkesini kaldırın. Bu, daha önce anahtar kasası başvurularını yapılandırırken oluşturduğunuz kimlikle aynıdır.

Özet

Uygulama dosyalarınız artık depolama hesabınızda bekleyen olarak şifrelenir. Web uygulamanız başlatıldığında anahtar kasanızdan SAS URL'sini alır. Son olarak, web uygulaması depolama hesabından uygulama dosyalarını yükler.

Web uygulamasının depolama hesabınıza erişimini iptal etmeniz gerekiyorsa, anahtar kasasına erişimi iptal edebilir veya depolama hesabı anahtarlarını döndürebilirsiniz; her ikisi de SAS URL'sini geçersiz kılabilir.

Sık Sorulan Sorular

Web uygulamamı dağıtım paketinden çalıştırmak için ek ücret var mı?

Yalnızca Azure Depolama Hesabı ile ilişkili maliyet ve geçerli çıkış ücretleri.

Dağıtım paketinden çalıştırmak web uygulamamı nasıl etkiler?

  • Uygulamanızı dağıtım paketinden çalıştırmak salt okunur hale getirir wwwroot/ . Uygulamanız bu dizine yazmaya çalıştığında bir hata alıyor.
  • TAR ve GZIP biçimleri desteklenmez.
  • Bu özellik yerel önbellekle uyumlu değildir.

Sonraki adımlar