Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Witamy! Prawdopodobnie nie jest to oczekiwana strona. Chociaż pracujemy nad poprawką, ten link powinien podjąć Cię do odpowiedniego artykułu:
Przepraszamy za niedogodności i doceniamy cierpliwość, podczas gdy pracujemy nad rozwiązaniem tego problemu.
W tym przewodniku szybkiego startu pobierzesz i uruchomisz przykładowy kod, który pokazuje, jak aplikacja Python może uzyskać token dostępu przy użyciu tożsamości aplikacji, aby wywołać interfejs API programu Microsoft Graph i wyświetlić listę użytkowników w katalogu. Przykładowy kod przedstawia sposób uruchamiania zadania nienadzorowanego lub usługi systemu Windows przy użyciu tożsamości aplikacji zamiast tożsamości użytkownika.
Wymagania wstępne
Aby uruchomić ten przykład, potrzebne są następujące elementy:
Pobieranie i konfigurowanie aplikacji Szybki start
Krok 1. Konfigurowanie aplikacji w witrynie Azure Portal
Aby przykładowy kod w tym przewodniku szybkiego startu działał, utwórz klucz tajny klienta i dodaj uprawnienie aplikacji User.Read.All Graph API.
Aplikacja jest skonfigurowana przy użyciu tych atrybutów.
Krok 2. Pobieranie projektu języka Python
Uwaga
Enter_the_Supported_Account_Info_Here
Użytkownik standardowy
Jeśli jesteś użytkownikiem standardowym dzierżawy, poproś Globalnego Administratora o udzielenie zgody administratora na aplikację. Aby to zrobić, udostępnij administratorowi następujący adres URL:
https://login.microsoftonline.com/Enter_the_Tenant_Id_Here/adminconsent?client_id=Enter_the_Application_Id_Here
Krok 4. Uruchamianie aplikacji
Należy zainstalować zależności tego przykładu raz.
pip install -r requirements.txt
Następnie uruchom aplikację za pomocą wiersza polecenia lub konsoli:
python confidential_client_secret_sample.py parameters.json
W konsoli powinien zostać wyświetlony fragment kodu JSON reprezentujący listę użytkowników w katalogu Microsoft Entra.
Ważne
Aplikacja w tym przewodniku Szybki start używa klucza tajnego klienta do identyfikowania się jako klienta poufnego. Ponieważ klucz tajny klienta jest dodawany jako zwykły tekst w plikach projektu, ze względów bezpieczeństwa zaleca się używanie certyfikatu zamiast klucza tajnego klienta, zanim będzie można uznać aplikację za produkcyjną. Aby uzyskać więcej informacji na temat używania certyfikatu, zobacz te instrukcje w tym samym repozytorium GitHub dla tego przykładu, ale w drugim folderze 2-Call-MsGraph-WithCertificate.
Więcej informacji
MSAL Python - biblioteka do autoryzacji aplikacji w języku Python.
Biblioteka MSAL Python to biblioteka używana do logowania użytkowników i żądania tokenów używanych do uzyskiwania dostępu do interfejsu API chronionego przez Platforma tożsamości Microsoft. Jak opisano, ten przewodnik szybkiego startu żąda tokenów przy użyciu tożsamości własnej aplikacji zamiast uprawnień delegowanych. W tym przypadku przepływ uwierzytelniania jest określany jako przepływ OAuth poświadczeń klienta. Aby uzyskać więcej informacji na temat używania biblioteki MSAL Python z aplikacjami demona, zobacz ten artykuł.
Można zainstalować MSAL dla Pythona, uruchamiając następujące polecenie pip.
pip install msal
Inicjowanie biblioteki MSAL
Aby dodać odwołanie do biblioteki MSAL, dodaj następujący kod:
import msal
Następnie zainicjuj bibliotekę MSAL, używając następującego kodu:
app = msal.ConfidentialClientApplication(
config["client_id"], authority=config["authority"],
client_credential=config["secret"])
Gdzie: opis config["secret"]Czy klucz tajny klienta jest tworzony dla aplikacji w witrynie Azure Portal. config["client_id"]Jest identyfikatorem aplikacji (klienta) dla aplikacji zarejestrowanej w witrynie Azure Portal. Tę wartość można znaleźć na stronie Przegląd aplikacji w witrynie Azure Portal. config["authority"]Punkt końcowy usługi STS na potrzeby uwierzytelnienia użytkownika. Zwykle dla chmury publicznej jest to https://login.microsoftonline.com/{tenant}, gdzie {tenant} jest nazwą twojej dzierżawy lub identyfikatorem twojej dzierżawy.
Aby uzyskać więcej informacji, zobacz dokumentację referencyjną ConfidentialClientApplication.
Przesyłanie żądań tokenów
Aby zażądać tokenu przy użyciu tożsamości aplikacji, należy użyć metody AcquireTokenForClient:
result = None
result = app.acquire_token_silent(config["scope"], account=None)
if not result:
logging.info("No suitable token exists in cache. Let's get a new one from Azure AD.")
result = app.acquire_token_for_client(scopes=config["scope"])
Gdzie: opis config["scope"]Zawiera żądane zakresy. W przypadku klientów poufnych należy użyć formatu podobnego do {Application ID URI}/.defaultwskazującego, że żądane zakresy są statycznie zdefiniowane w obiekcie aplikacji ustawionym w witrynie Azure Portal (w przypadku programu Microsoft Graph{Application ID URI}wskazuje wartośćhttps://graph.microsoft.com). W przypadku niestandardowych internetowych interfejsów API{Application ID URI}jest definiowana w sekcji Udostępnij interfejs API w Rejestracje aplikacji w portalu Azure.
Aby uzyskać więcej informacji, zobacz dokumentację referencyjną AcquireTokenForClient.
Pomoc i obsługa techniczna
Jeśli potrzebujesz pomocy, chcesz zgłosić problem lub poznać opcje pomocy technicznej, zobacz Pomoc i obsługa techniczna dla deweloperów.
Następne kroki
Aby dowiedzieć się więcej na temat programów działających w tle, odwiedź stronę docelową scenariusza.