我建立了一个自定义SharePoint列表,该列表以编程方式调整了每个列表项的权限。该应用程序的这一部分通过清除列表项中的所有权限,并将权限添加到我要授予其“读取”或“贡献”权限的人员。我相信应用程序的这一部分是正确的:在列表项上选择“管理权限”我可以在“权限”列表中看到有问题的列表项的相应用户和角色。
但是,我惊讶地发现只有提交列表项的用户才能成功编辑该项目。我将用以下两个用户描述所看到的内容:UserA和UserB。 UserA提交了列表项。分配权限(手动或编程)后,UserB尝试编辑同一列表项。
UserB无法编辑列表项:
UserB可以在项目工具栏上看到“编辑项目”链接。
UserB可以单击链接,然后将看到EditForm.aspx。
当用户B进行更改并按提交时,用户B会遇到现成的SharePoint“访问被拒绝”错误页面。
列表项更新的事件处理程序不会触发。
手动提升UserB的包括完全控制的权限不会影响上述行为。
相比之下,UserA遇到的行为更可预测:
UserA可以在项目工具栏上看到“编辑项目”链接。
UserA可以单击链接,然后将看到EditForm.aspx。
当UserA提交时,更改将被保留,并且用户将被重定向回项目列表。
UserA提交后,事件处理程序将触发。
这给我留下了几个问题:
这是预期的行为吗
我设法实现的SharePoint
俯瞰?
如何允许UserB修改列表项?
最佳答案
您能否检查一下“设置”>“高级设置”>“项目级别权限”,以查看其中的编辑访问设置是什么?
在处理事件时,应将其设置为“所有项目”?