Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Below is the PowerShell Script:
$spSite = Get-SPSite "http://sedwdevrtm:432/sites/com"[xml]$file = Get-Content "C:\Users\Administrator\Desktop\XML\XmlSitePermissions.xml"$Permissionname = $file.sites.site.sitepermission$Permission = $file.sites.Permission.Permissions$spWeb = $spSite | Get-SPWebWrite-Host($spWeb)# we add a new Permission Level name "DotcomReadonly" to the site, which will allow users to only add new items (no editing or removing)# check to see if the permission your are going to add is already existing.. if null proceed#foreach ($folder in $Permissionname)for($i=0; $i -lt $Permissionname.count; $i++){Write-Host ($Permissionname[$i])if($spWeb.RoleDefinitions[$Permissionname[$i]] -eq $null){ $spRoleDefinition = New-Object Microsoft.SharePoint.SPRoleDefinition $spRoleDefinition.Name = $Permissionname[$i] $spRoleDefinition.Description = $Permission[$i] #$spRoleDefinition.BasePermissions = "ViewListItems, AddListItems, Open, ViewPages" $spRoleDefinition.BasePermissions = $Permission[$i] $spweb.RoleDefinitions.Add($spRoleDefinition) }}$spWeb.Dispose()$spSite.Dispose()
will read the permissions from below xml file
<?xml version="1.0"?>
<sites>
<site>
<sitepermission>DotcomReadonly</sitepermission>
<sitepermission>DotcomContribute</sitepermission>
<sitepermission>DotcomSiteAdministrator</sitepermission>
</site>
<Permission>
<Permissions>ViewListItems,AddListItems,Open,ViewPages</Permissions>
<Permissions>ViewListItems,AddListItems,OpenItems,Open,ViewPages</Permissions>
<Permissions>ManageLists</Permissions>
</Permission>
</sites>