Autentifikavimas (peržiūra)

Šiame straipsnyje pateikiama API Azure Active Directory (peržiūros) () nustatymo Azure AD apžvalga Power Platform. Norėdami pasiekti išteklius, pasiekiamus per Power Platform API, turite gauti nešiklio atpažinimo Azure AD ženklą ir išsiųsti jį kaip antraštę kartu su kiekviena užklausa. Priklausomai nuo jūsų palaikomo tapatybės tipo (vartotojo ir pagrindinės paslaugos), norint gauti šį nešiklio atpažinimo ženklą, yra skirtingi srautai. Jie yra išdėstyti žemiau.

Norint gauti nešiklio atpažinimo ženklą su teisingomis teisėmis, reikia atlikti šiuos veiksmus:

  1. Sukurkite programos registraciją nuomotoje Azure AD
  2. Konfigūruoti API teises
  3. Viešojo kliento konfigūravimas (pasirinktinai)
  4. Sertifikatų ir paslapčių konfigūravimas (pasirinktinai)
  5. Prašyti prieigos atpažinimo ženklo

1 veiksmas. Kurti paraiškos registraciją

Eikite į Azure AD programos registracijos puslapį ir sukurkite naują registraciją. Suteikite programai pavadinimą ir įsitikinkite , kad pasirinkta parinktis Vienas nuomotojas. Galite praleisti peradresavimo URI sąranką.

2 veiksmas. Konfigūruoti API teises

Naujoje programėlės registracijoje eikite į skirtuką Tvarkyti – API teisės. Sekcijoje Teisių konfigūravimas pasirinkite Įtraukti teises. Atsidariusiame dialogo lange pasirinkite skirtuką MANO organizacijos naudojamos API, tada ieškokite Power Platform API. Gali būti rodomi keli įrašai, kurių pavadinimas panašus į šį, todėl įsitikinkite, kad naudojate įrašą su tokiu GUID „8578e004-a5c6-46e7-913e-12f58912df43”.

Jei ieškodami GUID sąraše nematote Power Platform API, rodomos sąraše, gali būti, kad vis tiek turite prieigą prie jo, tačiau matomumas nėra atnaujintas. Norėdami priversti atnaujinti, paleiskite žemiau esantį "PowerShell" scenarijų:

#Install the Azure AD the module
Install-Module AzureAD

Connect-AzureAD
New-AzureADServicePrincipal -AppId 8578e004-a5c6-46e7-913e-12f58912df43 -DisplayName "Power Platform API"

Iš čia turite pasirinkti reikiamas teises. Jie yra sugrupuoti pagal vardų sritis. Vardų srityje matysite išteklių tipus ir veiksmus, pvz. , AppManagement.ApplicationPackages.Read, kurie suteiks taikomųjų programų paketų skaitymo teises. Daugiau informacijos rasite mūsų leidimo nuorodos straipsnyje.

Pastaba

Power Platform API naudoja deleguotas teises tik šiuo metu. Jei programos veikia su vartotojo kontekstu, jūs prašote įgaliotųjų teisių naudodami aprėpties parametrą. Šios teisės perduoda prisijungusio vartotojo teises jūsų programai, kad ji galėtų veikti kaip vartotojas, kai skambina API Power Platform galiniai punktai.

Pagrindinėms tarnybos tapatybėms programos teisės nenaudojamos. Vietoj to paslaugų vykdytojai šiandien laikomi Power Platform administratoriais ir turi būti užregistruoti pagal "PowerShell" - sukurkite tarnybos pagrindinę sumą.

Įtraukę reikiamas teises į programą, pasirinkite Suteikti administratoriaus sutikimą, kad užbaigtumėte sąranką. Tai būtina tais atvejais, kai norite leisti naudotojams iš karto pasiekti jūsų programą, o ne reikalauti interaktyvios sutikimo patirties. Jei galite palaikyti interaktyvų sutikimą, rekomenduojame vadovautis "Microsoft" tapatybės platforma ir "OAuth 2.0" autorizacijos kodo srautu.

