Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Plug-Ins und benutzerdefinierte Workflowaktivitäten sind benutzerdefinierter Code, den Sie entwickeln, um die vorhandene Funktionalität von Dynamics 365 Customer Engagement (on-premises) zu erweitern. Bevor ein Plug-In oder eine benutzerdefinierte Workflowaktivität verwendet werden kann, muss es beim Server registriert werden. Ein Plug-In und ein benutzerdefiniertes Tool zur Registrierung von Workflow-Aktivitäten stehen zum Download zur Verfügung.
Allgemeine Informationen zur Registrierung von Plug-Ins und benutzerdefinierten Workflowassemblys finden Sie in den Dataverse-Themen Registrieren eines Plug-Ins und Registrieren Ihrer Assembly. Die folgenden Informationen gelten speziell für die Entwicklung von lokalen Plug-Ins.
Obwohl sich dieses Thema in erster Linie auf Plug-Ins konzentriert, gelten die meisten Informationen auch für benutzerdefinierte Workflowaktivitäten. Ein Unterschied zwischen den beiden besteht darin, dass Sie für benutzerdefinierte Workflow-Aktivitäts-Assemblys nur die Assembly registrieren. Bei Plug-Ins registrieren Sie die Plug-In-Assembly und einen oder mehrere Schritte pro Plug-In. Weitere Informationen zu benutzerdefinierten Workflowaktivitäten finden Sie unter Benutzerdefinierte Workflowaktivitäten (Workflowassemblys).
Von Bedeutung
Registrieren Sie keine Plug-In- oder benutzerdefinierten Workflow-Aktivitäten, es sei denn, sie stammen aus einer zuverlässigen und vertrauenswürdigen Quelle.
Plug-in-Speicher
Für eine lokale Bereitstellung können Plug-Ins, die nicht in der Sandbox registriert sind, in der Datenbank des Dynamics 365 Servers oder im Dateisystem auf dem Datenträger gespeichert werden. Es wird dringend empfohlen, dass Sie Ihre produktionsbereiten Plug-Ins in der Dynamics 365 Customer Engagement-Datenbank (lokal) und nicht auf dem Datenträger speichern. In der Datenbank gespeicherte Plug-Ins werden automatisch auf mehrere Dynamics 365-Server in einem Rechenzentrumscluster verteilt. Die Speicherung von Plug-Ins auf dem Datenträger ist nützlich für das Debuggen von Plug-Ins mit Visual Studio. Sie können jedoch ein Plug-In debuggen, das in der Datenbank gespeichert ist. Weitere Informationen finden Sie unter Debuggen eines Plug-Ins.
Plug-Ins, die in der Sandbox registriert sind, müssen unabhängig von der Bereitstellung von Dynamics 365 Customer Engagement (on-premises) (on-premises, IFD oder Online) in der Datenbank gespeichert werden.
Einsatz
Bei lokalen oder mit dem Internet verbundenen (IFD) Dynamics 365 Customer Engagement (on-premises)-Installationen muss die Plug-In-Assembly vor der Registrierung manuell auf den Server kopiert werden, wenn Sie Plug-Ins von einem anderen Computer auf dem Dynamics 365 Server-Datenträger bereitstellen (Bereitstellung auf dem Datenträger). Die Assembly muss auf jedem Server, auf dem das Plug-In ausgeführt werden soll, im <installdir>Ordner \Programme\Microsoft CRM\server\bin\assembly bereitgestellt werden.
Die Plug-In-Registrierung sollte erfolgen, nachdem die Assembly in den Ordner ...\bin\assembly auf dem Server kopiert wurde, um die Situation zu verhindern, in der ein Systembenutzer ein Ereignis in Dynamics 365 Customer Engagement (on-premises) auslöst, die registrierte Plug-In-Assembly jedoch noch nicht auf dem Server vorhanden ist. Bei der Bereitstellung der Serverdatenbank wird die Plug-In-Assembly während der Plug-In-Registrierung automatisch kopiert, sodass das vorherige Problem nicht mehr auftritt.
Abhängig vom Design Ihres Plug-Ins sind für die Ausführung Ihrer Plug-Ins möglicherweise weitere referenzierte Assemblys erforderlich. Unabhängig davon, ob Sie das Plug-In in der Datenbank oder auf dem Datenträger bereitstellen, müssen Sie Kopien dieser Assemblys im globalen Assemblycache auf jedem Server ablegen, auf dem das Plug-In ausgeführt werden soll, wenn für das Plug-In andere Assemblys erforderlich sind.
So verschieben Sie ein Plug-In aus einer Entwicklungsumgebung auf einen Staging- oder Produktionsserver
- Erstellen Sie auf dem Entwicklungscomputer den Plug-In-Code. Schließen Sie keine Debuginformationen ein. Optimieren Sie das Plug-In für die Leistung.
- Registrieren Sie das Plug-In in der Dynamics 365 Server-Datenbank.
- Erstellen Sie mit der Dynamics 365 Customer Engagement (on-premises)-Webanwendung eine Lösung, oder verwenden Sie eine vorhandene, und fügen Sie das Plug-In zu dieser Lösung hinzu.
- Nachdem Sie der Lösung alle anderen gewünschten Komponenten hinzugefügt haben, exportieren Sie die Lösung.
- Importieren Sie die Lösung auf den Staging- oder Produktionsserver.
Sicherheitseinschränkungen
Es gibt eine Sicherheitseinschränkung, die es nur privilegierten Benutzern ermöglicht, Plug-Ins zu registrieren. Bei Plug-Ins, die nicht in der Sandbox registriert sind (Isolation), muss das Systembenutzerkonto, unter dem das Plug-In registriert wird, in der Gruppe Bereitstellungsadministratoren des Deployment Manager vorhanden sein. Nur das Benutzerkonto des Systemadministrators oder ein Benutzerkonto, das in der Gruppe "Bereitstellungsadministratoren " enthalten ist, kann den Deployment Manager ausführen.
Von Bedeutung
Bei nicht isolierten Plug-Ins führt das Versäumnis, das registrierende Benutzerkonto in die Gruppe "Bereitstellungsadministratoren " aufzunehmen, dazu, dass während der Plug-In-Registrierung eine Ausnahme ausgelöst wird. In der Ausnahmebeschreibung heißt es: "Nicht über ausreichende Berechtigungen verfügen, um den Erstellungsvorgang für eine SDK-Entität abzuschließen."
Bei Plug-ins, die in der Sandbox (Isolationsmodus) registriert sind, muss das Systembenutzerkonto, unter dem das Plug-in registriert wird, über die Rolle "Systemadministrator" verfügen. Eine Mitgliedschaft in der Gruppe Bereitstellungsadministratoren ist nicht erforderlich.
Siehe auch
Plug-in-Entwicklung
Debuggen eines Plug-Ins
Verpacken und Verteilen von Erweiterungen mit Dynamics 365 Customer Engagement (on-premises)-Lösungen