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.
Ten artykuł zawiera omówienie konfiguracji usługi Microsoft Entra na potrzeby wywoływania interfejsu API platformy Power Platform. Aby uzyskać dostęp do zasobów dostępnych za pośrednictwem interfejsu API platformy Power Platform, musisz uzyskać token elementu nośnego od firmy Microsoft Entra i wysłać go jako nagłówek wraz z każdym żądaniem. W zależności od obsługiwanego typu tożsamości (użytkownika a jednostki usługi) istnieją różne przepływy umożliwiające uzyskanie tego tokenu elementu nośnego zgodnie z opisem w tym artykule.
Aby uzyskać token na okaziciela z odpowiednimi uprawnieniami, należy wykonać następujące kroki:
- Utwórz rejestrację aplikacji w dzierżawie Microsoft Entra
- Konfiguracja uprawnień API
- Konfigurowanie klienta publicznego (opcjonalnie)
- Konfigurowanie certyfikatów i kluczy tajnych (opcjonalnie)
- Poproś o token dostępu
Krok 1. Utwórz rejestrację aplikacji
Przejdź na stronę Rejestracja aplikacji Microsoft Entra i utwórz nową rejestrację. Nadaj aplikacji nazwę i upewnij się, że wybrana jest opcja Pojedyncza dzierżawa. Możesz pominąć konfigurację URI przekierowania.
Krok 2. Konfiguracja uprawnień API
Podczas rejestracji nowej aplikacji przejdź do zakładki Zarządzanie – Uprawnienia API. W sekcji Konfiguruj uprawnienia wybierz Dodaj uprawnienie. W otwartym oknie dialogowym wybierz zakładkę API, których używa moja organizacja, a następnie wyszukaj API Power Platform. Może się pojawić kilka wpisów o nazwie podobnej do tej, więc należy się upewnić, że wybrane zostaną odpowiednie dane z identyfikatorem GUID 8578e004-a5c6-46e7-913e-12f58912df43.
Jeśli podczas wyszukiwania według identyfikatora GUID nie jest widoczny na liście interfejs API Power Platform, możliwe jest, że nadal masz do niego dostęp, ale widoczność nie jest odświeżana. Aby wymusić odświeżenie, uruchom następujący skrypt:
#Install the Microsoft Graph PowerShell SDK module
Install-Module Microsoft.Graph -Scope CurrentUser -Repository PSGallery -Force
Connect-MgGraph
New-MgServicePrincipal -AppId 8578e004-a5c6-46e7-913e-12f58912df43 -DisplayName "Power Platform API"
Z tego miejsca musisz wybrać uprawnienia, których potrzebujesz. Są one pogrupowane według obszarów nazw. W przestrzeni nazw są widoczne typy zasobów i akcje, na przykład AppManagement.ApplicationPackages.Read , które dają uprawnienia do odczytu dla pakietów aplikacji. Więcej informacji można znaleźć w artykule Odwołania do uprawnień.
Uwaga
API Power Platform korzysta na razie tylko z uprawnień delegowanych. W aplikacjach, które działają w kontekście użytkownika, żądasz uprawnień delegowanych, używając parametru Zakres. Uprawnienia te delegują uprawnienia zalogowanego użytkownika do twojej aplikacji, pozwalając jej działać jako użytkownik podczas wywoływania punktów końcowych API Power Platform.
W przypadku tożsamości jednostki usługi uprawnienia aplikacji nie są używane. Zamiast tego jednostki usługi są dziś traktowane jak administratorzy Power Platform i muszą być zarejestrowane przez PowerShell – Utwórz jednostkę usługi.
Po dodaniu wymaganych uprawnień do aplikacji wybierz Udziel zgody administratora, aby zakończyć konfigurację. Jest to konieczne w przypadkach, gdy chcesz umożliwić użytkownikom natychmiastowy dostęp do swojej aplikacji, zamiast wymagać interaktywnej zgody. Jeśli możesz wspierać interaktywną zgodę, zalecamy postępowanie zgodnie z Przepływ kodu autoryzacji platformy tożsamości Microsoft i OAuth 2.0.
Krok 3. Konfigurowanie klienta publicznego (opcjonalnie)
Jeśli aplikacja wymaga odczytu i zapisu zasobów w imieniu użytkownika, musisz włączyć ustawienie Klient publiczny. Jest to jedyny sposób akceptowania właściwości nazwy użytkownika i hasła Microsoft Entra ID w treści żądania tokenu. Należy również pamiętać, że jeśli planujesz używać tej funkcji, nie działa w przypadku kont z włączonym uwierzytelnianiem wieloskładnikowego.
Aby włączyć tę funkcję, odwiedź zakładkę Zarządzanie – Uwierzytelnianie. W sekcji Zaawansowane ustawienia ustaw przełącznik Klient publiczny na Tak.
Krok 4. Konfigurowanie certyfikatów i kluczy tajnych (opcjonalnie)
Jeśli aplikacja wymaga odczytu i zapisu zasobów jako własnych — nazywanych również podmiotem usługi — istnieją dwa sposoby uwierzytelniania. Aby użyć certyfikatów, przejdź do zakładki Zarządzanie – Certyfikaty i sekrety. W sekcji Certyfikaty załaduj certyfikat x509, którego będziesz mógł używać do uwierzytelniania. Innym sposobem jest użycie sekcji Klucze tajne do wygenerowania klucza tajnego klienta. Zapisz dane w bezpiecznej lokalizacji, aby można je było używać w ramach potrzeb automatyzacji. Opcje certyfikatu lub tokenu umożliwiają uwierzytelnienie w programie Microsoft Entra i odbieranie tokenu dla tego klienta, który jest przekazany dalej do interfejsów API REST lub programu PowerShell cmdlets.
Krok 5. Poproś o token dostępu
Istnieją dwa sposoby uzyskania tokena na okaziciela dostępu. Jeden z nich jest przeznaczony dla nazwy użytkownika i hasła, a drugi dla jednostki usługi.
Przepływ nazwy użytkownika i hasła
Koniecznie przeczytaj powyższą sekcję klient publiczny. Następnie wyślij żądanie POST przez HTTP do Microsoft Entra ID z nazwą użytkownika i hasłem.
Content-Type: application/x-www-form-urlencoded
Host: login.microsoftonline.com
Accept: application/json
POST https://login.microsoftonline.com/YOUR_TENANT.COM/oauth2/v2.0/token
BODY:
client_id={CLIENT_ID_FROM_AZURE_CLIENT_APP}&scope=https://api.powerplatform.com/.default&username={USER_EMAIL_ADDRESS}&password={PASSWORD}&grant_type=password
Powyższy przykład zawiera symbole zastępcze, które można pobrać z aplikacji klienta w programie Microsoft Entra ID. Otrzymasz odpowiedź, która może służyć do kolejnych wywołań interfejsu API Power Platform.
{
"token_type": "Bearer",
"scope": "https://api.powerplatform.com/AppManagement.ApplicationPackages.Install https://api.powerplatform.com/AppManagement.ApplicationPackages.Read https://api.powerplatform.com/.default",
"expires_in": 4747,
"ext_expires_in": 4747,
"access_token": "eyJ0eXAiOiJKV1QiLCJu..."
}
Użyj wartości access_token w kolejnych wywołaniach interfejsu API Power Platform, używając nagłówka autoryzacji protokołu HTTP.
Przepływ nazwy głównej usługi
Koniecznie przeczytaj powyższą sekcję Certyfikaty i klucze tajne. Następnie wyślij żądanie POST przez HTTP do Microsoft Entra ID z kluczem tajnym klienta. Jest często nazywany uwierzytelnianiem głównym usługi.
Ważne
Można go używać tylko po zarejestrowaniu tego identyfikatora aplikacji klienckiej z Microsoft Power Platform zgodnie z powiązaną dokumentacją PowerShell lub REST.
Content-Type: application/x-www-form-urlencoded
Host: login.microsoftonline.com
Accept: application/json
POST https://login.microsoftonline.com/YOUR_TENANT.COM/oauth2/v2.0/token
BODY:
client_id={CLIENT_ID_FROM_AZURE_CLIENT_APP}&scope=https://api.powerplatform.com/.default&client_secret={SECRET_FROM_AZURE_CLIENT_APP}&grant_type=client_credentials
Powyższy przykład zawiera symbole zastępcze, które można pobrać z aplikacji klienta w programie Microsoft Entra ID. Otrzymasz odpowiedź, która może służyć do kolejnych wywołań interfejsu API Power Platform.
{
"token_type": "Bearer",
"expires_in": 3599,
"ext_expires_in": 3599,
"access_token": "eyJ0eXAiOiJKV1..."
}
Użyj wartości access_token w kolejnych wywołaniach interfejsu API Power Platform, używając nagłówka autoryzacji protokołu HTTP. Jak wspomniano powyżej, przepływ Główna usługa nie korzysta z uprawnień aplikacji i jest teraz traktowany jako Administrator Power Platform dla wszystkich wywołań.
Treści powiązane
Tworzenie podmiotu głównego usługi za pośrednictwem API (wersja zapoznawcza)
PowerShell – Tworzenie jednostki usługi