Freigeben über


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

Mit verwalteter 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 auf die Bereitstellung von vom Benutzer zugewiesener verwalteter Identität (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 dem Plug-In eine App-Identität zugeordnet ist, die eine Verbindung mit Azure Ressourcen herstellt, z. B. Azure Key Vault, verwenden Sie Anwendungsregistrierung. Mit der App-Identität können Sie Azure Richtlinien für das Plug-In anwenden, die auf Azure Ressourcen zugreifen.
  • Wenn Sie möchten, dass ein Dienstprinzipal auf Azure Ressourcen wie Azure Key Vault zugreifen kann, können Sie 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

Um verwaltete Identität zu konfigurieren, öffnen Sie die vom Benutzer zugewiesene verwaltete Identität oder Microsoft Entra ID Anwendung im Azure Portal, das Sie im vorherigen Abschnitt erstellt haben.

  1. Wechseln Sie zum portal Azure.
  2. Navigieren Sie zu Microsoft Entra ID.
  3. Wählen Sie App registrations 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

Der Zielgruppen-Wert ist groß- und kleinschreibungsempfindlich 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 Anmeldeinformationsquelle 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 Sie der anwendungs- oder benutzerdefinierten verwalteten Identität Zugriff auf die Azure-Ressourcen.

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

Überprüfen Sie die Plug-In-Integration

Vergewissern Sie sich, dass Ihr Plug-In den Zugriff auf Azure Ressourcen, die verwaltete Identität unterstützen, sicher anfordern kann, ohne dass separate 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?

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