自己编写了一个对sharepoint list(UserInfo)操作的页面,添加到sharepoint网站,匿名用户或者对list(UserInfo)只用只读权限的用户想对list(UserInfo)进行操作(添加、删除、修改)就只能提升用户的权限。
/// <summary>
/// 添加
/// </summary>
/// <returns></returns>
private bool AddItem(string username,string password)
{
bool flag = false;
SPSecurity.RunWithElevatedPrivileges(//提升权限
delegate()
{
try
{
using (SPWeb web = new SPSite(webUrl).OpenWeb())
{
web.AllowUnsafeUpdates = true;
SPList list = web.GetList(webUrl + "/Lists/UserInfo");
SPListItem item = list.Items.Add();
item["Title"] = username;
item["Password"] = password;
item["Author"] = SPContext.Current.Web.CurrentUser;
item.Update();
flag = true;
}
}
catch (Exception ex)
{
flag = false;
}
});
return flag;
}
操作完以上代码我们会发现以匿名用户添加的数据他的创建人(item["Author"])是“系统账户”,登录后的用户的创建人(item["Author"])是本人。
/// <summary>
/// 添加
/// </summary>
/// <returns></returns>
private bool AddItem(string username,string password)
{
bool flag = false;
SPSecurity.RunWithElevatedPrivileges(//提升权限
delegate()
{
try
{
using (SPWeb web = new SPSite(webUrl).OpenWeb())
{
web.AllowUnsafeUpdates = true;
SPList list = web.GetList(webUrl + "/Lists/UserInfo");
SPListItem item = list.Items.Add();
item["Title"] = username;
item["Password"] = password;
item["Author"] = SPContext.Current.Web.CurrentUser;
item.Update();
flag = true;
}
}
catch (Exception ex)
{
flag = false;
}
});
return flag;
}
操作完以上代码我们会发现以匿名用户添加的数据他的创建人(item["Author"])是“系统账户”,登录后的用户的创建人(item["Author"])是本人。