Del via


Konfigurere administrert identitet for Power Platform for dataverse plugin-moduler eller plugin-pakker

Administrert identitet for Power Platform gjør det mulig for dataverse plugin-moduler eller plugin-pakker å koble til Azure-ressurser for å støtte administrert identitet uten behov for legitimasjon. Denne artikkelen hjelper deg å konfigurere administrert identitet i Power Platform-miljøene.

Forhåndskrav

  • Et Azure-abonnement med tilgang til klargjøring av UAMI-er (brukertildelt administrert identitet) eller programregistrering.
  • Verktøy for plugin-moduler eller programtilleggspakker:
  • Et gyldig sertifikat for å signere plugin-modulsamlingen.

Konfigurer administrert identitet

Hvis du vil konfigurere administrert identitet for Power Platform for dataverse plugin-moduler eller programtilleggspakker, kan du fullføre følgende fremgangsmåte.

  1. Opprett en ny appregistrering eller brukertildelt administrert identitet.
  2. Konfigurer legitimasjon for forbundsidentitet.
  3. Opprett og registrer dataverse plugin-moduler eller plugin-pakker.
    Pass på at du bygger plugin-modulen og registrerer plugin-modulen eller plugin-modulpakken.
  4. Opprett en administrert identitetspost i Dataverse.
  5. Gi tilgang til Azure-ressursene til programmet eller den brukertilordnede administrerte identiteten (UAMI).
  6. Valider programtilleggsintegreringen.

Opprett en ny appregistrering eller brukertilordnet administrert identitet

Du kan opprette enten brukertilordnet administrert identitet eller et program i Microsoft Entra ID basert på følgende scenarioer.

  • Hvis du vil ha en appidentitet knyttet til plugin-modulen som kobler til Azure-ressurser, for eksempel Azure Key Vault, kan du bruke programregistrering. Med appidentitet kan du bruke Azure-policyer på programtillegget med tilgang til Azure-ressurser.
  • Hvis du vil at en tjenestekontohaver skal få tilgang til Azure-ressurser, for eksempel Azure Key Vault, kan du klargjøre brukertilordnet administrert identitet.

Obs!

Pass på at du registrerer følgende ID-er når du bruker dem i senere trinn.

  • Program-ID (klient)
  • Leier-ID

Konfigurer legitimasjon for forbundsidentitet

Hvis du vil konfigurere administrert identitet, åpner du den brukertildelte administrerte identiteten eller Microsoft Entra ID-appen i Azure Portal du opprettet i forrige del.

  1. Gå til Azure-portalen.
  2. Gå til Microsoft Entra ID.
  3. Velg Appregistreringer.
  4. Åpne appen du opprettet i Konfigurer administrert identitet.
  5. Gå til Sertifikater og hemmeligheter.
  6. Velg fanen Legitimasjon for forbund , og velg Legg til legitimasjon.
  7. Velg utsteder som Annen utsteder.
  8. Angi følgende informasjon:

Issuer

Bruk tenantens v2.0-utsteder:

https://login.microsoftonline.com/{tenantID}/v2.0

Eksempel

https://login.microsoftonline.com/5f8a1a9f-2e1a-415f-b10c-84c3736a21b9/v2.0

Type

Velg Eksplisitt subjektidentifikator.

Emne-identifikator

Velg formatet som samsvarer med sertifikattypen:

  • Selvsignert sertifikat (bare utvikling):

    /eid1/c/pub/t/{encodedTenantId}/a/qzXoWDkuqUa3l6zM5mM0Rw/n/plugin/e/{environmentId}/h/{hash}
    
  • Klarert utstedersertifikat (anbefales for produksjon):

    /eid1/c/pub/t/{encodedTenantId}/a/qzXoWDkuqUa3l6zM5mM0Rw/n/plugin/e/{environmentId}/i/{issuer}/s/{certificateSubject}
    

Segmentreferanse

