Freigeben über


Einrichten der verwalteten Power Platform-Identität für Dataverse-Plug-Ins oder Plug-In-Pakete

Mit der verwalteten Power Platform-Identität können Dataverse-Plug-Ins oder Plug-In-Pakete eine Verbindung mit Azure-Ressourcen herstellen, um verwaltete Identitäten zu unterstützen, ohne dass Anmeldeinformationen erforderlich sind. Dieser Artikel unterstützt Sie beim Einrichten einer verwalteten Identität in Ihren Power Platform Umgebungen.

Voraussetzungen

  • Ein Azure Abonnement mit Zugriff zum Bereitstellen einer benutzerseitig zugewiesenen verwalteten Identität (User Assigned Managed Identity, UAMI) oder Anwendungsregistrierung.
  • Tools für Plug-Ins oder Plug-In-Pakete:
  • Ein gültiges Zertifikat zum Signieren der Plug-In-Assembly.

Verwaltete Identität einrichten

Führen Sie die folgenden Schritte aus, um die verwaltete Power Platform-Identität für Dataverse-Plug-Ins oder Plug-In-Pakete zu konfigurieren.

  1. Erstellen Sie eine neue App-Registrierung oder eine benutzerseitig zugewiesene verwaltete Identität.
  2. Konfigurieren Sie die Anmeldeinformationen für die Verbundidentität.
  3. Erstellen und Registrieren von Dataverse-Plug-Ins oder Plug-In-Paketen.
    Achten Sie darauf, die Plug-In-Assembly zu erstellen und das Plug-In- oder Plug-In-Paket zu registrieren.
  4. Erstellen eines verwalteten Identitätsdatensatzes in Dataverse.
  5. Gewähren des Zugriffs auf die Azure-Ressourcen für die Anwendung oder die vom Benutzer zugewiesene verwaltete Identität (UAMI).
  6. Überprüfen Sie die Plug-In-Integration.

Erstellen einer neuen App-Registrierung oder einer benutzerseitig zugewiesenen verwalteten Identität

Sie können entweder eine vom Benutzer zugewiesene verwaltete Identität oder eine Anwendung in microsoft Entra ID basierend auf den folgenden Szenarien erstellen.

  • Wenn Sie möchten, dass eine App-Identität dem Plug-In zugeordnet ist, das eine Verbindung mit Azure-Ressourcen herstellt, z. B. Azure Key Vault, verwenden Sie die Anwendungsregistrierung. Mit der App-Identität können Sie Azure-Richtlinien auf das Plug-In anwenden, das auf Azure-Ressourcen zugreift.
  • Wenn Sie möchten, dass ein Dienstprinzipal auf Azure-Ressourcen wie Azure Key Vault zugreifen kann, können Sie vom Benutzer zugewiesene verwaltete Identität bereitstellen.

Notiz

Achten Sie darauf, die folgenden IDs zu erfassen, da Sie diese in späteren Schritten benötigen.

  • Anwendungs-ID (Client)
  • Mandanten-ID

Anmeldeinformationen für Verbundidentitäten konfigurieren

Öffnen Sie zum Konfigurieren der verwalteten Identität die benutzerseitig zugewiesene verwaltete Identität oder Microsoft Entra ID-Anwendung im Azure-Portal, das Sie im vorherigen Abschnitt erstellt haben.

  1. Wechseln Sie zum Azure-Portal.
  2. Navigieren Sie zu Microsoft Entra ID.
  3. Wählen Sie App-Registrierungen aus.
  4. Öffnen Sie die App, die Sie unter Verwaltete Identität einrichten erstellt haben.
  5. Navigieren Sie zu Zertifikate & Geheimnisse.
  6. Wählen Sie die Registerkarte "Verbundanmeldeinformationen " und dann " Anmeldeinformationen hinzufügen" aus.
  7. Wählen Sie Aussteller als Anderer Aussteller aus.
  8. Geben Sie die folgenden Informationen ein:

