Müşteri tarafından yönetilen anahtarları kullanarak bekleyen uygulama verilerinizi şifreleme
İşlev uygulamanızın bekleyen uygulama verilerini şifrelemek için bir Azure Depolama Hesabı ve bir 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 verileriniz Azure'daki bir işlev uygulamasında çalıştırılmadığında burada depolanır.
- 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 dosyanın 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, işlev 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 bir başvuruyla değiştirebilirsiniz. Bu, ek bir güvenlik katmanı sağlayan SAS URL'sini Key Vault şifrelenmiş olarak tutar.
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
Uygulamanıza anahtar kasanıza erişim vermek için şu yönergeleri izleyin:
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>"
Dış URL'ye Key Vault başvurusu olarak değeriyle uygulama ayarını oluşturmak
WEBSITE_RUN_FROM_PACKAGE
için aşağıdakiaz 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>
öncekiaz keyvault secret set
komutun çıkışında olacaktır.
Bu uygulama ayarının güncelleştirilmesi işlev uygulamanızın yeniden başlatılmasına neden olur. Uygulama yeniden başlatıldıktan sonra, Key Vault başvuruyu kullanarak uygulamanın 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. İşlev uygulamasının yanlışlıkla erişimi kaybetmediğinden emin olmak için Key Vault'de SAS URL'sini de güncelleştirmeniz gerekir.
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.
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>"
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>
öncekiaz keyvault secret set
komutun çıkışında olacaktır.
İşlev uygulamasının veri erişimini iptal etme
İşlev uygulamasının depolama hesabına erişimini iptal etmek için iki yöntem vardır.
Azure Depolama hesabının SAS anahtarını döndürme
Depolama hesabının SAS anahtarı döndürülürse işlev uygulaması artık depolama hesabına erişemeyecek, ancak paket dosyasının son indirilen sürümüyle çalışmaya devam edecektir. son indirilen sürümü temizlemek için işlev uygulamasını yeniden başlatın.
İşlev uygulamasının Key Vault erişimini kaldırma
İşlev uygulamasının Key Vault erişimini devre dışı bırakarak işlev uygulamasının site verilerine erişimini iptal edebilirsiniz. Bunu yapmak için işlev 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 bekleme sırasında şifrelenir. İşlev uygulamanız başlatıldığında anahtar kasanızdan SAS URL'sini alır. Son olarak, işlev uygulaması depolama hesabından uygulama dosyalarını yükler.
İşlev 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
İşlev uygulamamı dağıtım paketinden çalıştırmak için ek ücret alınır mı?
Yalnızca Azure Depolama Hesabı ile ilişkili maliyet ve geçerli çıkış ücretleri.
Dağıtım paketinden çalıştırmak işlev 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.