Přidání služby Key Vault do webové aplikace pomocí připojených služeb sady Visual Studio
V tomto kurzu se dozvíte, jak snadno přidat vše, co potřebujete ke správě tajných kódů pro webové projekty v sadě Visual Studio, ať už používáte ASP.NET Core, nebo jakýkoli typ projektu ASP.NET. Pomocí funkce Připojené služby v sadě Visual Studio můžete mít sadu Visual Studio automaticky přidávat všechny balíčky NuGet a nastavení konfigurace, které potřebujete pro připojení ke službě Key Vault v Azure.
Podrobnosti o změnách provedených připojenými službami v projektu za účelem povolení služby Key Vault najdete v tématu Připojená služba Key Vault – Co se stalo s mým projektem ASP.NET nebo připojenou službou Key Vault – Co se stalo s mým projektem ASP.NET Core.
Požadavky
- Účet Azure. Pokud nemáte účet Azure, aktivujte si výhody Azure pro předplatitele sady Visual Studio nebo si zaregistrujte bezplatnou zkušební verzi.
- Visual Studio 2019 verze 16.3 nebo novější Stáhněte si ho teď.
Přidání podpory služby Key Vault do projektu
Než začnete, ujistěte se, že jste přihlášeni k sadě Visual Studio. Přihlaste se pomocí stejného účtu, který používáte pro své předplatné Azure. Pak otevřete ASP.NET 4.7.1 nebo novější nebo ASP.NET core webový projekt a proveďte následující kroky. Uvedené kroky jsou určené pro Visual Studio 2022 verze 17.4. Tok se může mírně lišit u jiných verzí sady Visual Studio.
V Průzkumník řešení klikněte pravým tlačítkem myši na projekt, do kterého chcete přidat podporu služby Key Vault, a zvolte Přidat >připojenou službu nebo klikněte pravým tlačítkem na uzel Připojené služby a vyberte Přidat.
Pokud uzel Připojené služby nevidíte, zvolte Přidat připojené služby>projektu.>
V části Závislosti služby zvolte + ikonu. Zobrazí se stránka Připojená služba se službami, které můžete přidat do projektu.
V nabídce dostupných služeb zvolte Azure Key Vault a klikněte na Další.
Vyberte předplatné, které chcete použít, a pokud už máte trezor klíčů, který chcete použít, vyberte ho a klikněte na Další.
Pokud nemáte existující službu Key Vault, klikněte na Vytvořit novou službu Key Vault. Zobrazí se výzva k zadání skupiny prostředků, umístění a skladové položky.
Na obrazovce Konfigurace služby Key Vault můžete změnit název proměnné prostředí, která odkazuje na identifikátor URI služby Key Vault. Připojovací řetězec se tady neukládá. Je uložená v trezoru klíčů.
Kliknutím na tlačítko Další zkontrolujte souhrn změn a potom dokončete.
Teď se naváže připojení ke službě Key Vault a budete mít přístup k tajným kódům v kódu. Pokud jste právě vytvořili nový trezor klíčů, otestujte ho vytvořením tajného kódu, na který můžete odkazovat v kódu. Tajný klíč můžete vytvořit pomocí webu Azure Portal, PowerShellu nebo Azure CLI.
Podívejte se na příklady kódu pro práci s tajnými kódy v klientské knihovně tajných kódů služby Azure Key Vault pro .NET – příklady kódu.
Konfigurace přístupu k trezoru klíčů
Pokud je váš trezor klíčů spuštěný na jiném účtu Microsoft, než je ten, který jste přihlášení k sadě Visual Studio (například trezor klíčů běží na vašem pracovním účtu, ale Visual Studio používá váš soukromý účet), zobrazí se v souboru Program.cs chyba, že Visual Studio nemůže získat přístup k trezoru klíčů. Pokud chcete tento problém vyřešit, přejděte na web Azure Portal, otevřete trezor klíčů a zvolte Řízení přístupu (IAM) a nastavte oprávnění. Viz Poskytnutí přístupu ke klíčům, certifikátům a tajným kódům služby Key Vault pomocí řízení přístupu na základě role v Azure (RBAC).
Poznámka:
Starší trezory klíčů můžou používat starší model zásad přístupu. Doporučuje se migrovat starší trezory klíčů pro použití Azure RBAC. Viz řízení přístupu na základě role v Azure (RBAC) vs. zásady přístupu.
Úprava projektu ASP.NET Core
Tato část identifikuje přesné změny provedené v projektu ASP.NET při přidávání připojené služby trezoru klíčů pomocí sady Visual Studio.
Přidání odkazů pro ASP.NET Core
Ovlivňuje odkazy na soubor projektu .NET a odkazy na balíčky NuGet.
Typ | Reference |
---|---|
NuGet | Microsoft.AspNetCore.AzureKeyVault.HostingStartup |
Přidání souborů pro ASP.NET Core
ConnectedService.json
přidání, které zaznamenává některé informace o poskytovateli připojené služby, verzi a odkaz na dokumentaci.
Změny souboru projektu pro ASP.NET Core
- Přidání skupiny položek připojených služeb a
ConnectedServices.json
souboru.
launchsettings.json změny pro ASP.NET Core
Do profilu expressu Internetová informační služba (IIS) i profilu, který odpovídá názvu webového projektu, jsme přidali následující položky proměnných prostředí:
"environmentVariables": { "ASPNETCORE_HOSTINGSTARTUP__KEYVAULT__CONFIGURATIONENABLED": "true", "ASPNETCORE_HOSTINGSTARTUP__KEYVAULT__CONFIGURATIONVAULT": "<your keyvault URL>" }
Změny v Azure pro ASP.NET Core
- Vytvořili jste skupinu prostředků (nebo použili existující).
- Vytvořili jste trezor klíčů v zadané skupině prostředků.
Úprava projektu ASP.NET Framework
Tato část identifikuje přesné změny provedené v projektu ASP.NET při přidávání připojené služby trezoru klíčů pomocí sady Visual Studio.
Přidání odkazů pro ASP.NET Framework
Ovlivňuje odkazy na soubor projektu .NET a packages.config
(odkazy NuGet).
Typ | Reference |
---|---|
.SÍŤ; NuGet | Azure.Identity |
.SÍŤ; NuGet | Azure.Security.KeyVault.Keys |
.SÍŤ; NuGet | Azure.Security.key trezoru. Tajemství |
Důležité
Ve výchozím nastavení je nainstalovaná služba Azure.Identity 1.1.1, která nepodporuje přihlašovací údaje sady Visual Studio. Odkaz na balíček můžete aktualizovat ručně na verzi 1.2 nebo novější pomocí přihlašovacích údajů sady Visual Studio.
Přidání souborů pro ASP.NET Framework
ConnectedService.json
přidání, které zaznamenává některé informace o poskytovateli připojené služby, verzi a odkaz na dokumentaci.
Změny souboru projektu pro ASP.NET Framework
- Přidání skupiny položek připojených služeb a ConnectedServices.json souboru
- Odkazy na sestavení .NET popsané v části Přidané odkazy .
Další kroky
Pokud jste postupovali podle tohoto kurzu, vaše oprávnění ke službě Key Vault se nastaví tak, aby běžela s vaším vlastním předplatným Azure, ale pro produkční scénář to nemusí být žádoucí. Můžete vytvořit spravovanou identitu pro správu přístupu ke službě Key Vault pro vaši aplikaci. Přečtěte si , jak se ověřit ve službě Key Vault a přiřadit zásady přístupu ke službě Key Vault.
Další informace o vývoji ve službě Key Vault najdete v příručce pro vývojáře služby Key Vault.
Pokud vaším cílem je uložit konfiguraci aplikace ASP.NET Core v trezoru klíčů Azure, přečtěte si o poskytovateli konfigurace služby Azure Key Vault v ASP.NET Core.