Titkos kulcsok és tanúsítványok automatikus betöltése a Key Vaultból
Az alkalmazáskonfiguráció és a Key Vault számos alkalmazásban egymás mellett használt kiegészítő szolgáltatások. Az Alkalmazáskonfiguráció segítségével együtt használhatja a szolgáltatásokat úgy, hogy kulcsokat hoz létre az App Configuration Store-ban, amelyek a Key Vaultban tárolt titkos kulcsokra vagy tanúsítványokra hivatkoznak. Mivel a Key Vault titkos kulcsként tárolja a tanúsítvány nyilvános és titkos kulcspárját, az alkalmazás bármilyen tanúsítványt lekérhet titkos kulcsként a Key Vaultból.
Jó biztonsági gyakorlatként a titkos kulcsokat és a tanúsítványokat rendszeresen el kell forgatni. Miután elforgatták őket a Key Vaultban, azt szeretné, hogy az alkalmazás vegye fel a legújabb titkos és tanúsítványértékeket. Ezt kétféleképpen érheti el az alkalmazás újraindítása nélkül:
- Frissítsen egy sentinel-kulcsértéket a teljes konfiguráció frissítésének aktiválásához, ezáltal újra betöltve az összes Key Vault-titkos kulcsot és tanúsítványt. További információ: dinamikus konfiguráció használata ASP.NET Core-alkalmazásokban.
- Bizonyos titkos kulcsokat és tanúsítványokat rendszeresen újra betölthet a Key Vaultból.
Az első beállításnál frissítenie kell a sentinel kulcs-értékét az Alkalmazáskonfigurációban, amikor titkos kulcsokat és tanúsítványokat forgat a Key Vaultban. Ez a módszer akkor működik jól, ha azonnal újra be szeretné terhelni a titkos kulcsokat és tanúsítványokat az alkalmazásban. Ha azonban a titkos kulcsok és tanúsítványok automatikusan forognak a Key Vaultban, az alkalmazás hibákat tapasztalhat, ha nem frissíti időben a sentinel kulcs értékét. A második lehetőség lehetővé teszi a folyamat teljes automatizálását. Az alkalmazást úgy konfigurálhatja, hogy a kulcstartóból újra betöltse a titkos kulcsokat és a tanúsítványokat a rotálás időpontjától számított elfogadható késleltetésen belül. Ez az oktatóanyag végigvezeti a második lehetőségen.
Előfeltételek
Ez az oktatóanyag bemutatja, hogyan állíthatja be az alkalmazást a titkos kulcsok és tanúsítványok automatikus újratöltésére a Key Vaultból. A key vault-referenciák kódban való implementálására szolgáló oktatóanyagra épül. A folytatás előtt fejezze be az oktatóanyagot : Először használja a Key Vault-hivatkozásokat egy ASP.NET Core-alkalmazásban .
Microsoft.Azure.AppConfiguration.AspNetCore csomag v4.4.0 vagy újabb.
Automatikusan forgó tanúsítvány hozzáadása a Key Vaulthoz
Kövesse az oktatóanyagot: A Tanúsítvány automatikus elforgatásának konfigurálása a Key Vaultban egy ExampleCertificate nevű automatikusan forgó tanúsítvány hozzáadásához az előző oktatóanyagban létrehozott Key Vaulthoz.
Hivatkozás hozzáadása a Key Vault-tanúsítványhoz az Alkalmazáskonfigurációban
Az Azure Portalon válassza a Minden erőforrás lehetőséget, majd válassza ki az előző oktatóanyagban létrehozott App Configuration Store-példányt.
Válassza a Configuration Explorer lehetőséget.
Válassza a + Kulcstartó létrehozása>referenciát, majd adja meg a következő értékeket:
- Kulcs: Válassza a TestApp:Settings:KeyVaultCertificate lehetőséget.
- Címke: Hagyja üresen ezt az értéket.
- Előfizetés, erőforráscsoport és Key Vault: Adja meg az előző oktatóanyagban létrehozott Key Vaultnak megfelelő értékeket.
- Titkos kód: Válassza ki az előző szakaszban létrehozott ExampleCertificate nevű titkos kulcsot.
- Titkos verzió: Legújabb verzió.
Feljegyzés
Ha egy adott verzióra hivatkozik, a titkos kód vagy a tanúsítvány Key Vaultból való újbóli betöltése mindig ugyanazt az értéket adja vissza.
Kód frissítése a Key Vault titkos kulcsainak és tanúsítványainak újratöltéséhez
A Program.cs fájlban frissítse a AddAzureAppConfiguration
metódust, hogy beállítson egy frissítési időközt a Key Vault-tanúsítványhoz a SetSecretRefreshInterval
metódus használatával. Ezzel a módosítással az alkalmazás 12 óránként újra betölti az ExampleCertificate nyilvános-privát kulcspárját.
config.AddAzureAppConfiguration(options =>
{
options.Connect(settings["ConnectionStrings:AppConfig"])
.ConfigureKeyVault(kv =>
{
kv.SetCredential(new DefaultAzureCredential());
kv.SetSecretRefreshInterval("TestApp:Settings:KeyVaultCertificate", TimeSpan.FromHours(12));
});
});
A metódus első argumentuma SetSecretRefreshInterval
az Alkalmazáskonfiguráció Key Vault-hivatkozásának kulcsa. Ez az argumentum nem kötelező. Ha a kulcsparaméter nincs megadva, a frissítési időköz azokra a titkos kulcsokra és tanúsítványokra vonatkozik, amelyek nem rendelkeznek egyéni frissítési időközökkel.
A frissítési időköz határozza meg, hogy a titkos kulcsok és tanúsítványok milyen gyakorisággal töltődjenek be a Key Vaultból, függetlenül attól, hogy a Key Vaultban vagy az alkalmazáskonfigurációban milyen értékeket módosítanak. Ha újra szeretné betölteni a titkos kulcsokat és a tanúsítványokat, amikor az értékük megváltozik az ConfigureRefresh
Alkalmazáskonfigurációban, a módszerrel figyelheti őket. További információ: dinamikus konfiguráció használata ASP.NET Core-alkalmazásokban.
Válassza ki a frissítési időközt az elfogadható késleltetésnek megfelelően, miután a titkos kulcsok és tanúsítványok frissültek a Key Vaultban. Fontos figyelembe venni a Key Vault szolgáltatáskorlátait is, hogy ne legyen szabályozva.
Az erőforrások eltávolítása
Ha nem szeretné folytatni a cikkben létrehozott erőforrások használatát, törölje az itt létrehozott erőforráscsoportot a díjak elkerülése érdekében.
Fontos
Az erőforráscsoport törlése nem vonható vissza. Az erőforráscsoport és a benne lévő összes erőforrás véglegesen törlődik. Győződjön meg arról, hogy nem véletlenül törli a rossz erőforráscsoportot vagy erőforrásokat. Ha a cikk erőforrásait olyan erőforráscsoporton belül hozta létre, amely más megtartani kívánt erőforrásokat tartalmaz, törölje az egyes erőforrásokat a megfelelő panelről az erőforráscsoport törlése helyett.
- Jelentkezzen be az Azure Portalra, és válassza ki az Erőforráscsoportokat.
- A Szűrés név szerint mezőbe írja be az erőforráscsoport nevét.
- Az eredménylistában válassza ki az erőforráscsoport nevét az áttekintés megtekintéséhez.
- Válassza az Erőforráscsoport törlése elemet.
- A rendszer az erőforráscsoport törlésének megerősítését kéri. Adja meg a megerősítéshez az erőforráscsoport nevét, és válassza a Törlés lehetőséget.
Néhány pillanat múlva az erőforráscsoport és annak összes erőforrása törlődik.
Következő lépések
Ebben az oktatóanyagban megtanulta, hogyan állíthatja be az alkalmazást a titkos kulcsok és tanúsítványok automatikus újratöltésére a Key Vaultból. Ha szeretné megtudni, hogyan teheti egyszerűbbé az alkalmazáskonfigurációhoz és a Key Vaulthoz való hozzáférést a felügyelt identitással, folytassa a következő oktatóanyagban.