2016-06-21 94 views
1

我想從站點上的所有位置刪除站點上的所有唯一權限,無論它們是庫中的列表,庫,列表項,文件夾還是文檔。必須刪除所有唯一權限。刪除站點上所有位置的唯一權限SharePoint 2013

我發現PS腳本刪除列表或站點上的唯一權限,但就是這樣,沒有任何示例要從所有位置刪除。

腳本,我發現有波紋管:
站點:

$WebURL ="#" 
$web = Get-SPWeb $WebURL 
if (($web.HasUniqueRoleAssignments) -and ($web.IsRootWeb -eq $false)) 
{ 
    $web.ResetRoleInheritance() 
    Write-host "Broken Inheritance Reset on web:" $web.URL 
} 

的列表:

$WebURL ="#" 
$Web = Get-SPWeb $WebURL 
$ListColl = $web.lists | Where-Object 
{ 
    ($_.HasUniqueRoleAssignments -eq $true) -and ($_.hidden -eq $false) 
} 
foreach($list in $ListColl) #if($list) #Exists 
{ 
    $list.ResetRoleInheritance() 
    Write-host "Broken Inheritance Reset on List:" $list.Title 
} 

任何幫助嗎?

回答

0

所以,我設法找到了我的問題的解決方案。
貝婁是PowerShell腳本代碼:

Add-PSSnapin microsoft.sharepoint.powershell -ErrorAction SilentlyContinue 
#Variable for Web URL 
$WebURL ="#" 
#get Web object 
$Web = Get-SPWeb $WebURL 

#Get Lists with Unique permissions - Exclude Hidden lists 
$ListColl = $web.lists | Where-Object { ($_.hidden -eq $false) } 
#Enumerate through each list and reset permission inheritance 
foreach($list in $ListColl) 
{ 
#Reset list inheritance 
$list.ResetRoleInheritance() 
Write-host "Broken Inheritance Reset on List:" $list.Title 

$items = $list.Items | Where-Object{$_.HasUniqueRoleAssignments}; 
foreach($item in $items) 
{ 
    #Reset broken list item inheritance 
    $item.ResetRoleInheritance() 
    Write-host "Broken Inheritance Reset on List Item:" $item.URL 
} 
$folders = $list.Folders 
if ($folders.Count -gt 0) 
{ 
foreach ($folder in $folders) 
{ 
    if ($folder.HasUniqueRoleAssignments -eq $True) 
    { 
    $folder.ResetRoleInheritance() 
    $folder.update() 
    } 
} 
} 
} 

就是這樣,這個腳本刪除在一個網站上的所有文檔,項目,列表,庫,文件夾的所有獨特的權限。
我用這頁的起點:
http://www.sharepointdiary.com/2014/12/delete-unique-permissions-reset-broken-inheritance-using-powershell.html

相關問題