Udostępnij za pośrednictwem


Dodawanie usługi Key Vault do aplikacji internetowej przy użyciu usług połączonych programu Visual Studio

W tym samouczku dowiesz się, jak łatwo dodać wszystko, czego potrzebujesz, aby rozpocząć korzystanie z usługi Azure Key Vault do zarządzania sekretami dla projektów internetowych w programie Visual Studio, niezależnie od tego, czy używasz ASP.NET Core, czy dowolnego projektu ASP.NET. Korzystając z funkcji Usługi połączone w programie Visual Studio, program Visual Studio może automatycznie dodawać wszystkie pakiety NuGet i ustawienia konfiguracji potrzebne do nawiązania połączenia z usługą Key Vault na platformie Azure.

Warunki wstępne

Dodawanie obsługi usługi Key Vault do projektu

Przed rozpoczęciem upewnij się, że logujesz się do programu Visual Studio. Zaloguj się przy użyciu tego samego konta, którego używasz dla subskrypcji platformy Azure. Następnie otwórz projekt internetowy ASP.NET 4.7.1 lub nowszy albo ASP.NET Core i wykonaj następujące kroki. Przedstawione kroki dotyczą programu Visual Studio 2022 w wersji 17.4. Przepływ może być nieco inny w przypadku innych wersji programu Visual Studio.

  1. W Eksploratorze rozwiązań kliknij prawym przyciskiem myszy projekt, do którego chcesz dodać obsługę usługi Key Vault, a następnie wybierz pozycję Dodaj>Usługa połączona, lub kliknij prawym przyciskiem myszy na węźle Usługi połączone i wybierz Dodaj.

    Jeśli nie widzisz węzła usług połączonych, wybierz pozycję project>Connected Services>Dodaj.

  2. W obszarze Zależności usługiwybierz ikonę +. Zostanie wyświetlona strona Połączona usługa z usługami, które można dodać do projektu.

  3. W menu dostępnych usług wybierz pozycję Azure Key Vault i kliknij przycisk Dalej.

    zrzut ekranu przedstawiający ekran Usługi połączone z opcją wybrania usługi Azure Key Vault.

  4. Wybierz subskrypcję, której chcesz użyć, a następnie jeśli masz już magazyn kluczy, którego chcesz użyć, wybierz ją i kliknij przycisk Dalej.

    Zrzut ekranu przedstawiający pozycję Wybierz subskrypcję.

  5. Jeśli nie masz istniejącej usługi Key Vault lub jeśli potrzebujesz magazynu kluczy, który można ustawić z różnymi uprawnieniami niż istniejący, kliknij pozycję Utwórz nową usługę Key Vault. Zostanie wyświetlony monit o podanie grupy zasobów, lokalizacji i jednostki SKU.

    zrzut ekranu przedstawiający ekran

  6. Na ekranie Konfigurowanie usługi Key Vault można zmienić nazwę zmiennej środowiskowej, która odwołuje się do identyfikatora URI usługi Key Vault. Ciąg połączenia nie jest tutaj przechowywany; jest przechowywany w magazynie kluczy.

    zrzut ekranu przedstawiający ekran Łączenie z usługą Azure Key Vault.

    Uwaga

    Aby zwiększyć bezpieczeństwo, w programie Visual Studio 17.12 lub nowszym ten krok tworzy nazwę ustawienia połączenia; poprzednie wersje tworzą parametry połączenia. Parametry połączenia przechowywane lokalnie mogą prowadzić do zagrożenia bezpieczeństwa, jeśli są przypadkowo narażone.

  7. Kliknij przycisk Dalej do momentu wyświetlenia podsumowania zmian, a następnie Zakończ.