Segment Beskrivelse
eid1 Identitetsformatversjon
c/pub Skykode for offentlig sky, Government Community Cloud (GCC) og første utgivelsesstasjon i GCC.
t/{encodedTenantId} Leier-ID
a/qzXoWDkuqUa3l6zM5m0Rw/ Internal use only. Ikke endre.
n/plugin-modul Plugin-komponent
e/{environmentId} Miljø-ID
h/{hash} SHA-256 med sertifikat (bare selvsignert)
i/{utsteder}
s/{certificateSubject}
Godkjent utstederdetaljer

Generer selvsignert sertifikat

Alle plugin-moduler må ha en verifiserbar identitet, og signeringssertifikatet fungerer som plugin-modulens unike fingeravtrykk. Følgende kode er et eksempel på PowerShell-kodesnutt du kan bruke til å generere et selvsignert sertifikat for utviklings- eller testscenarioer. Du kan følge fra eksempel 3 for referanse.

 $params = @{
     Type = 'Custom'
     Subject = 'E=admin@contoso.com,CN=Contoso'
     TextExtension = @(
         '2.5.29.37={text}1.3.6.1.5.5.7.3.4',
         '2.5.29.17={text}email=admin@contoso.com' )
     KeyAlgorithm = 'RSA'
     KeyLength = 2048
     SmimeCapabilities = $true
     CertStoreLocation = 'Cert:\CurrentUser\My'
 }
 New-SelfSignedCertificate @params

Obs!

Koding for {encodedTenantId}

  1. Konverter GUID → heksadesimal.
  2. Konverter heksadesimal → Base64URL (ikke standard Base64).

Selvsignert hash

  • Beregne SHA-256 i løpet av .cer. Hvis du har en PFX, eksporterer du en .cer først:
    CertUtil -hashfile <CertificateFilePath> SHA256
    
    $cert = Get-PfxCertificate -FilePath "path	o\your.pfx"
    $cert.RawData | Set-Content -Encoding Byte -Path "extracted.cer"
    

Spesialiserte Azure-skymiljøer

Angi nettadresse formålgruppe, utsteder og emneprefiks eksplisitt når du distribuerer utenfor offentlig sky, GCC og første utgivelsesstasjon i GCC:

Cloud Målgruppe URL-adresse for utsteder Emneprefiks
GCC High og DoD api://AzureADTokenExchangeUSGov https://login.microsoftonline.us /eid1/c/usg
Mooncake (Kina) api://AzureADTokenExchangeChina https://login.partner.microsoftonline.cn /eid1/c/chn
US National (USNAT) api://AzureADTokenExchangeUSNat https://login.microsoftonline.eaglex.ic.gov /eid1/c/uss
US Secure (USSec) api://AzureADTokenExchangeUSSec https://login.microsoftonline.scloud /eid1/c/usn

Obs!

Målgruppeverdien er sensitiv for store og små bokstaver og må matche nøyaktig.
For offentlig sky, GCC og første utgivelsesstasjon i GCC (og andre ikke-oppførte skyer), er standardene:
Målgruppe api://AzureADTokenExchange, Utsteder https://login.microsoftonline.com, Emneprefiks /eid1/c/pub.

Opprette og registrere dataverse plugin-moduler eller plugin-pakker

Bygg samling for programtillegg

Pakking og signering

Signere en programtilleggspakke

