Udostępnij za pośrednictwem


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

Z tego samouczka dowiesz się, jak łatwo dodać wszystko, czego potrzebujesz, aby rozpocząć korzystanie z usługi Azure Key Vault w celu zarządzania wpisami tajnymi dla projektów internetowych w programie Visual Studio, niezależnie od tego, czy używasz ASP.NET Core, czy dowolnego typu 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.

Wymagania 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 Eksplorator rozwiązań kliknij prawym przyciskiem myszy projekt, do którego chcesz dodać obsługę usługi Key Vault, a następnie wybierz polecenie Dodaj>połączoną usługę lub kliknij prawym przyciskiem myszy węzeł Połączone usługi, a następnie wybierz polecenie Dodaj.

    Jeśli nie widzisz węzła Usługi połączone, wybierz pozycję Project Connected Services Add (Dodaj połączone usługi>projektu).>

  2. W obszarze Zależności usługi wybierz ikonę + . Zostanie wyświetlona strona Usługa połączona zawierająca usługi, które możesz 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 usługi Key Vault, którą możesz ustawić z różnymi uprawnieniami niż istniejąca, kliknij pozycję Utwórz nowy magazyn kluczy. 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 jest tutaj przechowywany; jest on przechowywany w magazynie kluczy.

    Zrzut ekranu przedstawiający ekran Nawiązywanie połączenia 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, aż zobaczysz podsumowanie 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 Eksplorator rozwiązań kliknij prawym przyciskiem myszy projekt, do którego chcesz dodać obsługę usługi Key Vault, a następnie wybierz polecenie Dodaj>połączoną usługę lub kliknij prawym przyciskiem myszy węzeł Połączone usługi, a następnie wybierz polecenie Dodaj.

    Jeśli nie widzisz węzła Usługi połączone, wybierz pozycję Project Connected Services Add (Dodaj połączone usługi>projektu).>

  2. W obszarze Zależności usługi wybierz ikonę + . Zostanie wyświetlona strona Usługa połączona zawierająca usługi, które możesz dodać do projektu.

  3. W menu dostępnych usług 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 ją i kliknij przycisk Dalej.

    Zrzut ekranu przedstawiający pozycję Wybierz subskrypcję.

  5. Jeśli nie masz istniejącej usługi Key Vault, kliknij pozycję Utwórz nowy magazyn kluczy. 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 jest tutaj przechowywany; jest on przechowywany w magazynie kluczy.

    Zrzut ekranu przedstawiający ekran Nawiązywanie połączenia z usługą Azure Key Vault.

  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 wpisów tajnych w kodzie. Jeśli właśnie utworzono nowy magazyn kluczy, przetestuj go, tworząc wpis tajny, do którego można odwoływać się w kodzie. Wpis tajny można utworzyć przy użyciu witryny Azure Portal, programu PowerShell lub interfejsu wiersza polecenia platformy Azure.

Zobacz przykłady kodu dotyczące pracy z wpisami tajnymi w bibliotece klienta wpisów tajnych usługi Azure Key Vault 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 How to Authenticate to Key Vault (Jak uwierzytelniać się w usłudze Key Vault) i Assign a Key Vault access policy (Przypisywanie zasad dostępu do 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 witryny Azure Portal, otwórz magazyn kluczy i wybierz pozycję Kontrola dostępu (zarządzanie dostępem i tożsamościami), aby ustawić uprawnienia. 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.

Uwaga

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

Następne kroki

Dowiedz się więcej o tworzeniu usługi Key Vault, czytając przewodnik dewelopera usługi Key Vault.

Jeśli twoim celem jest przechowywanie konfiguracji aplikacji ASP.NET Core w magazynie kluczy platformy Azure, zobacz Dostawca konfiguracji usługi Azure Key Vault w usłudze ASP.NET Core.