2013-10-25 8 views
5

I MS Dynamics CRM 2011-Plugin Ich schreibe die Manipulationen mit Daten im Auftrag des Systembenutzers ausführt: Ändern Zustände in gewünschter Weise, Füllen Verwaltungsinformationen usw.MS CRM-Plugin nimmt die Identität als falsch Benutzer

I bin folgenden Code OrganizationService läuft im Namen der SYSTEM zu bekommen:

IOrganizationServiceFactory factory = (IOrganizationServiceFactory)serviceProvider.GetService(typeof(IOrganizationServiceFactory)); 
IOrganizationService service = factory.CreateOrganizationService(null); 

und auf die Entwicklungsumgebung läuft alles glatt, aber wenn ich Montage Bereitstellung auf Umwelt Inszenierung, aus irgendeinem Grund dieser Code nicht mehr funktioniert. System hat einen Benutzer gewählt, nennen wir ihn John Doe und führt Aktionen im Auftrag von ihm.

Ich kann nicht bekommen, warum dies passieren könnte: Beide Umgebungen sind mehr oder weniger gleich, der einzige Unterschied ist die IFD auf Staging verwendet.

Ist es möglich, Benutzer SYSTEM irgendwo im MS CRM zu deaktivieren? Wenn ja, wo finde ich diese Einstellung? Was sollte ich noch überprüfen, um das Problem zu beheben?

+0

Die Benutzer 'SYSTEM' und' INTEGRATION' werden immer von CRM deaktiviert, aber der Identitätswechsel sollte trotzdem funktionieren. Wenn Sie eine ungefilterte Ansicht Ihrer Benutzer anzeigen, werden "SYSTEM" und "INTEGRATION" angezeigt? –

Antwort

3

Die Art und Weise, in der Sie ein IOrganizationService Objekt erstellen korrekt

Der Parameter ‚null‘ auf der CreateOrganizationService Funktion zeigt an, dass ein Dienst für das Systemkonto erstellt werden. Abrufen und Erstellen erfolgt über das Konto SYSTEM. Es ist kein weiterer Identitätswechsel erforderlich.

Weitere Informationen finden Sie unter MSDN.

Ist das Plugin in beiden Umgebungen auf die gleiche Weise registriert? Im PluginRegistrationTool kann ein anderer Benutzer ausgewählt werden, unter dem das Plugin läuft. Was hast du ausgewählt?

Sie können den Systembenutzer nicht deaktivieren, der Benutzer ist standardmäßig deaktiviert. Systemprozesse verwenden das Konto.

Verwandte Themen