Hvis du bygger en plugin-modulpakke, kan du bruke NuGet Sign CLI til å generere en pakke fra enten en .nuspec- eller CSPROJ-fil. Når du har generert pakken, signerer du den med sertifikatet.

 nuget sign YourPlugin.nupkg `
   -CertificatePath MyCert.pfx `
   -CertificatePassword "MyPassword" `
   -Timestamper http://timestamp.digicert.com

Signere en plugin-modulsamling

Hvis du registrerer en plugin-modul (samling), signerer du DLL-filen med et sertifikat ved hjelp av SignTool.exe (signeringsverktøy).

signtool sign /f MyCert.pfx /p MyPassword /t http://timestamp.digicert.com /fd SHA256 MyAssembly.dll

Du kan eventuelt legge til tidsstempel ved å oppgi nettadressen til en RFC 3161-kompatibel tidsstempelserver.

Obs!

Bruk et selvsignert sertifikat bare for utviklings- eller testformål. Ikke bruk selvsignerte sertifikater i produksjonsmiljøer.

Registrer programtillegget

  • Installer programtilleggsregistreringsverktøyet hvis du ikke allerede har det på maskinen. Hvis du vil ha mer informasjon, kan du se Dataverse-utviklerverktøy.

  • Registrer programtillegget. Hvis du vil ha mer informasjon, kan du se Registrer programtillegget.

Opprett oppføring for administrert identitet i Dataverse

Hvis du vil klargjøre en administrert identitetspost i Dataverse, fullfører du følgende trinn.

  1. Opprett en administrert identitet ved å sende en HTTP POST-forespørsel med en REST-klient (for eksempel Insomnia). Bruk en URL-adresse og forespørselstekst i følgende format.

    POST https://<<orgURL>>/api/data/v9.0/managedidentities
    

    Pass på at du erstatter orgURL med nettadressen til organisasjonen.

  2. Kontroller at legitimasjonskilden er satt til 2 i nyttelasten, subjectscope er satt til 1 for miljøspesifikke scenarier, og versjonen er satt til 1 i nyttelasten.

    Eksempel på nyttelast

    {
      "applicationid": "<<appId>>", //Application Id, or ClientId, or User Managed Identity
      "managedidentityid": "<<anyGuid>>",
      "credentialsource": 2, // Managed client
      "subjectscope": 1, //Environment Scope
      "tenantid": "<<tenantId>>", //Entra Tenant Id
      "version": 1
    }
    
  3. Oppdater plugin-modulpakken eller programtilleggssamlingsposten ved å utstede en HTTP PATCH-forespørsel om å knytte den til den administrerte identiteten som ble opprettet i trinn 1.

    Plugin-modulsamling

    PATCH https://<<orgURL>>/api/data/v9.0/pluginassemblies(<<PluginAssemblyId>>)
    

    Programtilleggspakke

    PATCH https://<<orgURL>>/api/data/v9.0/pluginpackages(<<PluginPackageId>>)
    

    Eksempel på nyttelast

    {
      "managedidentityid@odata.bind": "/managedidentities(<<ManagedIdentityGuid>>)"
    }
    

    Pass på å erstatte orgURL, PluginAssemblyId (eller PluginPackageId) og ManagedIdentityGuid med verdiene dine.

Gi programmet eller brukertildelt administrert identitet tilgang til Azure-ressursene

Hvis du må gi tilgang til en program-ID for å få tilgang til Azure-ressurser, for eksempel Azure Key Vault, kan du gi tilgang til programmet eller den brukertilordnede administrerte identiteten til denne ressursen.

Valider programtilleggsintegreringen

Kontroller at programtillegget sikkert kan be om tilgang til Azure-ressurser som støtter administrert identitet, noe som eliminerer behovet for separat legitimasjon.

Vanlige spørsmål

Hvordan løser jeg denne feilen?

Hvis du får følgende feil:
Får feil – Et konfigurasjonsproblem hindrer godkjenning.
AADSTS700213: Finner ingen samsvarende oppføring for føderert identitet

Fullfør følgende fremgangsmåte for å løse problemet:

  1. Kontroller at FIC er riktig konfigurert og lagret.

  2. Kontroller at utstederen/emnet samsvarer med formatet som ble angitt tidligere.

    Du kan også finne det forventede formatet i feilstakken.

Hvordan løser jeg feilen «Kan ikke nå eller koble til Power Platform»

Se nettadresser og IP-adresseområder for Power Platform for å sikre at Power Platform-endepunkter kan nås og tillates.