Sharepoint-Webpart-Sicherheit Ausnahme
Habe ich eine benutzerdefinierte sharepoint-Webpart, der werfen die folgende Ausnahme:
System.Security.SecurityException: Request for the permission of type 'Microsoft.SharePoint.Security.SharePointPermission, Microsoft.SharePoint.Security, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c' failed.
at Microsoft.SharePoint.SPSecurity.RunWithElevatedPrivileges(CodeToRunElevated secureCode)
at Waverly.SharePoint.Features.WebParts.SearchesListWebPart.Render(HtmlTextWriter writer)
The action that failed was:
Demand
The type of the first permission that failed was:
Microsoft.SharePoint.Security.SharePointPermission
The Zone of the assembly that failed was:
MyComputer
Meine Theorie ist, dass Sharepoint nicht das Vertrauen, um die Ausführung der web-Teil, aber ich habe Schwierigkeiten, herauszufinden, wie zu Debuggen dieses Problems. Wer noch keine Erfahrung Debuggen so etwas?
InformationsquelleAutor sestocker | 2008-12-17
Du musst angemeldet sein, um einen Kommentar abzugeben.
Gibt es mehrere Optionen, die Sie haben. Die erste ist, installieren Sie die assembly in den GAC. Sie erhalten dann volles Vertrauen, aber Sie müssen es im GAC installieren, starker name, etc. Die zweite Möglichkeit ist, gehen Sie ins web.config, und fügen Sie es der Liste der vertrauenswürdigen. Dieser Artikel und diese eine wird Ihnen helfen, auf diesem Weg.
Die Dritte option ist lassen Sie Ihre Montage in der C:\inetpub\wwwroot\wss\VirtualDirectories[port]_app_bin Ordner. Dies ist festgelegt in der globalen SharePoint config voll Vertrauen alle Baugruppen drin. Möchten Sie vielleicht versuchen, erstmal nur um zu sehen, ob es hilft, und wenn dem so ist, verwenden Sie eine der beiden anderen Methoden (weil das technisch, dass ein nicht dokumentiertes feature und könnte geändert werden)
EDIT: Ok, es gibt ein paar Dinge, die Sie ausprobieren können. Versuchen Sie, stoßen sich die Allgemeine Vertrauenswürdigkeit, wie gezeigt,in diesem Artikel. Im Grunde suchen:
<trust level="Full" originUrl="" />
Wenn das funktioniert, dann zeigt es an, dass Sie sich auf eine DLL, die ist nicht vertrauenswürdig. Beachten Sie, dass Sie nicht wollen, lassen Sie es mit Vertrauen, Niveau Voll, da das bedeutet, jedes webpart hat volles Vertrauen.
Hilft das?
InformationsquelleAutor Cory Foy
Es ist verrückt.
Ich kann nicht führen Sie die folgende Zeile in einem web-Artikel:
Kann ich jedoch ausführen nicht Verwendung von web parts.
Er wirft mir eine ähnliche Ausnahme, obwohl die DLL im GAC plus Hinzugefügt werden safecontrols.
Er auch sais, dass
warf eine Ausnahme.
Was ist das problem?
Lösung
Es stellt sich heraus, dass oft Fehler wie thses auftreten, weil verschiedene Aktionen passieren in der webpart-Konstruktor. Sie fast nicht interagieren mit SharePoint-Objektmodell gibt.
Bewegen code irgendwo sonst, und es könnte funktionieren. Ich zog mein code für CreateChildControls-und es funktionierte.
InformationsquelleAutor Janis Veinbergs