Del via


Godkendelse (forhåndsversion)

Denne artikel indeholder en oversigt over konfiguration af Microsoft Entra til kald af Power Platform-API (forhåndsversion). Hvis du vil have adgang til ressourcer, der er tilgængelige via Power Platform-API, skal du hente et ihændehavertoken fra Microsoft Entra og sende det som et sidehoved sammen med hver enkelt anmodning. Afhængigt af den identitetstype, du understøtter (bruger vs. tjenesteprincipal), er der forskellige flows, du kan køre for at få dette ihændehavertoken, som beskrevet i denne artikel.

Du skal udføre følgende trin for at anskaffe et ihændehavertoken med de rette tilladelser:

  1. Oprette en programregistrering i din Microsoft Entra-lejer
  2. Konfigurere API-tilladelser
  3. Konfigurere offentlig klient (valgfrit)
  4. Konfigurere certifikater og hemmeligheder (valgfrit)
  5. Anmode om adgangstoken

Trin 1. Oprette en programregistrering

Gå til siden Microsoft Entra-appregistrering, og opret en ny registrering. Giv programmet et navn, og kontrollér, at indstillingen Enkelt lejer er valgt. Du kan springe konfigurationen af URI'en til viderestilling over.

Trin 2. Konfigurere API-tilladelser

I din nye appregistrering skal du gå til fanen Administrer – API-tilladelser. Vælg Tilføj en tilladelse i sektionen Konfigurer tilladelser. I det vindue, der åbnes, skal du vælge fanen API'er, som min organisation bruger og derefter søge efter Power Platform-API. Du kan se flere poster med et navn, der minder om dette, så sørg for at bruge ét med GUID'et 8578e004-a5c6-46e7-913e-12f58912df43.

Hvis du ikke kan se Power Platform-API'en på listen, når du søger ved hjælp af GUID, er det muligt, at du stadig har adgang til den, men synligheden er ikke opdateret. Kør PowerShell-scriptet nedenfor for at gennemtvinge en opdatering:

#Install the Microsoft Entra the module
Install-Module AzureAD

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

Herfra skal du vælge de nødvendige tilladelser. Disse er grupperet efter navneområder. I et navneområde kan du se ressourcetyper og handlinger, for eksempel AppManagement.ApplicationPackages.Read, som giver læsetilladelser til programpakker. Du kan finde flere oplysninger i vores artikel Tilladelsesreference.

Bemærk

Power Platform-API gør kun brug af uddelegerede tilladelser på nuværende tidspunkt. I forbindelse med programmer, der kører i forbindelse med en bruger, skal du anmode om delegerede tilladelser ved hjælp af parameteren scope. Disse tilladelser delegerer rettighederne for den bruger, der er logget på, til dit program, så det fungerer som brugeren, når Power Platform-API-slutpunkter kaldes.

I forbindelse med tjenesteprincipalens identiteter bruges der ikke programtilladelser. I stedet behandles tjenesteprincipaler som Power Platform-administratorer i dag, og de skal registreres ved at følge PowerShell – Oprette tjenesteprincipal.

Når de nødvendige tilladelser er føjet til programmet, skal du vælge Tildel administratorsamtykke for at fuldføre installationen. Det er nødvendigt i de tilfælde, hvor du vil give brugere adgang til din app med det samme i stedet for at kræve et interaktivt samtykke. Hvis du kan understøtte interaktivt samtykke, anbefales det, at du følger Microsoft-identitetsplatformen og OAuth 2.0-godkendelseskodeflowet.

Trin 3. Konfigurere offentlig klient (valgfrit)

Hvis din app kræver, at der læses og skrives ressourcer på vegne af en bruger, skal du aktivere indstillingen Offentlig klient. Kun på den måde kan Microsoft Entra ID acceptere egenskaberne for brugernavn og adgangskode i brødteksten i din tokenanmodning. Bemærk også, at hvis du planlægger at bruge denne funktion, fungerer den ikke for konti, hvor multifaktorgodkendelse er aktiveret.

Hvis du vil aktivere funktionen, skal du gå til fanen Administrer – Godkendelse. Angiv parameteren Offentlig klient til Ja i sektionen Avancerede indstillinger.

Trin 4. Konfigurere certifikater og hemmeligheder (valgfrit)

Hvis din app kræver, at du læser og skriver ressourcer som sig selv – også kaldet en tjenesteprincipal, kan du udføre godkendelse på to måder. Hvis du vil bruge certifikater, skal du gå til fanen Administrer – Certifikater og hemmeligheder. Overfør et x509-certifikat, som du kan bruge til godkendelse, i sektionen Certifikater. Den anden måde er at bruge sektionen Hemmeligheder til at oprette en klienthemmelighed. Gem hemmeligheden et sikkert sted, så du kan bruge den sammen med dine automatiseringsbehov. Indstillingerne for certifikat eller hemmelighed giver dig mulighed for at udføre godkendelse med Microsoft Entra og modtage et token for denne klient, som du skal sende videre til enten REST API'er eller PowerShell-cmdletterne.

Trin 5. Anmode om adgangstoken

Du kan anskaffe et ihændehavertoken på to måder. Den ene er for brugernavn og adgangskode, og den anden er for tjenesteprincipaler.

Flow med brugernavn og adgangskode

Sørg for at læse afsnittet Offentlig klient ovenfor. Send derefter en POST-anmodning via HTTP til Microsoft Entra ID med data for brugernavn og adgangskode.

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

Ovenstående eksempel indeholder pladsholdere, du kan hente fra klientprogrammet i Microsoft Entra ID. Du modtager et svar, der kan bruges til at foretage efterfølgende kald til Power Platform-API'en.

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

Brug værdien access_token i efterfølgende kald til Power Platform-API'en ved hjælp af HTTP-headeren Godkendelse.

Flow med tjenesteprincipal

Sørg for at læse afsnittet Certifikater og hemmeligheder ovenfor. Send derefter en POST-anmodning via HTTP til Microsoft Entra ID med data for klienthemmelighed. Dette kaldes ofte godkendelse af tjenesteprincipalen.

Vigtigt

Dette kan kun bruges, når du har registreret dette klientprogram-id med Microsoft Power Platform følgende enten den relaterede PowerShell- eller REST-dokumentation.

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

Ovenstående eksempel indeholder pladsholdere, du kan hente fra klientprogrammet i Microsoft Entra ID. Du modtager et svar, der kan bruges til at foretage efterfølgende kald til Power Platform-API'en.

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

Brug værdien access_token i efterfølgende kald til Power Platform-API'en ved hjælp af HTTP-headeren Godkendelse. Som nævnt ovenfor bruger flowet med tjenesteprincipalen ikke programtilladelser og behandles nu i stedet som en Power Platform-administrator for alle kald, der foretages.

Se også

Oprette et tjenesteprincipalprogram via API (forhåndsversion)
PowerShell – Oprette tjenesteprincipal