Jagamisviis:


Seadista Power Platformi hallatav identiteet Dataverse'i pistikprogrammide või plug-in pakettide jaoks

Power Platformi hallatav identiteet võimaldab Dataverse'i pistikprogrammidel või pistikprogrammidel ühenduda Azure'i ressurssidega, et toetada hallatud identiteeti ilma volitusteta. See artikkel aitab teil oma keskkondades hallatavat identiteeti seadistada. Power Platform

eeltingimused

  • Azure’i tellimus, millel on juurdepääs kasutaja määratud hallatava identiteedi (UAMI) või rakenduse registreerimise pakkumisele.
  • Tööriistad pistikprogrammide või plug-in pakettide jaoks:
  • Kehtiv sert lisandmooduli sõlme allkirjastamiseks.

Hallatud identiteedi seadistamine

Power Platformi hallatava identiteedi seadistamiseks Dataverse'i pistikprogrammide või plug-in pakettide jaoks täida järgmised sammud.

  1. Looge uus rakenduse registreerimine või kasutaja määratud hallatav identiteet.
  2. Konfigureerige föderaalse identiteedi mandaadid.
  3. Loo ja registreeri Dataverse'i pistikprogrammid või plug-in paketid.
    Kindlasti ehita plug-in komplekt ja registreeri plug-in või plug-in pakett.
  4. Looge hallatav identiteedikirje Dataverse'is.
  5. Andke rakendusele või kasutaja määratud hallatavale identiteedile (UAMI) juurdepääs Azure'i ressurssidele.
  6. Kinnitage pistikprogrammi integratsioon.

Loo uus rakenduse registreerimine või kasutaja määratud hallatav identiteet

Saate luua kas kasutaja määratud hallatava identiteedi või rakenduse Microsoft Entra ID-s järgmiste stsenaariumide põhjal.

  • Kui soovid, et rakenduse identiteet oleks seotud pluginaga, mis ühendub Azure'i ressurssidega, näiteks Azure Key Vaultiga, kasuta rakenduse registreerimist. Rakenduse identiteedi abil saate rakendada Azure’i poliitikaid Azure’i ressurssidele juurde pääsevale lisandmoodulile.
  • Kui soovid, et teenusepõhi pääseks ligi Azure'i ressurssidele, näiteks Azure Key Vaultile, saad luua kasutaja määratud hallatava identiteedi.

Märkus.

Kindlasti salvesta järgmised ID-d, kui kasutad neid hilisemates sammudes.

  • Rakenduse (kliendi) ID
  • ’i rentniku ID

Liididentiteedi mandaatide konfigureerimine

Hallatava identiteedi konfigureerimiseks avage eelmises jaotises loodud Azure’i portaalis kasutaja määratud hallatava identiteedi või ID rakendus. Microsoft Entra

  1. Mine Azure’i portaali. ...
  2. Navigeeri ID-le Microsoft Entra .
  3. Valige Rakenduse registreerimised.
  4. Avage rakendus, mille lõite jaotises Hallatud identiteedi seadistamine.
  5. Liikuge jaotisse Serdid ja saladused.
  6. Valige vahekaart Ühendatud mandaat ja valige Lisa mandaat.
  7. Valige väljastajaks Teine väljastaja.
  8. Sisestage järgmine teave.

Issuer

Kasuta üürniku v2.0 väljastajat:

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

Näide

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

Tüüp

Valige Vulgaarne teema identifikaator.

Teema identifikaator

Valige oma sertifikaadi tüübile vastav vorming.

  • Iseallkirjastatud sertifikaat (ainult arendustegevus):

    /eid1/c/pub/t/{encodedTenantId}/a/qzXoWDkuqUa3l6zM5mM0Rw/n/plugin/e/{environmentId}/h/{hash}
    
  • Usaldusväärse väljaandja sertifikaat (soovitatav tootmiseks):

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

Segmendi viide

Segmendi Kirjeldus
eid1 Identiteediformaadi versioon
c/pub Pilvekood avalikuks pilveks, valitsuse kogukonnapilv (GCC) ja esimene väljalaskejaam GCC-s.
t/{encodedTenantId} ’i rentniku ID
a/qzXoWDkuqUa3l6zM5mM0Rw/ Ainult sisekasutus. Ära muuda seda.
n/plugin Plug-in komponent
e/{environmentId} Keskkonna ID
h/{hash} SHA-256 sertifikaadi (ainult iseallkirjastatud)
i/{väljastaja}
s/{certificateSubject}
Usaldusväärse emiteerija andmed

Genereeri iseallkirjastatud sertifikaat

Igal pistikprogrammil peab olema kontrollitav identiteet ning allkirjastamissertifikaat toimib plugina unikaalse sõrmejäljena. Järgmine kood on näidis-PowerShelli lõik, mida saad kasutada iseallkirjastatud sertifikaadi genereerimiseks arendus- või testimisstsenaariumite jaoks. Võrdluseks võid järgida näidet 3.

 $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

Märkus.

Kodeerimine {encodedTenantId}

  1. Teisendage GUID → Hex.
  2. Teisendage Hex → Base64URL (mitte standardne Base64).