Emittent

Verwenden Sie den v2.0-Issuer des Mandanten.

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

Example

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

Typ

Wählen Sie "Expliziter Subjektidentifizierer" aus.

Subjektidentifier

Wählen Sie das Format aus, das Ihrem Zertifikattyp entspricht:

  • Selbstsigniertes Zertifikat (nur Entwicklung):

    /eid1/c/pub/t/{encodedTenantId}/a/qzXoWDkuqUa3l6zM5mM0Rw/n/plugin/e/{environmentId}/h/{hash}
    
  • Vertrauenswürdiges Ausstellerzertifikat (für die Produktion empfohlen):

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

Segmentreferenz

Segment Description
eid1 Identitätsformatversion
c/pub Cloud-Code für öffentliche Cloud, Government Community Cloud (GCC) und erste Veröffentlichungsstation in GCC.
t/{encodedTenantId} Mandanten-ID
a/qzXoWDkuqUa3l6zM5mM0Rw/ Nur zur internen Verwendung. Ändern Sie dies nicht.
n/Plug-In Plug-In-Komponente
e/{environmentId} Umgebungs-ID
h/{hash} SHA-256 des Zertifikats (nur selbstsigniert)
i/{issuer}
s/{certificateSubject}
Details zu vertrauenswürdigen Ausstellern

Selbstsigniertes Zertifikat generieren

Jedes Plug-In muss über eine nachweisbare Identität verfügen, und das Signaturzertifikat fungiert als eindeutiger Fingerabdruck des Plug-Ins. Der folgende Code ist ein PowerShell-Beispielausschnitt, den Sie verwenden können, um ein selbstsigniertes Zertifikat für Entwicklungs- oder Testszenarien zu generieren. Sie können sich zur Orientierung an Beispiel 3 halten.

 $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

Notiz

Codierung für {encodedTenantId}

  1. GUID in Hex umwandeln.
  2. Konvertieren von Hex → Base64URL (nicht Standard Base64).

Selbstsignierter Hash

  • SHA-256 über die Datei .cer berechnen. Wenn Sie über eine PFX-Datei verfügen, exportieren Sie zuerst eine .cer :
    CertUtil -hashfile <CertificateFilePath> SHA256
    
    $cert = Get-PfxCertificate -FilePath "path	o\your.pfx"
    $cert.RawData | Set-Content -Encoding Byte -Path "extracted.cer"
    

Spezialisierte Azure-Cloudumgebungen

Legen Sie die Zielgruppe, die Aussteller-URL und das Betreff-Präfix explizit fest, wenn Sie außerhalb der öffentlichen Cloud, GCC und der ersten Veröffentlichungsstation in GCC bereitstellen:

Wolke Publikum Aussteller-URL Betreffpräfix
GCC High und DoD api://AzureADTokenExchangeUSGov https://login.microsoftonline.us /eid1/c/usg
Mooncake (Mondkuchen aus China) 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

Notiz

Für den Zielgruppen-Wert ist die Groß- und Kleinschreibung zu beachten und muss exakt übereinstimmen.
Für öffentliche Cloud, GCC und first release station in GCC (und andere nicht aufgeführte Clouds) sind die Standardwerte:
Zielgruppe api://AzureADTokenExchange, Aussteller https://login.microsoftonline.com, Betreff-Präfix /eid1/c/pub.

Erstellen und Registrieren von Dataverse-Plug-Ins oder Plug-In-Paketen

Plug-In-Assembly erstellen

Verpacken und Signieren

Signieren eines Plug-In-Pakets

Wenn Sie ein Plug-In-Paket erstellen, verwenden Sie die NuGet Sign CLI , um ein Paket aus einer Nuspec- oder einer CSPROJ-Datei zu generieren. Nachdem Sie das Paket generiert haben, signieren Sie es mit Ihrem Zertifikat.

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

Signieren einer Plugin-Assembly

