Ügyfél által kezelt kulcsok használata az alkalmazáskonfigurációs adatok titkosításához

Azure-alkalmazás Konfiguráció titkosítja a bizalmas adatokat inaktív állapotban. Az ügyfél által felügyelt kulcsok használata fokozott adatvédelmet biztosít azáltal, hogy lehetővé teszi a titkosítási kulcsok kezelését. Felügyelt kulcstitkosítás használatakor az Alkalmazáskonfiguráció minden bizalmas információja titkosítva lesz egy felhasználó által megadott Azure Key Vault-kulccsal. Ez lehetővé teszi a titkosítási kulcs igény szerinti elforgatását. Emellett lehetővé teszi Azure-alkalmazás konfiguráció bizalmas információkhoz való hozzáférésének visszavonását az alkalmazáskonfigurációs példány kulcshoz való hozzáférésének visszavonásával.

Áttekintés

Azure-alkalmazás Konfiguráció titkosítja a bizalmas adatokat inaktív állapotban a Microsoft által biztosított 256 bites AES titkosítási kulccsal. Minden alkalmazáskonfigurációs példány saját titkosítási kulccsal rendelkezik, amelyet a szolgáltatás kezel, és bizalmas információk titkosítására szolgál. A bizalmas információk közé tartoznak a kulcs-érték párokban található értékek. Ha az ügyfél által felügyelt kulcs funkció engedélyezve van, az alkalmazáskonfiguráció egy, az alkalmazáskonfigurációs példányhoz rendelt felügyelt identitást használ a Microsoft Entra-azonosítóval való hitelesítéshez. A felügyelt identitás ezután meghívja az Azure Key Vaultot, és becsomagolja az alkalmazáskonfigurációs példány titkosítási kulcsát. Ezután a rendszer tárolja a burkolt titkosítási kulcsot, és a nem titkosított titkosítási kulcsot egy órán keresztül gyorsítótárazza az Alkalmazáskonfigurációban. Az alkalmazáskonfiguráció óránként frissíti az alkalmazáskonfigurációs példány titkosítási kulcsának nem titkosított verzióját. Ez a folyamat biztosítja a rendelkezésre állást normál üzemeltetési körülmények között.

Fontos

Ha az alkalmazáskonfigurációs példányhoz rendelt identitás már nem jogosult a példány titkosítási kulcsának feloldására, vagy ha a felügyelt kulcs véglegesen törlődik, akkor többé nem lehet visszafejteni az alkalmazáskonfigurációs példányban tárolt bizalmas adatokat. Az Azure Key Vault helyreállítható törlési funkciójával csökkentheti a titkosítási kulcs véletlen törlésének esélyét.

Ha a felhasználók engedélyezik az ügyfél által felügyelt kulcsképességet a Azure-alkalmazás konfigurációs példányon, akkor szabályozhatják a szolgáltatás azon képességét, hogy hozzáférjenek a bizalmas adataikhoz. A felügyelt kulcs gyökértitkosítási kulcsként szolgál. A felhasználók a kulcstartó hozzáférési szabályzatának módosításával visszavonhatják az alkalmazáskonfigurációs példányuk hozzáférését a felügyelt kulcsukhoz. A hozzáférés visszavonása után az alkalmazáskonfiguráció egy órán belül elveszíti a felhasználói adatok visszafejtésének képességét. Ezen a ponton az alkalmazáskonfigurációs példány megtiltja az összes hozzáférési kísérletet. Ez a helyzet akkor állítható helyre, ha ismét hozzáférést ad a szolgáltatásnak a felügyelt kulcshoz. Egy órán belül az alkalmazáskonfiguráció visszafejti a felhasználói adatokat, és normál körülmények között működik.

Feljegyzés

A Azure-alkalmazás konfigurációs adatokat a rendszer legfeljebb 24 órán át tárolja egy elkülönített biztonsági másolatban. Ebbe beletartozik a nem titkosított titkosítási kulcs is. Ezek az adatok nem érhetők el azonnal a szolgáltatás vagy a szolgáltatás csapata számára. Vészhelyzeti visszaállítás esetén Azure-alkalmazás konfiguráció ismét visszavonja magát a felügyelt kulcsadatokból.

Követelmények

A Azure-alkalmazás-konfiguráció ügyfél által felügyelt kulcsképességének sikeres engedélyezéséhez a következő összetevők szükségesek:

  • Standard szintű Azure-alkalmazás konfigurációs példány.
  • Az Azure Key Vaultban engedélyezve van a helyreállítható törlés és a törlés elleni védelem.
  • RSA- vagy RSA-HSM-kulcs a Key Vaultban.
    • A kulcsnak nem szabad lejártnak lennie, engedélyeznie kell, és engedélyeznie kell a tördelési és a tördelési képességeket is.