3 veiksmas. Viešojo kliento konfigūravimas (pasirinktinai)

Jei programai reikės skaityti ir rašyti išteklius vartotojo vardu, turėsite įjungti viešojo kliento parametrą. Tai vienintelis būdas, kuris Azure AD priims vartotojo vardo ir slaptažodžio ypatybes jūsų atpažinimo ženklo užklausos tekste. Taip pat atkreipkite dėmesį, kad jei planuojate naudoti šią funkciją, ji neveiks paskyroms, kuriose įgalintas kelių veiksnių autentifikavimas.

Norėdami įgalinti, apsilankykite skirtuke Tvarkyti – autentifikavimas. Skyriuje Išplėstiniai parametrai nustatykite viešojo kliento perjungimą į Taip.

4 veiksmas. Sertifikatų ir paslapčių konfigūravimas (pasirinktinai)

Jei jūsų programai reikės skaityti ir rašyti išteklius kaip save - taip pat žinomas kaip "Service Principal", yra du būdai autentifikuoti. Norėdami naudoti sertifikatus, pereikite į skirtuką Tvarkyti – sertifikatai ir paslaptys . Skyriuje Sertifikatai įkelkite x509 sertifikatą, kurį galite naudoti autentifikuoti. Kitas būdas yra naudoti skyrių Paslaptys , kad sugeneruotumėte kliento paslaptį. Įrašykite slaptąjį raktą saugioje vietoje ir naudokite jį pagal savo automatizavimo poreikius. Sertifikato arba slaptojo rakto parinktys leis jums autentifikuoti su „Azure AD” ir gauti šio kliento atpažinimo ženklą, kurį perleisite REST API arba „PowerShell” cmdlets.

5 veiksmas. Prašyti prieigos atpažinimo ženklo

Yra du būdai, kaip gauti prieigos turėtojo žetoną. Vienas iš jų skirtas vartotojo vardui ir slaptažodžiui, o kitas - paslaugų vykdytojams.

Vartotojo vardas ir slaptažodžio srautas

Būtinai perskaitykite viešųjų klientų skyrių aukščiau. Tada siųskite POST užklausą per HTTP Azure AD su vartotojo vardu ir slaptažodžio naudingąja apkrova.

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

Aukščiau pateiktame pavyzdyje yra vietos rezervavimo ženklų, kuriuos galite nuskaityti iš savo kliento programos „Azure Active Directory” platformoje. Gausite atsaką, kurį galėsite naudoti tolesniems skambučiams į „Power Platform” API atlikti.

{
  "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..."
}

Naudokite access_token reikšmę vėlesniuose skambučiuose į Power Platform API su autorizacijos HTTP antrašte.

Pagrindinis aptarnavimo srautas

Būtinai perskaitykite aukščiau pateiktą sertifikatų ir paslapčių skyrių. Tada siųskite POST užklausą per HTTP Azure AD su kliento slapta apkrova. Tai dažnai vadinama pagrindinio tarnybos pavadinimo autentifikavimu. Jį galima naudoti tik užregistravus šį kliento programos ID su „Microsoft Power Platform”.

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

Aukščiau pateiktame pavyzdyje yra vietos rezervavimo ženklų, kuriuos galite nuskaityti iš savo kliento programos „Azure Active Directory” platformoje. Gausite atsaką, kurį galėsite naudoti tolesniems skambučiams į „Power Platform” API atlikti.

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

Naudokite access_token reikšmę vėlesniuose skambučiuose į Power Platform API su autorizacijos HTTP antrašte. Kaip minėta pirmiau, pagrindinis tarnybos srautas nenaudoja programos teisių ir kol kas laikomas Power Platform administratoriumi visiems jų atliekamiems skambučiams.

Taip pat žr.

Pagrindinės tarnybos taikomosios programos kūrimas naudojant API (peržiūra)
"PowerShell" – kurti tarnybos pagrindinę dalį