Zabezpieczanie wpisów tajnych uwierzytelniania w usłudze Azure Key Vault

Podczas konfigurowania niestandardowych dostawców uwierzytelniania warto przechowywać wpisy tajne połączeń w usłudze Azure Key Vault. W tym artykule pokazano, jak przy użyciu tożsamości zarządzanej udzielić usłudze Azure Static Web Apps dostępu do usługi Key Vault na potrzeby niestandardowych wpisów tajnych uwierzytelniania.

Uwaga

Funkcje bezserwerowe platformy Azure nie obsługują bezpośredniej integracji z usługą Key Vault. Jeśli potrzebujesz integracji usługi Key Vault z aplikacją funkcji zarządzanej, musisz zaimplementować dostęp usługi Key Vault do kodu aplikacji.

Wpisy tajne zabezpieczeń wymagają wprowadzenia następujących elementów.

  • Utwórz tożsamość przypisaną przez system w wystąpieniu usługi Static Web Apps.
  • Udziel tożsamości dostępu do wpisu tajnego usługi Key Vault.
  • Odwołuj się do wpisu tajnego usługi Key Vault z ustawień aplikacji Static Web Apps.

W tym artykule pokazano, jak skonfigurować każdy z tych elementów w środowisku produkcyjnym na potrzeby tworzenia własnych aplikacji funkcji.

Integracja z usługą Key Vault nie jest dostępna dla następujących elementów:

Uwaga

Korzystanie z tożsamości zarządzanej jest dostępne tylko w planie usługi Azure Static Web Apps w warstwie Standardowa.

Wymagania wstępne

  • Istniejąca witryna usługi Azure Static Web Apps korzystająca z funkcji bring your own functions.
  • Istniejący zasób usługi Key Vault z wartością wpisu tajnego.

Tworzenie tożsamości

  1. Otwórz witrynę Static Web Apps w witrynie Azure Portal.

  2. W menu Ustawienia wybierz pozycję Tożsamość.

  3. Wybierz kartę Przypisane przez system.

  4. W obszarze Etykieta stanu wybierz pozycję Włączone.

  5. Wybierz pozycję Zapisz.

    Add system-assigned identity

  6. Po wyświetleniu okna dialogowego potwierdzenia wybierz pozycję Tak.

    Confirm identity assignment.

Teraz możesz dodać zasady dostępu, aby umożliwić statycznej aplikacji internetowej odczytywanie wpisów tajnych usługi Key Vault.

Dodawanie zasad dostępu usługi Key Vault

  1. Otwórz zasób usługi Key Vault w witrynie Azure Portal.

  2. W menu Ustawienia wybierz pozycję Zasady dostępu.

  3. Wybierz link Dodaj zasady dostępu.

  4. Z listy rozwijanej Uprawnienia wpisu tajnego wybierz pozycję Pobierz.

  5. Obok etykiety Wybierz nazwę główną wybierz link Brak wybrany.

  6. W polu wyszukiwania wyszukaj nazwę aplikacji Static Web Apps.

  7. Wybierz element listy zgodny z nazwą aplikacji.

  8. Wybierz pozycję Wybierz.

  9. Wybierz opcję Dodaj.

  10. Wybierz pozycję Zapisz.

    Save Key Vault access policy

Zasady dostępu są teraz zapisywane w usłudze Key Vault. Następnie uzyskaj dostęp do identyfikatora URI wpisu tajnego, który ma być używany podczas kojarzenia statycznej aplikacji internetowej z zasobem usługi Key Vault.

  1. W menu Ustawienia wybierz pozycję Wpisy tajne.

  2. Wybierz odpowiedni wpis tajny z listy.

  3. Wybierz odpowiednią wersję wpisu tajnego z listy.

  4. Wybierz pozycję Kopiuj na końcu pola tekstowego Identyfikator wpisu tajnego, aby skopiować wartość identyfikatora URI wpisu tajnego do schowka.

  5. Wklej tę wartość do edytora tekstów do późniejszego użycia.

Dodawanie ustawienia aplikacji

  1. Otwórz witrynę Static Web Apps w witrynie Azure Portal.

  2. W menu Ustawienia wybierz pozycję Konfiguracja.

  3. W sekcji Ustawienia aplikacji wybierz pozycję Dodaj.

  4. Wprowadź nazwę w polu tekstowym w polu Nazwa .

  5. Określ wartość wpisu tajnego w polu tekstowym dla pola Wartość .

    Wartość wpisu tajnego jest złożona z kilku różnych wartości. Poniższy szablon przedstawia sposób tworzenia końcowego ciągu.

    @Microsoft.KeyVault(SecretUri=<YOUR-KEY-VAULT-SECRET-URI>)
    

    Na przykład końcowy ciąg będzie wyglądać podobnie do następującego przykładu:

    @Microsoft.KeyVault(SecretUri=https://myvault.vault.azure.net/secrets/mysecret/)
    

    Inna możliwość:

    @Microsoft.KeyVault(VaultName=myvault;SecretName=mysecret)
    

    Aby utworzyć pełną wartość wpisu tajnego, wykonaj następujące kroki.

  6. Skopiuj szablon z góry i wklej go do edytora tekstów.

  7. Zastąp <YOUR-KEY-VAULT-SECRET-URI> element wartością identyfikatora URI usługi Key Vault, którą wcześniej odłożysz.

  8. Skopiuj nową wartość pełnego ciągu.

  9. Wklej wartość w polu tekstowym pola Wartość .

  10. Wybierz przycisk OK.

  11. Wybierz pozycję Zapisz w górnej części paska narzędzi Ustawienia aplikacji.

    Save application settings

Teraz, gdy konfiguracja uwierzytelniania niestandardowego odwołuje się do nowo utworzonego ustawienia aplikacji, wartość zostanie wyodrębniona z usługi Azure Key Vault przy użyciu tożsamości statycznej aplikacji internetowej.

Następne kroki