Wenn Sie ein Plug-In (Assembly) registrieren, signieren Sie die DLL mit einem Zertifikat mithilfe von SignTool.exe (Sign Tool).

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

Sie können optional Zeitstempel hinzufügen, indem Sie die URL eines RFC 3161-kompatiblen Zeitstempelservers angeben.

Notiz

Verwenden Sie ein selbstsigniertes Zertifikat nur für Entwicklungs- oder Testzwecke. Verwenden Sie keine selbstsignierten Zertifikate in Produktionsumgebungen.

Plug-In registrieren

  • Installieren Sie das Plug-In-Registrierungstool, wenn Sie es noch nicht auf Ihrem Computer haben. Weitere Informationen finden Sie unter Dataverse-Entwicklungstools.

  • Registrieren Sie das Plug-In. Weitere Informationen finden Sie unter Plug-In registrieren.

Verwalteten Identitätsdatensatz erstellen in Dataverse

Führen Sie die folgenden Schritte aus, um einen verwalteten Identitätsdatensatz in Dataverse bereitzustellen.

  1. Erstellen Sie eine verwaltete Identität, indem Sie eine HTTP POST-Anforderung mit einem REST-Client senden (z. B. Schlaflosigkeit). Verwenden Sie eine URL und einen Anforderungstext im folgenden Format.

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

    Stellen Sie sicher, dass Sie orgURL durch die URL der Organisation ersetzen.

  2. Stellen Sie sicher, dass die credentialsource in der Nutzlast auf 2 festgelegt ist, subjectscope für umgebungsspezifische Szenarien auf 1 gesetzt ist und dass die version in der Nutzlast auf 1 festgelegt ist.

    Beispielnutzlast

    {
      "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. Aktualisieren Sie Ihren Plug-In-Paket- oder Plug-In-Assemblydatensatz, indem Sie eine HTTP PATCH-Anforderung ausgeben, um es der verwalteten Identität zuzuordnen, die in Schritt 1 erstellt wurde.

    Steckmodul-Montage

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

    Plug-In-Paket

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

    Beispielnutzlast

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

    Achten Sie darauf, orgURL, PluginAssemblyId (oder PluginPackageId) und ManagedIdentityGuid durch Ihre Werte zu ersetzen.

Gewähren von Zugriff auf die Azure Ressourcen für eine Anwendung oder eine benutzerseitig zugewiesene verwaltete Identität

Wenn Sie Zugriff auf eine Anwendungs-ID für den Zugriff auf Azure-Ressourcen wie Azure Key Vault gewähren müssen, gewähren Sie zugriff auf die Anwendung oder die vom Benutzer zugewiesene verwaltete Identität dieser Ressource.

Überprüfen Sie die Plug-In-Integration

Stellen Sie sicher, dass Ihr Plug-In sicher Zugriff auf Azure-Ressourcen anfordern kann, die verwaltete Identitäten unterstützen, sodass keine separaten Anmeldeinformationen erforderlich sind.

Häufig gestellte Fragen (FAQs)

Wie kann ich diesen Fehler beheben?

Wenn Sie den folgenden Fehler erhalten:
Fehler beim Abrufen – Ein Konfigurationsproblem verhindert die Authentifizierung.
AADSTS700213: Kein übereinstimmender Verbundidentitätsdatensatz gefunden

Führen Sie die folgenden Schritte aus, um das Problem zu beheben:

  1. Stellen Sie sicher, dass FIC ordnungsgemäß konfiguriert und gespeichert ist.

  2. Stellen Sie sicher, dass der Aussteller/Betreff dem zuvor angegebenen Format entspricht.

    Sie können auch das erwartete Format im Fehlerstapel finden.

Wie kann ich den Fehler "Keine Verbindung mit Power Platform herstellen" beheben?

Bitte lesen Sie Power Platform-URLs und IP-Adressbereiche, um sicherzustellen, dass Power Platform-Endpunkte erreichbar und zugelassen sind.