Tuesday, 14 January 2014

Document set permissions using power shell script

 $web = Get-SPWeb "http://c4968397007"

 $listName="Employee"

 $groupOne="Engineers"
 $groupTwo="Managers"
 $groupThree="Developers"

 $setOne="EngineersSet"
 $setTwo="ManagersSet"
 $setThree="DevelopersSet"


function GrantGroupPermission($groupName)
{

if($web.SiteGroups[$groupName] -eq $null)
{
 $web.SiteGroups.Add($groupName,$web.Site.Owner, "Use this group to grant people

    Full Control permissions to the $web site")
}

    $PAGroup = $web.SiteGroups[$groupName]
    $sproleass = new-object Microsoft.SharePoint.SPRoleAssignment($PAGroup)

   

    $folder.BreakRoleInheritance("true")
    $sproleass.RoleDefinitionBindings.Add($web.RoleDefinitions["Read"])
    $folder.RoleAssignments.Remove("")
    $web.Update()
    $folder.RoleAssignments.Add($sproleass)
    $web.Update()
   

}

    $doclib=[Microsoft.SharePoint.SPDocumentLibrary]$web.Lists[$listName]
    $foldercoll=$doclib.Folders;


foreach($folder in $foldercoll)
{
     if($folder.Name.Equals($setOne))
     {
        GrantGroupPermission($groupOne)
     }

     if($folder.Name.Equals($setTwo))
     {
        GrantGroupPermission($groupTwo)
     }

     if($folder.Name.Equals($setThree))
     {
        GrantGroupPermission($groupThree)
     }
}




$web.Update()
$web.Dispose()

No comments:

Post a Comment