Freigeben über


Annehmen der Identität eines anderen Benutzers

Mit Hilfe eines Identitätswechsels können Sie die Geschäftslogik im Auftrag eines anderen Microsoft Dataverse-Benutzers ausführen, um eine gewünschte Funktion oder einen Service mit der entsprechenden rollen- und objektbasierten Sicherheit dieses imitierten Benutzers bereitzustellen.

Der Identitätswechsel kann von verschiedenen Kunden und Dienstleistungen zum Aufrufen von Dataverse-Webdiensten im Auftrag eines Dataverse-Benutzers verwendet werden.

Identitätswechsel benötigt zwei unterschiedliche Benutzerkonten:

Identitätswechsler Vertretener Benutzer
Benutzerkonto, das verwendet wird, wenn Code ausgeführt wird Benutzerkonto, dass die Aufgabe im Auftrag ausgeführt wird.

Erforderliche Berechtigungen

Der Identitätenwechsler erfordert das Recht Vorgänge im Namen anderer Benutzer ausführen (prvActOnBehalfOfAnotherUser), die in der Sicherheitsrolle Delegieren enthalten ist oder für alle Sicherheitsrollen aktiviert werden kann.

Hinweis

Beachten Sie, dass Benutzern mehr als einer Sicherheitsrolle zugeordnet werden können. Zuweisen einer Sicherheitsrolle Stellvertretung zu einem Benutzer können das prvActOnBehalfOfAnotherUser Recht sowie die Rechte aus allen anderen Sicherheitsrollen dem Benutzerkonto zugeordnet werden.

Die aktuelle Gruppe von Rechten, die verwendet wird, um Daten zu ändern, ist die Schnittmenge der Rechte, die der Identitätsübernehmer besitzt mit jeer des Identitätennbenuzers.

In anderen Worten der Identitätenübernehmer kann nur dann etwas tun, wenn der Identitätenübernehmer und der Identitätenbenutzer über die dazu erforderlichen Rechte verfügen.

Direkte Zuweisung erforderlich

Die Berechtigung Vorgänge im Namen anderer Benutzer ausführen (prvActOnBehalfOfAnotherUser) oder eine Rolle mit dieser Berechtigung müssen Benutzern direkt zugewiesen werden, da sie nicht über ein Team vererbt werden können. Diese direkte Zuweisung ist aufgrund der Sensibilität der Berechtigung erforderlich.

Identitätenwechsel mit Server-zu-Server-Authentifizierung

Wenn Sie eine Webclient-Anwendung erstellen, die ein Benutzerkonto erfordert, das im Auftrag eines abonnierten Benutzers reagieren kann, können Sie das spezielle Anwendungsbenutzerkonto nutzen, sodass Sie keine bezahlte Dataverse-Benutzerlizenz verwenden müssen.

Weitere Informationen finden Sie unter: Webanwendungen mit der Server-zu-Server-(S2S)-Authentifizierung erstellen..

Annehmen eines anderen Benutzerkontos mit Web API

Um einen Benutzer zu imitieren, fügen Sie einen Anforderungskopf namens CallerObjectId mit einem GUID-Wert hinzu, der dem Objektbezeichner Microsoft Entra ID des imitierten Benutzers entspricht, bevor Sie die Anforderung an den Webdienst senden. Die Objektbezeichner Microsoft Entra ID des Benutzers ist im Verzeichnis SystemUser.AzureActiveDirectoryObjectId enthalten.

Weitere Informationen: Annehmen eines anderen Benutzerkontos mit Web API.

Die Identität eines anderen Benutzers mit dem SDK für .NET annehmen

Zum Übernehmen der Identität von einem anderen Benutzer, legen Sie die CallerId Eigenschaft auf den Guid-Wert von der Identität des Benutzers fest. Die folgenden Klassen, die IOrganizationService implementieren, umfassen diese Eigenschaft.

Impersonation eines anderen Benutzers mithilfe von Plug-ins

Um den Benutzer zu definieren, für den der Vorgang verwendet werden soll, können Sie ein Plug-In mit Code registrieren. Weitere Informationen: Annehmen der Identität eines Benutzers

Siehe auch

Erstellen von Webanwendungen mit Server-to-Server-Authentifizierung (S2S)
Annehmen eines anderen Benutzerkontos mit Web API
Schreiben eines Plug-Ins

Hinweis

Können Sie uns Ihre Präferenzen für die Dokumentationssprache mitteilen? Nehmen Sie an einer kurzen Umfrage teil. (Beachten Sie, dass diese Umfrage auf Englisch ist.)

Die Umfrage dauert etwa sieben Minuten. Es werden keine personenbezogenen Daten erhoben. (Datenschutzbestimmungen).