Iseallkirjastatud räsi

  • Arvuta SHA-256üle .cer. Kui teil on .pfx, eksportige esmalt .cer .
    CertUtil -hashfile <CertificateFilePath> SHA256
    
    $cert = Get-PfxCertificate -FilePath "path	o\your.pfx"
    $cert.RawData | Set-Content -Encoding Byte -Path "extracted.cer"
    

Spetsiaalsed Azure'i pilvekeskkonnad

Määrake sihtrühm, väljaandja URL ja teema eesliide selgesõnaliselt, kui juurutate väljaspool avalikku pilve, GCC-d ja esmaväljalaskejaama GCC-s.

Pilv Publik Väljaandja URL Subjekti eesliide
GCC High ja DoD api://AzureADTokenExchangeUSGov https://login.microsoftonline.us /eid1/c/usg
Kuukook (Hiina) api://AzureADTokenExchangeChina https://login.partner.microsoftonline.cn /eid1/c/chn
USA kodanik (USNAT) api://AzureADTokenExchangeUSNat https://login.microsoftonline.eaglex.ic.gov /eid1/c/uss
USA turvaline (USSec) api://AzureADTokenExchangeUSSec https://login.microsoftonline.scloud /eid1/c/usn

Märkus.

Sihtrühma väärtus on tõstutundlik ja peab täpselt ühtima.
Avaliku pilve, GCC ja GCC esmaväljalaskejaama (ja muude loetlemata pilvede) vaikeväärtused on järgmised:
Vaatajaskond api://AzureADTokenExchange, Väljaandja https://login.microsoftonline.com, Teema eesliide /eid1/c/pub.

Loo ja registreeri Dataverse'i pistikprogrammid või plug-in paketid

Lisandmooduli assamblee loomine

Pakendamine ja allkirjastamine

Plug-in paketi allkirjastamine

Kui ehitad pluginapaketti, kasuta NuGet Sign CLI-d , et genereerida pakett kas .nuspec või .csproj failist. Pärast paketi loomist allkirjasta see oma sertifikaadiga.

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

Plug-in assembleri allkirjastamine

Kui registreerid pluginat (assembly), allkirjasta DLL sertifikaadiga, kasutadesSignTool.exe (Sign Tool).

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

Soovi korral võid lisada ajatemplit, kui sisestad RFC 3161 nõuetele vastava ajatempli serveri URL-i.

Märkus.

Kasuta iseallkirjastatud sertifikaati ainult arenduse või testimise eesmärgil. Ära kasuta iseallkirjastatud sertifikaate tootmiskeskkondades.

Registreeri plugin

  • Paigalda plugina registreerimistööriist, kui sul seda veel arvutis pole. Lisateabe saamiseks vaadake arendustööriistu Dataverse .

  • Registreeri plugin. Lisateabe saamiseks vaadake jaotist Plugina registreerimine.

Loo hallatud identiteedikirje Dataverse

Hallatava identiteedikirje loomiseks Dataverse'is tee järgmised sammud.

  1. Loo hallatud identiteet, saates HTTP POST päringu REST-kliendiga (näiteks Insomnia). Kasuta URL-i ja päringu keha järgmises formaadis.

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

    Asendage kindlasti orgURL organisatsiooni URL-iga.

  2. Veenduge, et mandaadi väärtuseks on seatud 2 kasulikus koormuses, teema ulatus on seatud väärtusele 1 keskkonnaspetsiifiliste stsenaariumide jaoks ja versioon on kasulikus koormuses seatud väärtusele 1.

    Kasuliku koormuse näidis

    {
      "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. Uuenda oma plug-in paketti või plugina assamblee kirjet, saates HTTP PATCH päringu, et seostada see hallatava identiteediga, mis loodi esimeses sammus.

    Pistikühendusega komplekt

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

    Plug-in pakett

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

    Kasuliku koormuse näidis

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

    Kindlasti asenda orgURL, PluginAssemblyId (või PluginPackageId) ja ManagedIdentityGuid oma väärtustega.

Andke rakendusele või kasutaja määratud hallatavale identiteedile juurdepääs Azure’i ressurssidele

Kui teil on vaja anda juurdepääs rakenduse ID-le, et pääseda juurde Azure'i ressurssidele (nt Azure Key Vault), andke sellele ressursile juurdepääs rakendusele või kasutaja määratud hallatavale identiteedile.

Pistikprogrammi integratsiooni valideerimine

Veenduge, et teie plugin saab turvaliselt taotleda juurdepääsu Azure’i ressurssidele, mis toetavad hallatud identiteeti, välistades vajaduse eraldi mandaatide järele.

Korduma kippuvad küsimused (KKK)

Kuidas ma saan selle vea lahendada?

Kui kuvatakse järgmine tõrge:
Vea saamine – konfiguratsiooniprobleem takistab autentimist.
AADSTS700213: Sobivat ühendatud identiteedikirjet ei leitud

Probleemi lahendamiseks tehke järgmist.

  1. Veenduge, et FIC on õigesti konfigureeritud ja salvestatud.

  2. Veendu, et väljastaja/subjekt vastab varem määratud formaadile.

    Eeldatava vormingu leiate ka veavirnast.

Kuidas lahendada tõrge "Power Platformiga ei saa ühendust võtta ega sellega ühendust luua"?

Vaata Power Platformi URL-e ja IP-aadresside vahemikke , et tagada Power Platformi lõpp-punktide kättesaadavus ja lubade loendus.