Przed rozpoczęciem upewnij się, że logujesz się do programu Visual Studio. Zaloguj się przy użyciu tego samego konta, którego używasz dla subskrypcji platformy Azure. Następnie otwórz projekt internetowy ASP.NET 4.7.1 lub nowszy albo ASP.NET Core i wykonaj następujące kroki.

  1. W Eksploratorze Rozwiązań kliknij prawym przyciskiem myszy projekt, do którego chcesz dodać obsługę Key Vault, a następnie wybierz pozycję Dodaj>Połączoną Usługę, lub kliknij prawym przyciskiem myszy węzeł Usług Połączonych i wybierz Dodaj.

    Jeśli nie widzisz węzła usług połączonych, wybierz pozycję projekt>Usługi Połączone>Dodaj.

  2. W sekcji Zależności usługiwybierz ikonę +. Zostanie wyświetlona strona Połączona usługa z usługami, które można dodać do projektu.

  3. W dostępnych w menu usługach wybierz pozycję Azure Key Vault i kliknij przycisk Dalej.

    Zrzut ekranu przedstawiający ekran Połączone Usługi i opcję wybrania usługi Azure Key Vault.

  4. Wybierz subskrypcję, której chcesz użyć, a następnie, jeśli masz już magazyn kluczy, którego chcesz użyć, wybierz go i kliknij przycisk Dalej.

    Zrzut ekranu przedstawiający Wybierz subskrypcję.

  5. Jeśli nie masz istniejącej usługi Key Vault, kliknij pozycję Utwórz nową usługę Key Vault. Zostanie wyświetlony monit o podanie grupy zasobów, lokalizacji i jednostki SKU.

    zrzut ekranu przedstawiający ekran

  6. Na ekranie Konfigurowanie usługi Key Vault można zmienić nazwę zmiennej środowiskowej, która odwołuje się do identyfikatora URI usługi Key Vault. Parametry połączenia nie są tutaj przechowywane; są one przechowywane w magazynie kluczy.

    Zrzut ekranu przedstawiający ekran

  7. Kliknij przycisk Dalej, aby przejrzeć podsumowanie zmian, a następnie Zakończ.

Teraz nawiązane jest połączenie z usługą Key Vault i możesz uzyskać dostęp do swoich tajemnic w swoim kodzie. Jeśli dopiero co utworzyłeś nowy magazyn kluczy, przetestuj go, tworząc sekret, do którego można się odwoływać w kodzie. Wpis tajny można utworzyć przy użyciu witryny Azure Portal, programu PowerShelllub interfejsu wiersza polecenia platformy Azure .

Zobacz przykłady kodu dotyczące pracy z wpisami tajnymi w bibliotece klienta Azure Key Vault Secrets dla platformy .NET — przykłady kodu.

Konfigurowanie dostępu do magazynu kluczy

Jeśli wykonano czynności opisane w tym samouczku z programem Visual Studio 2022 w wersji 17.11 lub starszej, uprawnienia usługi Key Vault są skonfigurowane do uruchamiania z własną subskrypcją platformy Azure, ale może to nie być pożądane w scenariuszu produkcyjnym. Tożsamość zarządzaną można utworzyć, aby zarządzać dostępem usługi Key Vault dla aplikacji. Zobacz Jak uwierzytelniać się w usłudze Key Vault i Przypisywanie zasad dostępu usługi Key Vault.

Jeśli magazyn kluczy jest uruchomiony na innym koncie Microsoft niż ten, który jest zalogowany w programie Visual Studio (na przykład magazyn kluczy jest uruchomiony na koncie służbowym, ale program Visual Studio korzysta z twojego konta prywatnego), zostanie wyświetlony błąd w pliku Program.cs, że program Visual Studio nie może uzyskać dostępu do magazynu kluczy. Aby rozwiązać ten problem, przejdź do Azure portal, otwórz magazyn kluczy i wybierz pozycję Kontrola dostępu (IAM) w celu ustawienia uprawnień. Zobacz Zapewnianie dostępu do kluczy, certyfikatów i wpisów tajnych usługi Key Vault za pomocąkontroli dostępu opartej na rolach (RBAC) platformy Azure.

Notatka

Starsze magazyny kluczy mogą używać starszego modelu zasad dostępu. Zaleca się migrowanie starszych magazynów kluczy do korzystania z Azure RBAC. Zobacz kontrola dostępu oparta na rolach (RBAC) platformy Azure a zasady dostępu.

Następne kroki

Dowiedz się więcej na temat programowania w usłudze Key Vault, czytając Przewodnik dewelopera usługi Key Vault.

Jeśli Twoim celem jest przechowywanie konfiguracji dla aplikacji ASP.NET Core w usłudze Azure Key Vault, zobacz Dostawca konfiguracji usługi Azure Key Vault w ASP.NET Core.