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

[玩转系统] SharePoint Online:PowerShell 从所有网站中删除用户

作者:精品下载站 日期:2024-12-14 21:09:22 浏览:14 分类:玩电脑

SharePoint Online:PowerShell 从所有网站中删除用户


要求:从 SharePoint Online 中的所有网站中删除用户。

[玩转系统] SharePoint Online:PowerShell 从所有网站中删除用户

PowerShell 从所有 SharePoint Online 网站集中删除用户:

您需要从所有站点和组中删除用户吗?那么,这篇博文旨在指导您如何使用 PowerShell 从 SharePoint Online 中的所有网站中删除用户。如果您是 SharePoint 管理员,有时您可能需要从所有 SharePoint Online 网站中删除用户。也许当你知道用户不会回来、这个人已经离开公司、你必须暂时禁用用户、如果帐户被黑客入侵,或者你正在清理用户权限并且不再需要用户访问任何内容网站。无论出于何种原因,此 PowerShell 脚本都将帮助您快速轻松地从所有 SharePoint Online 网站中删除用户。

尽管您可以使用 Web 浏览器界面从 SharePoint Online 的网站中删除用户,但如果您的目标只是快速轻松地从任何地方删除用户,则 PowerShell 方法会更有效!以下 PowerShell 脚本将从 SharePoint Online 网站集中删除提供的登录帐户。请注意,在运行此脚本之前,您必须是 Office 365 租户的所有网站集的网站集管理员。


#Config Parameters
$AdminSiteURL="https://crescent-admin.sharepoint.com"
$UserAccount = "[email protected]"
 
#Connect to SharePoint Online Tenant Admin
Connect-SPOService -URL $AdminSiteURL -Credential (Get-Credential)
 
#Get all Site Collections
$SitesCollections = Get-SPOSite -Limit ALL

#Iterate through each site collection
ForEach($Site in $SitesCollections)
{
    Write-host -f Yellow "Checking Site Collection:"$Site.URL
 
    #Get the user from site collection
    $User = Get-SPOUser -Limit All -Site $Site.URL | Where {$_.LoginName -eq $UserAccount}
 
    #Remove the User from site collection
    If($User)
    {
        #Remove the user from the site collection
        Remove-SPOUser -Site $Site.URL -LoginName $UserAccount
        Write-host -f Green "`tUser $($UserAccount) has been removed from Site collection!"
    }
}

这将确保用户在删除任何内容或网站后无法再访问它们。

使用 PnP PowerShell 从所有 SharePoint Online 网站删除用户

有时,有必要从所有 SharePoint Online 网站中删除用户帐户,以确保特定用户无法访问组织的数据。让我向您展示如何使用 PnP PowerShell 从所有 SharePoint Online 网站中删除用户帐户:


#Parameters
$TenantURL =  "https://crescent.sharepoint.com"
$UserID="i:0#.f|membership|[email protected]"

#Get Credentials to connect
$Credential = Get-Credential

#Frame Tenant Admin URL from Tenant URL
$TenantAdminURL = $TenantURL.Insert($TenantURL.IndexOf("."),"-admin")
#Connect to PnP Online
Connect-PnPOnline -Url $TenantAdminURL -Credentials $Credential

#Get All Site collections - Filter BOT and MySite Host
$Sites = Get-PnPTenantSite -Filter "Url -like '$TenantURL'"

#Iterate through all sites
$Sites | ForEach-Object { 
    Write-host "Searching in Site Collection:"$_.URL -f Yellow
    #Connect to each site collection
    Connect-PnPOnline -Url $_.URL -Credentials $Credential
    If((Get-PnPUser | Where {$_.LoginName -eq $UserID}) -ne $NULL)
    {
        #Remove user from site collection
        Remove-PnPUser -Identity $UserID -Confirm:$false
        Write-host "`tRemoved the User from Site:"$_.URL -f Green
    }
} 

此 PnP PowerShell 将用户从租户中的所有 SharePoint Online 网站中删除。

这是关于如何使用 PowerShell 从 SharePoint Online 删除外部用户的另一篇文章 - SharePoint Online:使用 PowerShell 删除外部用户

结论:

当用户离开组织或更改角色时,从他们有权访问的所有站点中手动删除该用户可能非常耗时。这就是 SharePoint Online PowerShell 派上用场的地方。通过使用 SharePoint Online PowerShell 从所有网站中删除用户,您可以确保数据安全并且用户无法再访问敏感信息。该过程快速、高效且自动化,节省时间并确保该过程正确完成。

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

取消回复欢迎 发表评论:

关灯