爲AD安全組或帳戶設置Sharepoint庫文件夾訪問權限

咱們直接拿一個應用舉例:web

爲「部門共享文檔庫」裏面的「工會」文件夾添加「domain\lixs」的「只讀」權限。api

p_w_picpath

p_w_picpath

p_w_picpath


代碼內容:安全

############################################
#Author:Lixiaosong
#Email:lixs@ourgame.com;lixiaosong8706@gmail.com
#For:設置SharePoint庫文件夾安全組權限
#Version:1.0 2015年3月26日
##############################################
function Add-SPPermissionToSeGroup {
  Param(
      [Parameter(Mandatory=$True,Position=1)]
      [string]$SPWeb,
  
      [Parameter(Mandatory=$True,Position=2)]
      [string]$SPList,

      [Parameter(Mandatory=$True,Position=3)]
      [string]$ADUser,
   
     [Parameter(Mandatory=$True,Position=4)]
     [string]$SPFolder,

     [Parameter(Mandatory=$True,Position=5)]
     [string]$SPPermission
)

Add-PSSnapin Microsoft.SharePoint.PowerShell
#http://glproject/PMO/doc
$web = get-spweb "$SPWeb"


 function GrantUserpermission($userName)
 {
  [Microsoft.SharePoint.SPUserCollection]$spusers=[Microsoft.SharePoint.SPUserCollection]$web.SiteUsers
  [Microsoft.SharePoint.SPUser]$spuser=$spusers[$userName]
  $sproleass=new-object Microsoft.SharePoint.SPRoleAssignment([Microsoft.SharePoint.SPPrincipal]$spuser)
  $folder.BreakRoleInheritance("true")
  $sproleass.RoleDefinitionBindings.Add($web.RoleDefinitions["$SPPermission"])
  $folder.RoleAssignments.Add($sproleass);
  Write-Host "Permission provided for user ", $userName
 }
 $doclib=[Microsoft.SharePoint.SPDocumentLibrary]$web.Lists["$SPlist"]
 $foldercoll=$doclib.Folders;
 foreach($folder in $foldercoll)
 {
  Write-Host $folder.Name
  if($folder.Name.Equals("$SPFolder"))
  {
   GrantUserPermission("Domain\$ADuser")
  }
 
 }
 Write-Host "Completed...."
 $web.Close()
}
相關文章
相關標籤/搜索