Laden...

WCF Sercvice erstellt Objekt via Activator.createInstance -> Exception

Erstellt von HappyLil vor 14 Jahren Letzter Beitrag vor 14 Jahren 784 Views
H
HappyLil Themenstarter:in
154 Beiträge seit 2007
vor 14 Jahren
WCF Sercvice erstellt Objekt via Activator.createInstance -> Exception

Hallo,
das Problem ist schwierig zu beschreiben, da es bei einem kunden in einer abgeschirmten umgebung auftritt und wir nicht mal einen stack trace erhalten. ich versuchs trotzdem.

  1. Szenarion:
  • Sharepoint Webpart ruft WCF Service auf.
  • WCF Service erstellt Objekt mittels Activator.createInstance
  1. Umgebung:
    Windows Server 2003

der WCF Service ist Impersonated, heisst der User wird vom Webpart durchgeschleust.

problem:
bei gewissen usern knallt das ganze mit der Fehlermeldung: "Could not load Assembly. Access denaid."
Bei anderen Usern, insbesondere Domänenadmins funktioniert es.

Mittlerweilen weiss ich, dass es sich um das Assembly handelt, in der die Klasse ist, die der Activator instanzieren soll.

hat jemand eine ahnung, was uns da für ein problem vorliegt?

3.728 Beiträge seit 2005
vor 14 Jahren
Sicherheit

Hallo HappyLi,

vermutlich haben die Benutzer, bei denen es knallt, keine NTFS-Leserechte auf die dynamisch geladenen Assembly-Dateien.

Impersonation sollte man tunlichst vermeiden. Man kann auch die Identität des Aufrufers feststellen und für die Authentifizierung und Authorisierung verwenden, ohne die Identität gleich für den Arbeitsthread zu übernehmen.

Das Problem ist hier vermutlich die Impersonation. Je nach Aufrufer wird der Code dann unter einem anderen Benutzer mit anderen Rechten ausgeführt. Das ist sehr anfällig für Berechtigungsprobleme. Es ist besser den Benutzer des IIS-App-Pools für die Ausführung zu verwenden.

Vor allem: Impersonation bei SharePoint??? Ist das überhaupt supported? Könnte ein Designfehler sein.

Ist das alles im LAN oder auch übers Internet zugänglich?