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

[玩转系统] SharePoint Online:将用户从一个组复制/移动到另一个组

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

SharePoint Online:将用户从一个组复制/移动到另一个组


要求:将用户从 SharePoint Online 中的一个组移动到另一个组。

如何在 SharePoint Online 组之间复制或移动用户?

您是否需要将 SharePoint Online 中的用户从一个组复制到另一个组?也许您刚刚设置了一个新组,并且需要使用现有组中的用户填充该组。也许您想将用户从一个组移动到另一个组。无论出于何种原因,您都可以通过几种方法来做到这一点。本文将向您展示如何使用 PowerShell 将用户从一个组复制到另一个组,以及如何在 SharePoint Online 中手动执行此操作。让我们开始吧!

没有直接的方法可以在 SharePoint Online 组之间复制或移动用户。但您可以通过以下步骤来实现:

  1. 单击“设置”齿轮>>“站点设置”。
  2. 单击“用户和权限”组下的“人员和组”。
  3. 从左侧导航中选择源组名称 >> 通过勾选标题中的复选框选择所有用户 >> 从“操作”菜单中单击“向用户发送电子邮件”。这将打开该组所有用户的默认电子邮件客户端。复制它们!

    [玩转系统] SharePoint Online:将用户从一个组复制/移动到另一个组

  4. 导航到 SharePoint Online 站点中的目标组>> 单击“添加用户并粘贴这些复制的电子邮件”。如果是“移动”,您可以将它们从源组中删除。

当您必须在 SharePoint 组之间复制或移动一些用户时,上述方法可能相对更简单。使用脚本化的方式批量复制多个用户不是更好吗?

SharePoint Online:使用 PowerShell 将用户从一个组移动到另一个组

以下是在 SharePoint Online 中将用户从一个组移动到另一个组的方法


#Config Variables
$SiteURL = "https://crescent.sharepoint.com/sites/marketing"
$SourceGroupName = "Marketing Team"
$DestinationGroupName = "Marketing Managers"

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

#Get Members of the Source Group
$SourceGroup = Get-PnPGroup -Identity $SourceGroupName | Select-Object Users

#Add users to destination group
Foreach ($User in $SourceGroup.Users)
{
    #Frame User ID
    $UserID = "i:0#.f|membership|"+$User.Email
    #Add user to Group
    Add-PnPGroupMember -LoginName $UserID -Identity $DestinationGroupName

    #Remove user from source group
    Remove-PnPGroupMember -LoginName $UserID -Identity $SourceGroupName

    Write-host "User Moved :"$User.Email
}

您可以注释掉“Remove-PnPGroupMember”(第20行)以在组之间执行复制用户。

PowerShell 将组之间的用户从一个站点移动到另一个站点

如何在不同站点的组之间移动用户?


#Parameters
$SourceSiteURL = "https://crescent.sharepoint.com/sites/marketing"
$DestinationSiteURL = "https://crescent.sharepoint.com/sites/Purchase"
$SourceGroupName = "Marketing Members"
$DestinationGroupName = "Purchase Members"

Try {
    #Connect to the Source and Destination Sites
    $SourceSite = Connect-PnPOnline -Url $SourceSiteURL -Interactive -ReturnConnection
    $DestinationSite = Connect-PnPOnline -Url $DestinationSiteURL -Interactive -ReturnConnection

    #Get Members of the Source Group
    $SourceGroup = Get-PnPGroup -Connection $SourceSite -Identity $SourceGroupName | Select-Object Users
 
    #Add users to destination group
    Foreach ($User in $SourceGroup.Users)
    {
        #Resolve the User
        $ResolvedUser = Get-PnPUser -Connection $DestinationSite | Where-Object LoginName -eq $User.LoginName
        If($ResolvedUser -eq $null) {        
            $ResolvedUser = New-PnPUser -LoginName $User.LoginName -Connection $DestinationSite
        }

        #Add user to Group
        Add-PnPGroupMember -Connection $DestinationSite -LoginName $User.LoginName -Identity $DestinationGroupName
 
        #Remove user from source group
        Remove-PnPGroupMember -Connection $SourceSite -LoginName $User.LoginName  -Identity $SourceGroupName
 
        Write-host "User Moved :"$User.LoginName
    }
}
Catch {
    write-host -f Red "`tError:" $_.Exception.Message
}

请注意,如果您为源站点启用了外部用户,则您也必须在目标站点上执行此操作(这很明显,不是吗?)。

包起来

总之,在 SharePoint Online 中将用户从一个组复制到另一个组是一个简单而高效的过程,可以帮助组织有效管理用户访问和权限。通过执行本文中概述的步骤,您可以轻松地将用户从 SharePoint Online 中的一个组转移到另一个组,并确保用户对资源具有适当的访问权限。

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

取消回复欢迎 发表评论:

关灯