Az inaktív alkalmazásadatok titkosítása ügyfél által felügyelt kulcsokkal

A függvényalkalmazás inaktív alkalmazásadatainak titkosításához egy Azure Storage-fiókra és egy Azure-Key Vault van szükség. Ezeket a szolgáltatásokat akkor használja a rendszer, ha egy központi telepítési csomagból futtatja az alkalmazást.

  • Az Azure Storage titkosítást biztosít inaktív állapotban. Használhat rendszer által biztosított kulcsokat vagy saját, ügyfél által felügyelt kulcsokat. Az alkalmazásadatokat akkor tárolja a rendszer, ha azok nem egy Azure-beli függvényalkalmazásban futnak.
  • Az üzembehelyezési csomagból való futtatás a App Service központi telepítési funkciója. Lehetővé teszi a webhely tartalmának üzembe helyezését egy Azure Storage-fiókból közös hozzáférésű jogosultságkód (SAS) URL-cím használatával.
  • Key Vault hivatkozások a App Service biztonsági funkciói. Lehetővé teszi a titkos kulcsok futásidőben történő importálását alkalmazásbeállításokként. Ezzel titkosíthatja az Azure Storage-fiók SAS URL-címét.

Inaktív titkosítás beállítása

Azure Storage-fiók létrehozása

Először hozzon létre egy Azure Storage-fiókot , és titkosítsa az ügyfél által kezelt kulcsokkal. A tárfiók létrehozása után a Azure Storage Explorer segítségével töltse fel a csomagfájlokat.

Ezután a Storage Explorer használatával hozzon létre SAS-t.

Megjegyzés

Mentse ezt az SAS URL-címet, amelyet később használunk az üzembe helyezési csomag biztonságos eléréséhez futásidőben.

Csomagból való futtatás konfigurálása a tárfiókból

Miután feltöltötte a fájlt a Blob Storage-ba, és rendelkezik SAS URL-címmel a fájlhoz, állítsa az WEBSITE_RUN_FROM_PACKAGE alkalmazásbeállítást SAS URL-címre. Az alábbi példa ezt az Azure CLI használatával teszi:

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

Ha hozzáadja ezt az alkalmazásbeállítást, a függvényalkalmazás újraindul. Az alkalmazás újraindítása után tallózással keresse meg, és győződjön meg arról, hogy az alkalmazás megfelelően elindult az üzembehelyezési csomag használatával. Ha az alkalmazás nem indult el megfelelően, tekintse meg a Futtatás csomagból hibaelhárítási útmutatót.

Az alkalmazásbeállítás titkosítása Key Vault hivatkozásokkal

Most lecserélheti az WEBSITE_RUN_FROM_PACKAGE alkalmazásbeállítás értékét egy Key Vault hivatkozásra az SAS-kódolású URL-címre. Így az SAS URL-cím titkosítva marad Key Vault, ami további biztonsági réteget biztosít.

  1. Az alábbi az keyvault create paranccsal hozzon létre egy Key Vault-példányt.

    az keyvault create --name "Contoso-Vault" --resource-group <group-name> --location eastus    
    
  2. Az alábbi utasításokat követve adjon hozzáférést az alkalmazásnak a key vaulthoz:

  3. A következő az keyvault secret set paranccsal adja hozzá a külső URL-címet titkos kulcsként a kulcstartóhoz:

    az keyvault secret set --vault-name "Contoso-Vault" --name "external-url" --value "<SAS-URL>"    
    
  4. Az alábbi az webapp config appsettings set paranccsal hozza létre az WEBSITE_RUN_FROM_PACKAGE alkalmazásbeállítást a külső URL-címre mutató Key Vault értékével:

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

    A <secret-version> az előző az keyvault secret set parancs kimenetében lesz.

Az alkalmazásbeállítás frissítésekor a függvényalkalmazás újraindul. Az alkalmazás újraindítása után tallózással ellenőrizze, hogy megfelelően elindult-e a Key Vault hivatkozással.

A hozzáférési jogkivonat elforgatása

Ajánlott rendszeresen elforgatni a tárfiók SAS-kulcsát. Annak érdekében, hogy a függvényalkalmazás ne veszítse el véletlenül a hozzáférést, frissítenie kell az SAS URL-címet Key Vault.

  1. Az SAS-kulcs elforgatásához navigáljon a tárfiókhoz a Azure Portal. A Beállítások>Hozzáférési kulcsok területen válassza az ikont az SAS-kulcs elforgatásához.

  2. Másolja ki az új SAS URL-címet, és a következő paranccsal állítsa be a frissített SAS URL-címet a kulcstartóban:

    az keyvault secret set --vault-name "Contoso-Vault" --name "external-url" --value "<SAS-URL>"    
    
  3. Frissítse a Key Vault-referenciát az alkalmazásbeállításban az új titkos kódverzióra:

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

    A <secret-version> az előző az keyvault secret set parancs kimenetében lesz.

A függvényalkalmazás adathozzáférésének visszavonása

A függvényalkalmazás tárfiókhoz való hozzáférésének visszavonására két módszer létezik.

Az Azure Storage-fiók SAS-kulcsának elforgatása

Ha a tárfiók SAS-kulcsa el van forgatva, a függvényalkalmazás többé nem fér hozzá a tárfiókhoz, de továbbra is a csomagfájl utolsó letöltött verziójával fog futni. Indítsa újra a függvényalkalmazást a legutóbb letöltött verzió törléséhez.

A függvényalkalmazás hozzáférésének eltávolítása a Key Vault

A függvényalkalmazás webhelyadatokhoz való hozzáférésének visszavonásához tiltsa le a függvényalkalmazás hozzáférését a Key Vault. Ehhez távolítsa el a függvényalkalmazás identitásának hozzáférési szabályzatát. Ez ugyanaz az identitás, amelyet korábban a Kulcstartó-hivatkozások konfigurálásakor hozott létre.

Összefoglalás

Az alkalmazásfájlok mostantól titkosítva vannak a tárfiókban. Amikor a függvényalkalmazás elindul, lekéri a SAS URL-címet a kulcstartóból. Végül a függvényalkalmazás betölti az alkalmazásfájlokat a tárfiókból.

Ha vissza kell vonnia a függvényalkalmazás tárfiókhoz való hozzáférését, visszavonhatja a kulcstartóhoz való hozzáférést, vagy elforgathatja a tárfiók kulcsait, amelyek mindegyike érvényteleníti az SAS URL-címet.

Gyakori kérdések

Van további díj a függvényalkalmazás futtatásáért az üzembehelyezési csomagból?

Csak az Azure Storage-fiókhoz társított költség és az esetleges kimenő forgalom díjai.

Hogyan befolyásolja az üzembehelyezési csomagból való futtatás a függvényalkalmazásomat?

  • Ha az alkalmazást az üzembehelyezési csomagból futtatja, az írásvédetté válik wwwroot/ . Az alkalmazás hibaüzenetet kap, amikor ebbe a könyvtárba próbál írni.
  • A TAR- és GZIP-formátumok nem támogatottak.
  • Ez a funkció nem kompatibilis a helyi gyorsítótárral.

Következő lépések