首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Powershell获取SharePoint SiteCollection所有者的列表以及他们的电子邮件和站点的网址

使用Powershell获取SharePoint SiteCollection所有者的列表以及他们的电子邮件和站点的网址
EN

Stack Overflow用户
提问于 2021-05-31 21:14:23
回答 1查看 188关注 0票数 0

我目前正在编写一个脚本,它连接到我们的SharePoint管理中心,并返回所有所有者(姓名和电子邮件)的所有网站的列表。

我尝试了PnP和SP的多种解决方案,但似乎都不起作用。

似乎我必须遍历所有站点,获取带有属性的web对象,获取权限级别,过滤它们以获得“完全控制”,然后查找具有这些权限的每个成员。但它并不是那样工作的?

还有没有人遇到过这个话题?

EN

回答 1

Stack Overflow用户

发布于 2021-06-01 10:44:41

这里有一个变通办法,可能会对你有所帮助。下面是一个导出.csv文件的脚本,其中包含每个网站集中具有完全控制角色的所有组。你可以使用列表来get all the group members,他们绝对有完全的控制权限。对于拥有完全控制权限的网站集管理员,只需使用Get-PnPSiteCollectionAdmin

代码语言:javascript
复制
$admin = "jerry@tenant.onmicrosoft.com";
$Credentials=Get-Credential
Connect-SPOService -Url https://tenant-admin.sharepoint.com -credential $Credentials
$Sites=Get-SPOSite
$OwnerList=@() 
Foreach($Site in $Sites)
{
     
            Write-Host $site.URL -ForegroundColor Cyan
     
            #Get all Groups from the site permissions
            $sitegroups = Get-SPOSiteGroup -Site $site.URL
     
            #Get Group info and members that have site owners permissions
            foreach ($sitegroup in $sitegroups)
            {
                foreach($role in $sitegroup.Roles)
                {
                try{
                    if ( $role.Contains(“Full Control”) )
                    {
                        $Row=""|Select SiteURL, FullControlGroupName;
                        $Row.SiteURL=$site.URL
                        $Row.FullControlGroupName=$sitegroup.title
                        $OwnerList+=$Row
                    }
                 }
                 catch{
                    write-host "$($_.Exception.Message)" -foregroundcolor red
                 }
                }
            }
}
$OwnerList | Export-Csv "C:\\OwnerList.csv" -NoTypeInformation 
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67774481

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档