我一直在开发一个界面,为 Sharepoint 2010 上的当前用户添加列表警报。对于高权限用户,我可以从列表和文档中添加和删除警报,但是当我使用低级别用户“访客”时读取站点和列表/文档的权限 我无法添加多个警报或删除它们。一个接一个,我得到一个“拒绝访问”。
如果你愿意,我可以给你看我的代码。TIA。
我一直在开发一个界面,为 Sharepoint 2010 上的当前用户添加列表警报。对于高权限用户,我可以从列表和文档中添加和删除警报,但是当我使用低级别用户“访客”时读取站点和列表/文档的权限 我无法添加多个警报或删除它们。一个接一个,我得到一个“拒绝访问”。
如果你愿意,我可以给你看我的代码。TIA。
假设您没有被沙盒化,您可以使用委托以提升权限运行吗?例如
string employeeIdToRemove = "1337";
Guid siteGuid = SPContext.Current.Site.ID;
SPSecurity.RunWithElevatedPermissions(delegate
{
using (SPSite mySite = new SPSite(siteGuid))
{
SPListItemCollection listItems = mySite.Lists["SuperSecretList"].Items;
int itemCount = listItems.Count;
for (int k=0; k<itemCount; k++)
{
SPListItem item = listItems[k];
if (employeeIdToRemove.Equals(item["Employee"].ToString()))
{
listItems.Delete(k);
}
}
}
});