C# 使用 SharePoint 客户端对象模型检查 SharePoint 列表权限



从客户端应用程序中,我需要使用客户端对象模型检查给定用户是否对给定文档库具有权限。我想要与以下服务器对象函数等效的东西

spList.DoesUserHavePermissions(SPBasePermissions.EditListItems);
spList.DoesUserHavePermissions(SPBasePermissions.ManageLists);
spList.DoesUserHavePermissions(SPBasePermissions.AddListItems);
spList.DoesUserHavePermissions(SPBasePermissions.AddListItems)

谢谢!

我找到了本博客中提到的列表项权限解决方案,并且它适用于列表。解决方案如下:

private static bool DoesUserHasPermission(ClientContext context, List list, PermissionKind permissionKind)
        {
            context.Load(list, t => t.EffectiveBasePermissions);
            context.ExecuteQuery();
            return list.EffectiveBasePermissions.Has(permissionKind);
        }

从客户端应用程序中,最佳方法是使用 SharePoint Web 服务。SharePoint 包含许多可供第三方开发人员远程开发的服务。

在您的情况下,我建议使用 SharePoint 权限 Web 服务 (http:///_vti_bin/permissions.asmx)。

您可以向 SharePoint 查询有关项目权限的信息。这是一个分步教程: http://jamestsai.net/Blog/post/Understand-SharePoint-Permissions-Part-2-Check-SharePoint-usergroup-permissions-with-Permissions-web-service-and-JavaScript.aspx

最新更新