Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Z tego samouczka dowiesz się, jak zaimplementować odwołania usługi Key Vault w aplikacji języka Python przy użyciu usługi App Configuration. Jest ona oparta na aplikacji internetowej wprowadzonej w przewodniku Szybki start. Przed kontynuowaniem ukończ najpierw tworzenie aplikacji w języku Python za pomocą usługi App Configuration .
W tym poradniku nauczysz się, jak:
- Utwórz klucz usługi App Configuration, który odwołuje się do wartości przechowywanej w usłudze Key Vault.
- Uzyskaj dostęp do wartości tego klucza z poziomu aplikacji w języku Python.
Wymagania wstępne
- Subskrypcja platformy Azure — utwórz jedną bezpłatnie
- Python 3.8 lub nowszy — aby uzyskać informacje na temat konfigurowania języka Python w systemie Windows, zobacz dokumentację języka Python w systemie Windows
- Zakończ szybki start Tworzenie aplikacji Python przy użyciu App Configuration.
Stwórz magazyn kluczy
Zaloguj się do witryny Azure Portal, a następnie wybierz pozycję Utwórz zasób.
W polu wyszukiwania wprowadź Key Vault. Na liście wyników wybierz pozycję Key Vault.
Na stronie Key Vault wybierz pozycję Utwórz.
Na stronie Tworzenie magazynu kluczy wprowadź następujące informacje:
- W obszarze Subskrypcja: wybierz subskrypcję.
- W polu Grupa zasobów: wprowadź nazwę istniejącej grupy zasobów lub wybierz pozycję Utwórz nową i wprowadź nazwę grupy zasobów.
- W polu Nazwa magazynu kluczy: wprowadź unikatową nazwę.
- W polu Region: wybierz lokalizację.
W przypadku innych opcji użyj wartości domyślnych.
Wybierz opcję Recenzja + utwórz.
Po zweryfikowaniu i wyświetleniu danych wejściowych przez system wybierz pozycję Utwórz.
Na tym etapie Twoje konto Azure jest jedynym autoryzowanym do dostępu do tego nowego skarbca.
Dodaj tajemnicę do Key Vault
Dodaj tajemnicę do magazynu, aby przetestować pobieranie Key Vault. Sekret nazywa się Message, a jego wartość to "Witaj z usługi Key Vault".
W menu zasobów usługi Key Vault wybierz pozycję Obiekty>Sekrety.
Wybierz Generuj/Import.
W oknie dialogowym Tworzenie sekretu wprowadź następujące wartości:
- W polu Opcje przekazywania wprowadź Manual.
- W polu Nazwa: wprowadź komunikat.
- W polu Wartość tajna: wprowadź Hello from Key Vault.
W przypadku innych opcji użyj wartości domyślnych.
Wybierz Utwórz.
Dodawanie odwołania do usługi Key Vault do usługi App Configuration
Zaloguj się do portalu Azure. Wybierz Wszystkie zasoby, a następnie wybierz magazyn usługi App Configuration.
Wybierz pozycję Eksplorator konfiguracji.
Wybierz + Utwórz>odwołanie do magazynu kluczy, a następnie podaj następujące wartości:
- Klucz: wprowadź TestApp:Settings:KeyVaultMessage.
- Etykieta: pozostaw tę wartość pustą.
- Subskrypcja, grupa zasobów i magazyn kluczy: wprowadź wartości odpowiadające magazynowi kluczy utworzonemu w poprzedniej sekcji.
- Wpis tajny: wybierz wpis tajny o nazwie Komunikat utworzony w poprzedniej sekcji.
Udzielanie aplikacji dostępu do usługi Key Vault
Aplikacja używa DefaultAzureCredential do uwierzytelniania zarówno w App Configuration, jak i w Key Vault. To poświadczenie działa automatycznie z tożsamościami zarządzanymi w Azure, oraz z poświadczeniami deweloperskimi lokalnie.
Udziel swojej tożsamości dostępu do Key Vault. Przypisz rolę Użytkownik tajnych danych Key Vault do konta użytkownika lub tożsamości zarządzanej.
az role assignment create --role "Key Vault Secrets User" --scope /subscriptions/<SubscriptionId>/resourceGroups/<ResourceGroupName>/providers/Microsoft.KeyVault/vaults/<KeyVaultName> --assignee <AzureAdUserOrManagedIdentity>Udziel tożsamości dostępu do usługi App Configuration. Przypisz rolę Czytelnik danych konfiguracji aplikacji :
az role assignment create --role "App Configuration Data Reader" --scope /subscriptions/<SubscriptionId>/resourceGroups/<ResourceGroupName>/providers/Microsoft.AppConfiguration/configurationStores/<AppConfigurationStoreName> --assignee <AzureAdUserOrManagedIdentity>
Zaktualizuj swój kod, aby użyć odwołania do Key Vault
Zainstaluj wymagane pakiety, uruchamiając następujące polecenie:
pip install azure-appconfiguration-provider azure-identityUtwórz zmienną środowiskową o nazwie AZURE_APPCONFIG_ENDPOINT. Ustaw wartość tego parametru na punkt końcowy magazynu konfiguracji aplikacji. Punkt końcowy można znaleźć w panelu Przegląd w portalu Azure.
setx AZURE_APPCONFIG_ENDPOINT "endpoint-of-your-app-configuration-store"Uruchom ponownie wiersz polecenia, aby zezwolić na wprowadzenie zmiany.
Zaktualizuj plik aplikacji języka Python, aby załadować odwołania do usługi Key Vault. Utwórz lub zaktualizuj plik o nazwie app.py:
from azure.appconfiguration.provider import load from azure.identity import DefaultAzureCredential import os endpoint = os.environ.get("AZURE_APPCONFIG_ENDPOINT") credential = DefaultAzureCredential() # Connect to Azure App Configuration and resolve Key Vault references. config = load( endpoint=endpoint, credential=credential, keyvault_credential=credential, ) # Access configuration values, including resolved Key Vault references. print(config["TestApp:Settings:KeyVaultMessage"])Parametr
keyvault_credentialinformuje dostawcę o użyciu podanego poświadczenia podczas rozpoznawania odwołań usługi Key Vault. To samoDefaultAzureCredentialwystąpienie jest używane zarówno do uwierzytelniania usługi App Configuration, jak i usługi Key Vault.Uwaga / Notatka
Jeśli usługa Key Vault odwołuje się do wielu magazynów kluczy, które wymagają różnych poświadczeń, możesz użyć parametru
keyvault_client_configs, aby podać poświadczenia dla magazynu. Aby uzyskać więcej informacji, zobacz dokumentację dostawcy języka Python.Uruchom aplikację:
python app.pyZostanie wyświetlony komunikat wprowadzony w usłudze App Configuration. Zobaczysz również komunikat, który wprowadziłeś w usłudze Key Vault, rozwiązany za pomocą odwołania do Key Vault.
Uprzątnij zasoby
Jeśli nie chcesz nadal korzystać z zasobów utworzonych w tym artykule, usuń utworzoną tutaj grupę zasobów, aby uniknąć naliczania opłat.
Ważna
Usunięcie grupy zasobów jest nieodwracalne. Grupa zasobów i wszystkie zasoby w niej są trwale usuwane. Upewnij się, że nie usuniesz przypadkowo niewłaściwej grupy zasobów lub zasobów. Jeśli zasoby dla tego artykułu zostały utworzone w grupie zasobów zawierającej inne zasoby, które chcesz zachować, usuń każdy zasób oddzielnie z odpowiedniego okienka zamiast usuwać grupę zasobów.
- Zaloguj się do portalu Azure i wybierz pozycję Grupy zasobów.
- W polu Filtruj według nazwy wprowadź nazwę grupy zasobów.
- Na liście wyników wybierz nazwę grupy zasobów, aby wyświetlić przegląd.
- Wybierz pozycję Usuń grupę zasobów.
- Poproszono Cię o potwierdzenie usunięcia grupy zasobów. Wprowadź nazwę grupy zasobów, aby potwierdzić, a następnie wybierz pozycję Usuń.
Po kilku chwilach grupa zasobów i wszystkie jej zasoby zostaną usunięte.
Następne kroki
W tym samouczku utworzono klucz konfiguracji aplikacji, który odwołuje się do wartości znajdującej się w usłudze Key Vault. Aby dowiedzieć się więcej na temat dostawcy języka Python dla usługi Azure App Configuration, zobacz dokumentację referencyjną dostawcy języka Python.