Blog链接:https://blog.51cto.com/13969817
我们都知道如果更换某个SharePoint Online Site Collection的Admin,可以通过在管理中心页面上更换,如下所示:
但如果将现有网站集管理员替换为租户中所有网站集的新管理员?那么如果你订阅中有数百个Site Collection的话,通过SharePoint Center Admin更改网站集管理员将是一项耗时且繁琐的任务。
今天给大家分享一下通过Power Shell来替换网站集管理员。
Import-Module Microsoft.Online.Sharepoint.PowerShell -DisableNameChecking
$TenantAdminURL = "https://MVPtrainingcn-admin.sharepoint.com"
$RemoveAccount="Byronliu@MVPtrainingcn.onmicrosoft.com"
$AddAccount = "Daniel@MVPtrainingcn.onmicrosoft.com"
Try {
Connect-SPOService -url $TenantAdminURL -credential (Get-Credential)
$Sites = Get-SPOSite -Limit ALL
Foreach ($Site in $Sites)
{
Write-host "Scanning site Collection:"$Site.Url -f Cyan
Try {
$Admin = Get-SPOUser -Site $Site.Url -Limit All | Where {$_.IsSiteAdmin -eq $true} | Where {$_.LoginName -eq $RemoveAccount }
If($Admin -ne $Null)
{
Write-host "Add SC Admin to:"$Site.URL -f Yellow -NoNewline
Set-SPOUser -site $Site -LoginName $AddAccount -IsSiteCollectionAdmin $True| Out-Null
Write-host " Finished!" -f Green
Write-host "Remove SC Admin from:"$Site.URL -f Yellow -NoNewline
Set-SPOUser -site $Site -LoginName $RemoveAccount -IsSiteCollectionAdmin $False | Out-Null
Write-host "Finished" -f Green
}
}
Catch {
write-host -f Red "Replace SC Admin!" $_.Exception.Message
}
}
}
Catch {
write-host -f Red "Error:" $_.Exception.Message
}
注意:确保运行这些PowerShell脚本的帐户具有Tenant中所有网站集的网站集管理员权限,否则,您可能会遇到问题:
Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED))