代码之家  ›  专栏  ›  技术社区  ›  dirq

在Windows Sharepoint Services 3.0中仅编辑拥有的列表项

  •  4
  • dirq  · 技术社区  · 17 年前

    是否有办法限制WSS 3.0中的“编辑项”权限,只允许用户编辑自己的文档或列表项?我们需要用户能够只编辑他创建的文档/列表项,而不是其他人创建的项。所以,本质上我们需要一个子集的编辑权限和添加权限。

    这在Windows Sharepoint Services 3.0中可能吗?是否有方法在代码或功能中创建自定义权限?

    8 回复  |  直到 17 年前
        1
  •  4
  •   SeanC    12 年前

    Settings->List Settings->Avanced settings

    SPDocumentLibrary onlyOwnLib = theWeb.Lists["DocLibName"]  
    onlyOwnLib.WriteSecurity = 2;  
    onlyOwnLib.Update();  
    

    这应该可以做到。然而,显然这并没有真正设置权限;它只是控制用户可以通过UI做什么。如果他们有另一个到库的接口(比如通过WebDAV)或列表(比如通过web服务),这不会阻止他们编辑他们没有创建的项目。如果你想要真正的项目级权限,我认为你需要走事件处理程序路线。

    post .ReadSecurity

        2
  •  2
  •   Community Mohan Dere    9 年前

    如果将事件处理程序添加到文档列表中,则应该能够将该项目的编辑权限限制为创建该项目的用户。

    我经常需要将文档从另一个系统复制到SharePoint中的列表中,在这种情况下,编辑权限将分配给传输文档的系统用户,除非您使用Kirk Liemohn建议的方法 here

        3
  •  1
  •   Andy Burns    17 年前

    请注意,对大量文档的项目级权限会大大增加SQL服务器的负载。

        4
  •  1
  •   arramranjith    17 年前

    转到列表->列表设置->高级设置

    您将看到以下部分

    读取权限:指定用户可以读取的项目

    所有物品 只有自己

    编辑权限:指定用户可以编辑的项目

    所有物品 只有自己 无

    根据需求选择选项。就这样了。。 想了解更多信息,请点击http://mastermoss.wordpress.com

        5
  •  1
  •   Lucas Stark    15 年前

    过去对我来说行之有效的一种方法是在添加库项时使用工作流来配置权限。

    http://www.sharepointusecases.com/index.php/2010/03/configure-item-level-permissions-for-document-libraries-part-2/ 了解详情。

        6
  •  0
  •   Brian    17 年前

    我相信这样的权限可以通过用户界面创建。这取决于你拥有的列表项的规模和数量,但你可以做以下两件事之一。首先(无需创建脚本),您可以给每个人一个自定义的“读取”权限访问权限,这不允许他们在读取权限中做您能做的一切,但允许他们添加项目。然后逐项单击该项目->管理权限->(授予特定用户对其文档的Contribute权限)。

    如果您创建的SharePoint列表不切实际,您可以创建一个脚本来遍历所有项目,并验证用户是否具有贡献权限(否则将为该用户设置贡献权限)。

        7
  •  0
  •   Brian    17 年前

    此外,你可以给每个人自己的文件夹。

    授予每个人SharePoint列表/文档库的读取权限,但授予每个人对自己文件夹的完全控制权限。这将允许每个人阅读列表中的所有内容,但可以创建/编辑自己的文档。

        8
  •  0
  •   CodeThug    16 年前

    如果你想在文档库上获得“仅限他们自己”的权限,那么它不是现成的。但我在CodePlex上创建了一个解决方案,为文档库添加了此功能-请查看 http://moresharepoint.codeplex.com .