Del via


Autentisering (forhåndsversjon)

Denne artikkelen gir en oversikt over konfigurasjonen av Microsoft Entra for å kalle opp Power Platform-API (forhåndsversjon). For å få tilgang til ressurser som er tilgjengelige via Power Platform-API-en, må du få et bærertoken fra Microsoft Entra og sende det som et hode sammen med hver forespørsel. Avhengig av identitetstypen du støtter (bruker kontra tjenestekontohaver), brukes forskjellige flyter til å hente dette bærertokenet, som beskrevet i denne artikkelen.

Følgende trinn kreves for å hente et bærertoken med riktige tillatelser:

  1. Opprett en programregistrering i Microsoft Entra-leieren
  2. Konfigurer API-tillatelser
  3. Konfigurer offentlig klient (valgfritt)
  4. Konfigurer sertifikater og hemmeligheter (valgfritt)
  5. Be om et tilgangstoken

Trinn 1. Opprett en programregistrering

Gå til siden Microsoft Entra-appregistrering, og opprett en ny registrering. Gi programmet et navn, og kontroller at alternativet Enkel leier er valgt. Du kan hoppe over konfigurasjonen av URI for omdirigering.

Trinn 2. Konfigurer API-tillatelser

Gå til fanen Administrer – API-tillatelser i den nye appregistreringen. Velg Legg til en tillatelse under delen Konfigurer tillatelser. Velg fanen API-er organisasjonen min bruker i dialogboksvinduet som åpnes, og søk deretter etter Power Platform-API. Det kan hende du ser flere oppføringer med et navn som ligner på dette, så pass på at du bruker den med GUID-en 8578e004-a5c6-46e7-913e-12f58912df43.

Hvis du ikke ser Power Platform-API i listen når du søker etter GUID, kan det hende at du likevel har tilgang til det, men at synligheten ikke er oppdatert. Du kan fremtvinge en oppdatering ved å kjøre PowerShell-skriptet nedenfor:

#Install the Microsoft Entra the module
Install-Module AzureAD

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

Herfra må du velge tillatelsene du trenger. Disse grupperes etter Navneområder. I et navneområde vises ressurstyper og handlinger, for eksempel AppManagement.ApplicationPackages.Read, som gir lesetillatelser for programpakker. Hvis du vil ha mer informasjon, kan du se artikkelen Tillatelsesreferanse.

Obs!

Power Platform-API-en bruker foreløpig bare delegerte tillatelser. Når det gjelder programmer som kjører med en brukerkontekst, ber du om delegerte tillatelser ved hjelp av parameteren scope. Disse tillatelsene delegerer rettighetene til den påloggede brukeren til programmet, slik at det kan fungere som brukeren når det kaller opp endepunkter for Power Platform-API-en.

Programtillatelser brukes ikke for tjenestekontohaveridentiteter. Tjenestekontohavere behandles i stedet som Power Platform-administratorer i dag og må registreres ved å følge PowerShell – Opprett tjenestekontohaver.

Etter at de nødvendige tillatelsene er lagt til i programmet, velger du Gi administratorsamtykke for å fullføre konfigurasjonen. Dette er nødvendig i tilfeller der du vil gi brukere tilgang til appen din med en gang, i stedet for å kreve at de gir samtykke interaktivt. Hvis du kan støtte interaktivt samtykke, anbefaler vi at du følger Microsoft-identitetsplattformen og kodeflyten for OAuth 2.0-autentisering.

Trinn 3. Konfigurer offentlig klient (valgfritt)

Hvis appen krever lesing og skriving av ressurser på vegne av en bruker, må du aktivere innstillingen for offentlig klient. Det er bare på denne måten at Microsoft Entra ID godtar egenskaper for brukernavn og passord i brødteksten i tokenforespørselen. Vær også oppmerksom på at hvis du planlegger å bruke denne funksjonen, fungerer den ikke for kontoer der flerfaktorautentisering er aktivert.

Du aktiverer den ved å gå til fanen Administrer – Autentisering. Angi Ja for Offentlig klient under delen Avanserte innstillinger.

Trinn 4. Konfigurer sertifikater og hemmeligheter (valgfritt)

Hvis appen må kunne lese og skrive ressurser som seg selv – også kalt en tjenestekontohaver, er det to måter å autentisere på. Hvis du vil bruke sertifikater, går du til fanen Administrer – Sertifikater og hemmeligheter. Last opp et x509-sertifikat du kan bruke til å autentisere, under Sertifikater-delen. Den andre måten er å bruke Hemmeligheter-delen til å generere en klienthemmelighet. Lagre hemmeligheten på et sikkert sted for bruk med automatiseringsbehovene. Sertifikatet eller de hemmelige alternativene gjør det mulig å godkjenne med Microsoft Entra og motta et token for denne klienten, som du sender til enten REST-API-ene eller PowerShell-cmdletene.

Trinn 5. Be om et tilgangstoken

Du kan skaffe et tilgangsbærertoken på to måter. Den ene er for brukernavn og passord, og den andre er for tjenestekontohavere.

Flyt for brukernavn og passord

Pass på at du leser delen om offentlig klient ovenfor. Send deretter en POST-forespørsel via HTTP til Microsoft Entra ID der nyttelasten er et brukernavn og passord.

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

Eksemplet ovenfor inneholder plassholdere som du kan hente fra klientprogrammet i Microsoft Entra ID. Du mottar et svar som kan brukes til å utføre påfølgende oppkall til Power Platform-API.

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

Bruk verdien access_token i påfølgende oppkall til Power Platform-API-en med HTTP-hodet Autorisasjon.

Flyt for tjenestekontohaver

Pass på at du leser delen om sertifikater og hemmeligheter ovenfor. Send deretter en POST-forespørsel via HTTP til Microsoft Entra ID der nyttelasten er en klienthemmelighet. Dette kan også kalles tjenestekontohaverautentisering.

Viktig

Denne kan bare brukes etter at du har registrert denne klientprogram-IDen med Microsoft Power Platform etterfulgt av enten den relaterte PowerShell- eller REST-dokumentasjonen.

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

Eksemplet ovenfor inneholder plassholdere som du kan hente fra klientprogrammet i Microsoft Entra ID. Du mottar et svar som kan brukes til å utføre påfølgende oppkall til Power Platform-API.

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

Bruk verdien access_token i påfølgende oppkall til Power Platform-API-en med HTTP-hodet Autorisasjon. Som nevnt ovenfor bruker ikke flyten for tjenestekontohaver programtillatelser, og inntil videre behandles den i stedet som en Power Platform-administrator for alle oppkall de foretar.

Se også

Lage et tjenestekontohaverprogram via API (forhåndsversjon)
PowerShell – Opprett tjenestekontohaver