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

[玩转系统] 如何使用 Microsoft Graph PowerShell 将用户添加到组

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

如何使用 Microsoft Graph PowerShell 将用户添加到组


在创建新用户和一般持续支持期间,将用户添加到 Microsoft 365 或 Microsoft Entra 中的组是常见需求。虽然这是通过 Web 管理中心完成的一项简单任务,但出于简单性和自动化目的,仍然需要使用 Microsoft Graph PowerShell 以编程方式完成此任务。

在本教程中,我将向您展示如何使用 Microsoft Graph PowerShell 将单个或多个用户添加到组中。

关于 New-MgGroupMember cmdlet

New-MgGroupMember cmdlet 允许您将单个用户添加到特定组,无论是安全组、通讯组还是 Microsoft 365 组。由于一次只能添加一个用户,因此可以使用循环在单个命令或脚本中添加多个用户。

New-MgGroupMember 属于 Microsoft Graph PowerShell 中的 Microsoft.Graph.Groups 模块。可以使用以下命令手动安装该模块:

Install-Module Microsoft.Graph.Groups

将用户添加到组还需要最低级别的权限,必须同意以下权限:

  • GroupMember.ReadWrite.All
  • User.ReadWrite.All

要使用上述权限连接到 Microsoft Graph PowerShell,您可以使用以下命令并以全局管理员用户身份登录:

Connect-MgGraph -Scopes GroupMember.ReadWrite.All, User.ReadWrite.All

连接到 Microsoft Graph PowerShell 后,您可以继续将用户添加到组。

使用 Microsoft Graph PowerShell 将单个用户添加到组

与许多 Microsoft Graph PowerShell cmdlet 一样,New-MgGroupMember cmdlet 的怪癖之一是,它不使用组或用户的唯一名称(或用户名),而是要求您输入目录 ObjectID,这是较少用户友好的。

可以使用 Microsoft Graph PowerShell 中的 -Search 参数轻松找到用户和组的 ObjectID。

我在博客“如何将 Get-MgUser 与 Microsoft Graph PowerShell 结合使用”中详细介绍了 -Search 参数

首先使用以下命令存储目标组和目标用户的目录对象:

$group = Get-MgGroup -Search '"DisplayName:GroupName"' -ConsistencyLevel eventual
$user = Get-MgUser -Search '"DisplayName:UserDiplayName"' -ConsistencyLevel eventual

然后,要将用户添加到目标组,请使用 New-MgGroupMember cmdlet 并引用用户和组的 ObjectID:

New-MgGroupMember -GroupId $group.id -DirectoryObjectId $user.id

将多个用户添加到组中

将多个用户添加到组的最简单方法是使用 PowerShell 循环循环访问一组用户,同时运行 New-MgGroupMember cmdlet。

有关如何在 PowerShell 中使用循环的更多详细信息,请查看我的详细博客:如何通过示例使用 Powershell Foreach 循环。

首先,我们将使用与上一个示例类似的代码。相反,这次我们将使用 -Filter 参数和 Get-MgUser cmd 来检索我们想要定位的用户列表。

$group = Get-MgGroup -Search '"DisplayName:Test2"' -ConsistencyLevel eventual
$users = Get-MgUser -Filter "endsWith(mail,'ourcloudnetwork.com')" -ConsistencyLevel eventual

现在 $users 变量包含一个用户数组,我们可以按如下方式循环访问用户:

Foreach ($user in $users) {
    Write-host "Adding user $($User.DisplayName) ..." -ForegroundColor Cyan
    New-MgGroupMember -GroupId $group.id -DirectoryObjectId $user.id
}

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

取消回复欢迎 发表评论:

关灯