Podeli preko


Potvrda identiteta

Ovaj članak pruža pregled podešavanja programa Microsoft Entra za pozivanje Power Platform API-ja. Da biste pristupili resursima dostupnim putem Power Platform API-ja, morate da dobijete token za nosioca od korporacije Microsoft Entra i pošaljete ga kao zaglavlje zajedno sa svakim zahtevom. U zavisnosti od tipa identiteta koji podržavate (korisnički u odnosu na principal usluge) postoje različiti tokovi za dobijanje ovog tokena za nosioca, kao što je opisano u ovom članku.

Za dobijanje tokena nosioca sa ispravnim dozvolama, potrebni su sledeći koraci:

  1. Kreirajte registraciju aplikacije u svom Microsoft Entra stanaru
  2. Konfigurisanje dozvola za API
  3. Konfigurisanje javnog klijenta (opcionalno)
  4. Konfigurisanje certifikata i tajni (opcionalno)
  5. Zatražite token za pristup

Korak 1. Kreiranje registracije aplikacije

Idite na stranicu za registraciju Microsoft Entra aplikacije i kreirajte novu registraciju. Dajte aplikaciji naziv i uverite se da je izabrana opcija Jedan zakupac. Možete preskočiti podešavanje URI-ja za preusmeravanje.

2. korak Konfigurisanje dozvola za API

U novoj registraciji aplikacije, dođite do kartice Upravljanje – API dozvole. U odeljku Konfigurišite dozvole izaberite Dodajte dozvolu. U prozoru dijaloga koji se otvori, izaberite karticu API-ji koje koristi moja organizacija, a zatim potražite Power Platform API. Možda ćete videti nekoliko unosa sa imenom sličnim ovome, pa pripazite da koristite onaj sa GUID-om 8578e004-a5c6-46e7-913e-12f58912df43.

Ako ne vidite Power Platform API koji se prikazuje na listi prilikom pretraživanja po GUID-u, moguće je da i dalje imate pristup njemu, ali vidljivost nije osvežena. Da biste nametnuli osvežavanje, pokrenite sledeću skriptu:

#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"

Odavde morate da izaberete potrebne dozvole. Oni su grupisani po prostorima za ime. U okviru prostora za ime vidite tipove resursa i radnje na primer AppManagement.ApplicationPackages.Read koje daju dozvole za čitanje za pakete aplikacija. Za više informacija, pogledajte naš Referentni članak o dozvoli.

Belešku

Power Platform API koristi delegirane dozvole samo u ovom trenutku. Za aplikacije koje se pokreću sa korisničkim kontekstom, zahtevate delegirane dozvole koristeći parametar scope. Ove dozvole delegiraju privilegije prijavljenog korisnika vašoj aplikaciji, omogućavajući joj da se ponaša kao korisnik kada poziva krajnje tačke Power Platform API-ja.

Za glavne identitete usluge dozvole aplikacije se ne koriste. Umesto toga, principali usluga se danas tretiraju kao Power Platform administratori i moraju biti registrovani praćenjem uputstva PowerShell - Kreiranje principala usluge.

Kada se potrebne dozvole dodaju u klijentsku aplikaciju, izaberite Dajte pristanak administratora da biste dovršili podešavanje. Ovo je neophodno za instance u kojima želite da dozvolite korisnicima da odmah pristupe vašoj aplikaciji, umesto da zahtevate interaktivno iskustvo pristanka. Ako možete da podržite interaktivnu saglasnost, preporučujemo da pratite Microsoft platformu identiteta i 2.0 tok OAuth autorizacijskog koda.

3. korak Konfigurisanje javnog klijenta (opcionalno)

Ako vaša aplikacija zahteva resurse za čitanje i pisanje u ime korisnika, morate omogućiti postavku javnog klijenta. Ovo je jedini način na koji Microsoft Entra ID prihvata svojstva korisničkog imena i lozinke u telu vašeg zahteva za token. Takođe imajte na umu da ako planirate da koristite ovu funkciju, ona neće funkcionisati za naloge na kojima je omogućena višestruka potvrda identiteta.

Da biste je omogućili, posetite karticu Upravljanje – Potvrda identiteta. U odeljku Napredne postavke podesite Prekidač Javni klijent na Da.

4. korak Konfigurisanje certifikata i tajni (opcionalno)

Ako vaša aplikacija zahteva resurse za čitanje i pisanje kao sama po sebi - takođe poznata kao princip usluge, postoje dva načina za autentifikaciju. Da biste koristili certifikate, dođite do kartice Upravljanje – Certifikati i tajne. U odeljku Certifikati otpremite x509 certifikat koji možete koristiti za potvrdu identiteta. Drugi način je da koristite odeljak Tajne za generisanje tajne klijenta. Sačuvajte tajnu na sigurnom mestu za upotrebu sa vašim potrebama za automatizacijom. Sertifikat ili tajne opcije omogućavaju vam da potvrdite autentičnost i Microsoft Entra primite token za ovog klijenta, koji prenosite na REST API-je ili PowerShell cmdlet.

Korak 5. Zatražite token za pristup

Postoje dva načina da nabavite token nosioca pristupa. Jedan je za korisničko ime i lozinku, a drugi za principale usluga.

Tok za korisničko ime i lozinku

Obavezno pročitajte odeljak „Javni klijent“ iznad. Zatim pošaljite POST zahtev preko HTTP-a na Microsoft Entra ID sa korisničkim imenom i lozinkom.

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

Gornji primer sadrži držače mesta koja možete preuzeti iz vaše klijentske aplikacije u ID-u Microsoft Entra . Dobijate odgovor koji se može koristiti za naknadne pozive API-ju 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..."
}

Koristite vrednost access_token u narednim pozivima za Power Platform API pomoću HTTP zaglavlja Authorization.

Servisni glavni tok

Obavezno pročitajte odeljak „Certifikati i tajne“ iznad. Zatim pošaljite POST zahtev preko HTTP-a na Microsoft Entra ID sa korisnim teretom tajne klijenta. Ovo se često naziva potvrda identiteta principala usluge.

Važno

Ovo se može koristiti samo nakon što ste registrovali ovaj ID klijentske aplikacije prateći Microsoft Power Platform ili povezanu PowerShell ili REST dokumentaciju.

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

Gornji primer sadrži držače mesta koja možete preuzeti iz vaše klijentske aplikacije u ID-u Microsoft Entra . Dobijate odgovor koji se može koristiti za naknadne pozive API-ju Power Platform .

{
  "token_type": "Bearer",
  "expires_in": 3599,
  "ext_expires_in": 3599,
  "access_token": "eyJ0eXAiOiJKV1..."
}

Koristite vrednost access_token u narednim pozivima za Power Platform API pomoću HTTP zaglavlja Authorization. Kao što je gore navedeno, tok principala usluge ne koristi dozvole za aplikacije i umesto toga se, za sada, tretira kao Power Platform administrator za sve pozive koje oni čine.

Kreiranje glavne aplikacije servisa preko API-ja (verzija za pregled)
PowerShell - Kreiraj direktor usluge