[玩转系统] SharePoint Online:使用 PowerShell 获取子网站权限报告
作者:精品下载站 日期:2024-12-14 15:54:06 浏览:14 分类:玩电脑
SharePoint Online:使用 PowerShell 获取子网站权限报告
要求:用于获取 SharePoint Online 中的子网站权限的 PowerShell 脚本。
如何获取SharePoint Online中的子网站权限?
您是否需要访问 SharePoint Online 网站权限但不知道如何操作?如果是这样,这篇博文适合您!通过几个步骤,您将能够查看任何给定 SharePoint Online 上的所有网站权限。我一直致力于一个提高 SharePoint Online 网站安全性的项目。一个问题是太多人可以访问该网站,我需要弄清楚哪些人可以从该网站中删除。
要获取 SharePoint Online 子网站的权限,
这将为您提供有权访问该子网站的所有用户和组。为网站创建权限报告怎么样?当然,我已经创建了一个报告,其中列出了对特定 SharePoint Online 网站具有权限的所有用户。这帮助我确定哪些用户不再需要访问权限。
SharePoint Online:PowerShell 获取子网站权限
此 PowerShell 脚本提取并导出给定子网站的所有直接权限(不是任何基础对象,例如列表、文件夹或文件)。该报告可用于更好地了解访问和使用您网站的所有人员,并帮助您确定是否需要进行任何更改来满足组织安全要求。
#Parameters
$SiteURL = "https://crescent.sharepoint.com/sites/Marketing/2020"
$ReportOutput = "C:\Temp\SitePermissionRpt.csv"
#Connect to Site
Connect-PnPonline -Url $SiteURL -Interactive
#Get the web
$Web = Get-PnPWeb -Includes RoleAssignments
#Loop through each permission assigned and extract details
$PermissionData = @()
ForEach ($RoleAssignment in $Web.RoleAssignments)
{
#Get the Permission Levels assigned and Member
Get-PnPProperty -ClientObject $RoleAssignment -Property RoleDefinitionBindings, Member
#Get the Permission Levels assigned
$PermissionLevels = ($RoleAssignment.RoleDefinitionBindings | Select -ExpandProperty Name | Where {$_ -ne "Limited Access"}) -join ","
$PermissionType = $RoleAssignment.Member.PrincipalType
#Leave Principals with no Permissions
If($PermissionLevels.Length -eq 0) {Continue}
#Collect Permission Data
$Permissions = New-Object PSObject
$Permissions | Add-Member NoteProperty Name($RoleAssignment.Member.Title)
$Permissions | Add-Member NoteProperty Type($PermissionType)
$Permissions | Add-Member NoteProperty PermissionLevels($PermissionLevels)
$PermissionData += $Permissions
}
$PermissionData
$PermissionData | Export-csv -path $ReportOutput -NoTypeInformation
该脚本从子网站获取所有权限并生成 CSV,如下所示:
SharePoint Online:PowerShell 获取网站权限
虽然上面的脚本提取了应用于子网站的权限,但如果您想获取每个组成员以及对该网站的直接权限,该怎么办?
#Parameters
$SiteURL = "https://crescent.sharepoint.com/sites/Marketing/2020"
$ReportOutput = "C:\Temp\SitePermissionRpt.csv"
#Connect to Site
Connect-PnPonline -Url $SiteURL -Interactive
#Get the web
$Web = Get-PnPWeb -Includes RoleAssignments
#Loop through each permission assigned and extract details
$PermissionData = @()
ForEach ($RoleAssignment in $Web.RoleAssignments)
{
#Get the Permission Levels assigned and Member
Get-PnPProperty -ClientObject $RoleAssignment -Property RoleDefinitionBindings, Member
#Get the Permission Levels assigned
$PermissionLevels = ($RoleAssignment.RoleDefinitionBindings | Select -ExpandProperty Name | Where { $_ -ne "Limited Access"} ) -join ","
#Leave Principals with no Permissions
If($PermissionLevels.Length -eq 0) {Continue}
$PermissionType = $RoleAssignment.Member.PrincipalType
#Get SharePoint group members
If($PermissionType -eq "SharePointGroup")
{
#Get Group Members
$GroupMembers = Get-PnPGroupMember -Identity $RoleAssignment.Member.LoginName
#Leave Empty Groups
If($GroupMembers.count -eq 0){ Continue }
$GroupUsers = ($GroupMembers | Select -ExpandProperty LoginName | Where { $_ -ne "SHAREPOINT\system"}) -join "; "
#Add the Data to Object
$Permissions = New-Object PSObject
$Permissions | Add-Member NoteProperty Name($RoleAssignment.Member.Title)
$Permissions | Add-Member NoteProperty Accounts($GroupUsers)
$Permissions | Add-Member NoteProperty Type($PermissionType)
$Permissions | Add-Member NoteProperty PermissionLevels($PermissionLevels)
$PermissionData += $Permissions
}
Else
{
#Add the Data to Object
$Permissions = New-Object PSObject
$Permissions | Add-Member NoteProperty Name($RoleAssignment.Member.Title)
$Permissions | Add-Member NoteProperty Accounts($RoleAssignment.Member.LoginName)
$Permissions | Add-Member NoteProperty Type($PermissionType)
$Permissions | Add-Member NoteProperty PermissionLevels($PermissionLevels)
$PermissionData += $Permissions
}
}
#Export Permissions data to CSV file
$PermissionData | Export-csv -path $ReportOutput -NoTypeInformation
此脚本获取 SharePoint Online 网站或子网站的所有用户、SharePoint 组和成员及其权限。请注意,此脚本生成给定网站或子网站的权限报告,而不是任何基础对象(例如子网站、列表、库、文件夹或列表项)的权限。要生成 SharePoint Online 网站和子网站的完整权限报告,请使用:SharePoint Online:使用 PnP PowerShell 为网站集生成权限报告
猜你还喜欢
- 03-30 [玩转系统] 如何用批处理实现关机,注销,重启和锁定计算机
- 02-14 [系统故障] Win10下报错:该文件没有与之关联的应用来执行该操作
- 01-07 [系统问题] Win10--解决锁屏后会断网的问题
- 01-02 [系统技巧] Windows系统如何关闭防火墙保姆式教程,超详细
- 12-15 [玩转系统] 如何在 Windows 10 和 11 上允许多个 RDP 会话
- 12-15 [玩转系统] 查找 Exchange/Microsoft 365 中不活动(未使用)的通讯组列表
- 12-15 [玩转系统] 如何在 Windows 上安装远程服务器管理工具 (RSAT)
- 12-15 [玩转系统] 如何在 Windows 上重置组策略设置
- 12-15 [玩转系统] 如何获取计算机上的本地管理员列表?
- 12-15 [玩转系统] 在 Visual Studio Code 中连接到 MS SQL Server 数据库
- 12-15 [玩转系统] 如何降级 Windows Server 版本或许可证
- 12-15 [玩转系统] 如何允许非管理员用户在 Windows 中启动/停止服务
取消回复欢迎 你 发表评论:
- 精品推荐!
-
- 最新文章
- 热门文章
- 热评文章
[风口福利] 短视频红利新风口!炬焰创作者平台重磅激励来袭
[韩剧] 宝物岛/宝藏岛/金银岛(2025)【全16集】【朴炯植/悬疑】
[电影] 愤怒的牦牛 (2025) 国语中字 4k
[短剧合集] 2025年05月30日 精选+付费短剧推荐56部
[软件合集] 25年5月30日 精选软件26个
[软件合集] 25年5月29日 精选软件18个
[短剧合集] 2025年05月28日 精选+付费短剧推荐38部
[软件合集] 25年5月28日 精选软件37个
[软件合集] 25年5月27日 精选软件26个
[电影] 毒劫 Havoc(2025)【NF1080P超清】【汤姆·哈迪主演】
[剧集] [央视][笑傲江湖][2001][DVD-RMVB][高清][40集全]李亚鹏、许晴、苗乙乙
[电视剧] 欢乐颂.5部全 (2016-2024)
[电视剧] [突围] [45集全] [WEB-MP4/每集1.5GB] [国语/内嵌中文字幕] [4K-2160P] [无水印]
[影视] 【稀有资源】香港老片 艺坛照妖镜之96应召名册 (1996)
[剧集] 神经风云(2023)(完结).4K
[剧集] [BT] [TVB] [黑夜彩虹(2003)] [全21集] [粤语中字] [TV-RMVB]
[办公模版] office模板合集:包含word、Excel、PowerPoint、Access四类共计2000多个模板
[资源] B站充电视频合集,包含多位重量级up主,全是大佬真金白银买来的~【99GB】
[音乐] 华语流行伤感情经典歌无损音乐合集(700多首)
[影视] 内地绝版高清录像带 [mpg]
[电视剧] [突围] [45集全] [WEB-MP4/每集1.5GB] [国语/内嵌中文字幕] [4K-2160P] [无水印]
[剧集] [央视][笑傲江湖][2001][DVD-RMVB][高清][40集全]李亚鹏、许晴、苗乙乙
[电影] 美国队长4 4K原盘REMUX 杜比视界 内封简繁英双语字幕 49G
[电影] 死神来了(1-6)大合集!
[软件合集] 25年05月13日 精选软件16个
[精品软件] 25年05月15日 精选软件18个
[绝版资源] 南与北 第1-2季 合集 North and South (1985) /美国/豆瓣: 8.8[1080P][中文字幕]
[软件] 25年05月14日 精选软件57个
[短剧] 2025年05月14日 精选+付费短剧推荐39部
[短剧] 2025年05月15日 精选+付费短剧推荐36部
- 最新评论
-
- 热门tag