当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] SharePoint Online:检查文件夹是否具有唯一权限

作者:精品下载站 日期:2024-12-14 15:34:08 浏览:15 分类:玩电脑

SharePoint Online:检查文件夹是否具有唯一权限


要求:使用 PowerShell 检查文件夹是否在 SharePoint Online 中具有唯一权限。

[玩转系统] SharePoint Online:检查文件夹是否具有唯一权限

如何检查文件夹是否具有唯一权限?

默认情况下,新文件夹将具有从其父文件夹或库继承的权限。可以按照以下简单步骤检查文件夹在 SharePoint Online 中是否具有唯一权限。此过程将有助于确保所有用户对 SharePoint 站点中的文件夹和文件夹内的文件具有正确的访问级别。让我们看看如何检查文件夹在 SharePoint Online 中是否具有唯一权限。

  1. 浏览到特定文件夹所在的位置。
  2. 选择文件夹,单击“i”按钮打开信息面板。单击“管理访问”链接。

    [玩转系统] SharePoint Online:检查文件夹是否具有唯一权限

  3. 单击“管理访问”窗格中的“高级”链接。
  4. 如果该文件夹具有唯一权限,您将看到“此文件夹具有唯一权限”。顶部区域的消息。

    [玩转系统] SharePoint Online:检查文件夹是否具有唯一权限

使用 PowerShell CSOM 检查文件夹的权限继承是否已损坏

向 SharePoint Online 中的文件夹和文件授予权限时,确保该文件夹具有唯一的权限非常重要。在本指南中,我们将了解如何使用 PowerShell 检查文件夹在 SharePoint Online 中是否具有唯一权限。


Import-Module Microsoft.Online.SharePoint.PowerShell -DisableNameChecking

#Variables
$SiteURL = "https://crescent.sharepoint.com/sites/marketing/"
$FolderServerRelativeURL = "/sites/marketing/Branding/2018"

Try {
    #Get Credentials to connect
    $Cred= Get-Credential
  
    #Setup the context
    $Ctx = New-Object Microsoft.SharePoint.Client.ClientContext($SiteURL)
    $Ctx.Credentials = New-Object Microsoft.SharePoint.Client.SharePointOnlineCredentials($Cred.Username, $Cred.Password)
  
    #Get the Folder
    $Folder = $Ctx.Web.GetFolderByServerRelativeUrl($FolderServerRelativeURL)
    $Ctx.Load($Folder)
    $Ctx.ExecuteQuery()
      
    #Check if Folder has unique permissions
    $Folder.ListItemAllFields.Retrieve("HasUniqueRoleAssignments")
    $Ctx.ExecuteQuery()    
    Write-host -ForegroundColor Green "Folder has unique Permissions:" $Folder.ListItemAllFields.HasUniqueRoleAssignments
}
Catch {
    write-host -f Red "Error:" $_.Exception.Message
}

PowerShell 检查文件夹是否具有唯一权限:

您可以使用 PnP PowerShell 快速检查文件夹是否具有唯一权限,如下所示:


#Variables
$SiteURL = "https://crescent.sharepoint.com/sites/marketing/"
$FolderServerRelativeURL = "/sites/marketing/Shared Documents/2018"

#Connect to PnP Online
Connect-PnPOnline -Url $SiteURL -Interactive

#Get Folder has unique permissions
$Folder = Get-PnPFolder -Url $FolderServerRelativeURL -Includes ListItemAllFields.HasUniqueRoleAssignments
Write-Host $Folder.ListItemAllFields.HasUniqueRoleAssignments 

获取SharePoint Online Library中所有文件夹的权限:

检查文档库中所有文件夹的唯一权限怎么样?


#Variables
$SiteURL = "https://crescent.sharepoint.com/sites/marketing/"
$ListSiteRelativeURL = "/Shared Documents"

#Connect to PnP Online
Connect-PnPOnline -Url $SiteURL -Credentials (Get-Credential)

#Get Folder permissions recursively
Function Get-FolderPermissions($FolderURL)
{
    #Get all sub-folders of the Folder
    $SubFolders = Get-PnPFolderItem -FolderSiteRelativeUrl $FolderURL -ItemType Folder | Where {$_.Name -ne "Forms" -and $_.Name -ne "Document"} 
 
    #Loop through the sub-folders
    ForEach($SubFolder in $SubFolders)
    {
        #Calculate site relative URL of the Folder
        $SubFolderURL = $FolderUrl+"/"+$SubFolder.Name

        #Get Folder HasUniqueRoleAssignments property
        $Folder = Get-PnPFolder -Url $SubFolder.ServerRelativeUrl -Includes ListItemAllFields.HasUniqueRoleAssignments
        Write-Host "Folder '$($SubFolder.ServerRelativeUrl)' has unique permissions:" $Folder.ListItemAllFields.HasUniqueRoleAssignments

        #Call the function recursively
        Get-FolderPermissions $SubFolderURL
    }
}
   
#Call the function
Get-FolderPermissions $ListSiteRelativeURL

通过执行本教程中概述的步骤,您现在应该能够使用 PowerShell 检查 SharePoint Online 中的特定文件夹是否具有唯一权限。同样,要获取具有唯一权限的所有列表项,请参阅:SharePoint Online:使用 PowerShell 获取具有唯一权限的所有列表项

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