Miután konfigurálta ezeket az erőforrásokat, kövesse az alábbi lépéseket, hogy a Azure-alkalmazás konfigurációja használhassa a Key Vault-kulcsot:

  1. Hozzárendelhet egy felügyelt identitást a Azure-alkalmazás konfigurációs példányhoz.
  2. Adja meg az identitást GETés UNWRAPWRAPaz engedélyeket a célkulcstartó hozzáférési szabályzatában.

Ügyfél által felügyelt kulcstitkosítás engedélyezése az Alkalmazáskonfigurációs áruházban

  1. Ha nem rendelkezik ilyennel, hozzon létre egy alkalmazáskonfigurációs áruházat a Standard szinten.

  2. Az Azure CLI használatával hozzon létre egy Azure Key Vaultot, amelyen engedélyezve van a törlés elleni védelem. A helyreállítható törlés alapértelmezés szerint engedélyezve van. resource-group-name Mindkettő vault-name felhasználó által biztosított, és egyedinek kell lennie. Ezeket a példákat használjuk contoso-vault és contoso-resource-group használjuk.

    az keyvault create --name contoso-vault --resource-group contoso-resource-group --enable-purge-protection
    
  3. Hozzon létre egy Key Vault-kulcsot. Adjon meg egy egyedi key-name azonosítót ehhez a kulcshoz, és cserélje le a 2. lépésben létrehozott Key Vault (contoso-vault) nevét. Adja meg, hogy előnyben részesíti-e RSA a RSA-HSM titkosítást (RSA-HSM csak a Prémium szinten érhető el).

    az keyvault key create --name key-name --kty {RSA or RSA-HSM} --vault-name contoso-vault
    

    A parancs kimenete a generált kulcs kulcsazonosítóját (kid) jeleníti meg. Jegyezze fel a gyakorlat későbbi részében használni kívánt kulcsazonosítót. A kulcsazonosító űrlapja: https://{my key vault}.vault.azure.net/keys/{key-name}/{key-version}. A kulcsazonosító három fontos összetevőből áll:

    1. Key Vault URI: https://{my key vault}.vault.azure.net
    2. Key Vault-kulcs neve: {key-name}
    3. Key Vault-kulcs verziója: {key-version}
  4. Hozzon létre egy rendszer által hozzárendelt felügyelt identitást az Azure CLI használatával, az előző lépésekben használt alkalmazáskonfigurációs példány és erőforráscsoport nevének helyettesítésével. A felügyelt identitás a felügyelt kulcs eléréséhez lesz használva. contoso-app-config Egy alkalmazáskonfigurációs példány nevét szemléltetjük:

    az appconfig identity assign --name contoso-app-config --resource-group contoso-resource-group --identities [system]
    

    A parancs kimenete tartalmazza a rendszer által hozzárendelt identitás egyszerű azonosítóját ("principalId") és bérlőazonosítóját ("tenandId"). Ezek az azonosítók arra szolgálnak, hogy hozzáférést biztosítsanak az identitásnak a felügyelt kulcshoz.

    {
        "principalId": {Principal Id},
        "tenantId": {Tenant Id},
        "type": "SystemAssigned",
        "userAssignedIdentities": null
    }
    
  5. A Azure-alkalmazás konfigurációs példány felügyelt identitásának hozzáférésre van szüksége a kulcshoz a kulcs érvényesítéséhez, titkosításához és visszafejtéséhez. Az adott műveletkészlet, amelyhez hozzáférésre van szüksége, tartalmazza a következőket: GET, WRAPés UNWRAP kulcsokat. A hozzáférés megadásához az alkalmazáskonfigurációs példány felügyelt identitásának egyszerű azonosítója szükséges. Cserélje le az alább contoso-principalId látható értéket az előző lépésben beszerzett egyszerű azonosítóra. Adjon engedélyt a felügyelt kulcsnak a parancssor használatával:

    az keyvault set-policy -n contoso-vault --object-id contoso-principalId --key-permissions get wrapKey unwrapKey
    
  6. Most, hogy a Azure-alkalmazás konfigurációs példány hozzáfér a felügyelt kulcshoz, az Azure CLI használatával engedélyezheti az ügyfél által felügyelt kulcs funkciót a szolgáltatásban. Jegyezzük fel a kulcslétrehozási lépések során rögzített alábbi tulajdonságokat: key namekey vault URI.

    az appconfig update -g contoso-resource-group -n contoso-app-config --encryption-key-name key-name --encryption-key-version key-version --encryption-key-vault key-vault-Uri
    

A Azure-alkalmazás konfigurációs példánya mostantól az Azure Key Vaultban tárolt ügyfél által felügyelt kulcs használatára van konfigurálva.

Következő lépések

Ebben a cikkben úgy konfigurálta a Azure-alkalmazás konfigurációs példányt, hogy ügyfél által felügyelt kulcsot használjon a titkosításhoz. Ha többet szeretne megtudni arról, hogyan integrálhatja az App Service-t az Azure által felügyelt identitásokkal, folytassa a következő lépéssel.