Zugriff verweigert, wenn mit RunWithElevatedPrivileges?
Möchte ich regelmäßige Benutzer Zugriff auf die "User Information List" Mysite root-Website. Ich bin mit "RunWithElevatedPrivileges-Methode". Noch werfen Zugriff verweigert " - Fehler. pro Beispiel mein Stamm-Websitesammlung für die mysite ist "http://network.test.com". die user wollen bewerten userinformation-Liste in dieser Websitesammlung. Wie kann er Zugriff auf das?
SPSecurity.RunWithElevatedPrivileges(delegate
{
using (SPSite site = new SPSite(SPContext.Current.Web.Site.ID))
{
ServerContext sc = ServerContext.Current;
UserProfileManager upm = new UserProfileManager(sc);
UserProfile up = null;
//get current user's profile (visitor)
if (upm.UserExists(SPContext.Current.Web.CurrentUser.LoginName))
{
up =upm.GetUserProfile(SPContext.Current.Web.CurrentUser.LoginName);
SPWeb web = SPContext.Current.Web;
SPList userInformationList = web.Lists["User Information List"];
- haben Sie den code ausführen, in der die server enthalten, die von SharePoint ?
Du musst angemeldet sein, um einen Kommentar abzugeben.
SPContext.Current
läuft außerhalb derRunWithelevatedPrivileges
erhöhten Rahmen. Für mehr info siehe diese blog-post.Sind Sie Einstellung Ihre SPWeb auf SPContext.Aktuelle.Web, das nicht über erhöhte Privilegien verfügt. Nur SPWebs erstellt von SPSites innerhalb der Delegierten erhöht sind.
So müssen Sie ersetzen
mit
Sind Sie Einstellung Ihre SPWeb auf SPContext.Aktuelle.Web diese nicht über erhöhte Privilegien verfügt.
Finden Sie diese post: