Plug-In-Isolation, Vertrauensstellungen und Statistiken

 

Veröffentlicht: Januar 2017

Gilt für: Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2016, Dynamics CRM Online

Microsoft Dynamics 365 (online und lokal) unterstützen die Ausführung von Plug-ins und benutzerdefinierten Workflowaktivitäten in einer isolierten Umgebung. In dieser isolierten Umgebung, auch bekannt als Sandbox, kann ein Plug-In oder eine benutzerdefinierte Aktivität die ganze Leistungsfähigkeit von Microsoft Dynamics 365 SDK nutzen, um auf den Webdienst der Organisation zuzugreifen. Der Zugriff auf das Dateisystem, das Systemereignisprotokoll, bestimmte Netzwerkprotokollen, die Registrierung und mehr ist in der Sandbox nicht möglich. Sandbox-Plug-ins und benutzerdefinierte Aktivitäten haben jedoch Zugriff auf externe Endpunkte wie Azure Cloud Services.

Microsoft Dynamics 365 erfasst Laufzeitstatistiken und überwacht Plug-ins und benutzerdefinierte Workflowaktivitäten, die in der Sandbox ausgeführt werden. Wenn der Sandboxarbeitsprozess, der diesen benutzerdefinierten Code hostet, CPU- Speicher- oder Handle-Grenzwerte überschreitet oder auf eine andere Weise nicht reagiert, beendet die Plattform den jeweiligen Prozess. An diesem Punkt schlagen alle derzeit ausgeführten Plug-ins oder benutzerdefinierten Workflowaktivitäten in diesem Arbeitsprozess mit Ausnahmen fehl. Bei der nächsten Ausführung funktionieren das Plug-in und die benutzerdefinierte Workflowaktivität jedoch normal. Es gibt einen Arbeitsprozess Organisation, sodass Fehler in einer Organisation keine Auswirkungen auf eine andere Organisation haben.

Zusammenfassend ist die Sandbox die empfohlene Ausführungsumgebung für Plug-ins, da sie sicherer ist, die Laufzeitüberwachung und Statistikberichte unterstützt und in allen Microsoft Dynamics 365-Bereitstellungen unterstützt wird. Außerdem unterstützt Microsoft Dynamics 365 (online) die Ausführung benutzerdefinierter Workflowaktivitäten nur, wenn sie in der Sandbox registriert sind.

Vertrauensstellungen

Entwickler haben die Option des Registrierens ihrer Plug-ins in der Sandbox, bezeichnet als teilweise Vertrauensstellung, oder außerhalb der Sandbox, bezeichnet als vollständige Vertrauensstellung. Die vollständige Vertrauensstellung wird für lokale und Internet-Microsoft Dynamics 365-Bereitstellungen unterstützt. Für eine Microsoft Dynamics 365 (online)-Bereitstellung müssen Plug-ins oder benutzerdefinierte Workflowaktivitäten in der Sandbox (teilweise vertrauensstellung) registriert werden, wo sie wie oben beschrieben isoliert sind.

Wichtig

Benutzerdefinierte Workflowaktivitäten und Plug-ins, die mithilfe des SDK Microsoft Dynamics CRM 4.0 entwickelt wurden, werden für die Ausführung in der Sandbox oder von Microsoft Dynamics 365 (online) nicht unterstützt.

Laufzeitstatistik

Die Microsoft Dynamics 365-Plattform erfasst Laufzeitinformationen zu Plug-ins und benutzerdefinierten Workflowaktivitäten, die in der Sandbox ausgeführt werden. Diese Informationen werden in der Datenbank mithilfe von PluginTypeStatistic-Entitätsdatensätzen gespeichert. Diese Datensätze werden innerhalb von 30 Minuten oder einer Stunde nach der Ausführung des benutzerdefinierten Sandbox-Codes aufgefüllt. Vgl. die PluginTypeStatistic-Attribute, um zu sehen, welche Informationen erfasst werden. Sie können diese Informationen anzeigen, indem Sie die Abrufmeldung oder -methode verwenden.

Webzugriff

Sandbox-Plug-ins und benutzerdefinierte Workflowaktivitäten können über die Protokolle HTTP und HTTPS auf das Netzwerk zugreifen. Dieses Feature bietet Unterstützung für den Zugriff auf populäre Websites wie soziale Websites, Newsfeeds, Webdienste und vieles mehr. Die folgenden Internet-Zugriffsbeschränkungen gelten für diese Sandboxfunktion.

  • Nur die Protokolle HTTP und HTTPS sind erlaubt.

  • Der Zugriff auf localhost (Loopback) ist nicht erlaubt.

  • IP-Adressen können nicht verwendet werden. Sie müssen eine benannte Internetadresse verwenden, die die DNS-Namensauflösung erfordert.

  • Anonyme Authentifizierung wird unterstützt und empfohlen. Es gibt keine Vorkehrung für die Aufforderung des angemeldeten Benutzers zur Eingabe oder zum Speichern von Anmeldeinformationen.

Diese Standardinternetzugriffsbeschränkungen werden in einem Registrierungsschlüssel auf dem Server definiert, der den Microsoft.Crm.Sandbox.HostService.exe Prozess ausführt. Der Wert des Registrierungsschlüssels kann vom Systemadministrator geändert und nach Unternehmens- und Sicherheitsbedürfnissen geändert werden. Der Registrierungsschlüsselpfad auf dem Server ist:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSCRM\SandboxWorkerOutboundUriPattern

Der Schlüsselwert ist eine reguläre Ausdruckszeichenfolge, die die Internetzugriffseinschränkungen definiert. Der Standardschlüsselwert ist:

"^http[s]?://(?!((localhost[:/])|(\[.*\])|([0-9]+[:/])|(0x[0-9a-f]+[:/])|(((([0-9]+)|(0x[0-9A-F]+))\.){3}(([0-9]+)|(0x[0-9A-F]+))[:/]))).+";

Durch die Änderung dieses Registrierungsschlüsselwerts können Sie den Internetzugriff für Sandbox-Plug-ins ändern.

System_CAPS_security Sicherheit Hinweis

Die Sandbox-Verarbeitungsservicerolle aktiviert standardmäßig ausgehende Aufrufe. Sollen keine ausgehenden Aufrufe vom benutzerdefinierten Code erlaubt sein (Plug-ins oder benutzerdefinierte Aktivitäten), können Sie diese deaktivieren, indem Sie den folgenden Registrierungsschlüssel auf 1 setzen (DWORD), und zwar auf dem Server, der die Sandbox-Verarbeitungsservicerolle hostet. Starten Sie dann den Microsoft Dynamics 365-Sandkasten-Verarbeitungsdienst neu.

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSCRM\SandboxWorkerDisableOutboundCalls

Siehe auch

Einführung in das Ereignisframework
Schreiben eines Plug-Ins
Erstellen einer benutzerdefinierten Workflowaktivität
Azure-Erweiterungen für Microsoft Dynamics 365
PluginTypeStatistic-Entitätsmeldungen und -methoden
Beispiel: Webzugriff über ein Sandkasten-Plug-In

Microsoft Dynamics 365

© 2017 Microsoft. Alle Rechte vorbehalten. Copyright