如何在Sharepoint文档库上设置自定义权限并将其导出到模板中?

时间:2012-10-04 13:45:06

标签: sharepoint sharepoint-2010

Sharepoint 2010

我有3套文档库,其中包含按文件夹组织的大量文档。 我们的想法是能够为集合中的任何站点实例化这3个文档库中的任何一个。这样就可以在创建时复制结构。

问题是这些库具有一组受限制的权限,这些权限与父项不同(停止继承权限选项)。但我注意到,当我实例化任何库模板时,不保留权限。

有没有办法在模板中存储一组特定权限?

例如,这可能是其中一个文档库的结构:

  • 文件1(所有人都可以访问)
  • 文件2(所有人都可以访问)
  • 文件夹1(全部可访问)
  • >>文件3
  • >>文件4
  • >>文件5
  • 文件夹2(只能由管理组访问)
  • >>文件6
  • >> 7号文件

------- EDIT ---------

我尝试过使用Powershell cmdlet

导出图书馆:

Export-SPWeb -Identity http://server/sites/site1/SampleLibrary -path "sampleLibraryExport.cmp" -IncludeUserSecurity -ItemUrl "3rd Party Engagements" 

删除了库并再次使用:

重新导入
Import-SPWeb -Identity http://server/sites/site1/SampleLibrary -path "sampleLibraryExport.cmp" -IncludeUserSecurity

但是,自定义权限已经消失,现在已设置为场管理员帐户并跨文件继承

谢谢,

乌梅

2 个答案:

答案 0 :(得分:1)

要传输具有权限的库并存储用户身份,您可以尝试使用SharePoint部署。内部Import-SPWeb也使用SharePoint部署,但它不受支持。如果您将直接使用SharePoint对象模型并编写一些C#或PowerShell,则可以使用权限传输列表。您可以找到here一些用于传输spweb的示例,还有一些代码用于列表,请查看方法GetExportList。我不是假装现成的解决方案,但如果你看看带有问题的SharePoint内容部署,这对你有帮助

答案 1 :(得分:0)

这是我最后使用的解决方案,它涉及一个自定义的PowerShell脚本,它循环遍历文件和文件夹,并设置单独定义的权限。

http://codebroth.com/blog/2012/10/copying-sharepoint-2010-document-libraries-wit-powershell/