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

[玩转系统] 如何在 PowerShell 中将 AD 组成员身份复制到另一个用户

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

如何在 PowerShell 中将 AD 组成员身份复制到另一个用户


当您在 Active Directory 域中创建新用户时,有时需要使他们成为大量组的成员。通过 ADUC 控制台手动将用户添加到组非常麻烦,因此使用 PowerShell 脚本将组成员身份从一个用户复制到另一个用户会更容易。当员工离开公司部门并且您必须为新员工分配相同的 AD 安全组时,这也很方便。

假设您需要从用户复制组成员身份

jsanti

并添加一个新的用户帐户(

a.adams

)到相同的组。

[玩转系统] 如何在 PowerShell 中将 AD 组成员身份复制到另一个用户

要运行以下 PoSh 脚本,请使用 Active Directory for PowerShell 模块。您可以将其作为 RSAT 工具包的一部分进行安装,或者手动复制并导入 AD PowerShell 模块,而无需安装 RSAT。

使用 Get-ADUser cmdlet 获取源用户的组列表:

$getusergroups = Get-ADUser -Identity jsanti -Properties memberof | Select-Object -ExpandProperty memberof

[玩转系统] 如何在 PowerShell 中将 AD 组成员身份复制到另一个用户

要将新用户添加到相同的组中,只需通过管道将组列表发送到 Add-ADGroupMember cmdlet 即可:

$getusergroups | Add-ADGroupMember -Members a.adams -verbose

要将用户添加到域安全组,请在域管理员帐户或被委派将用户添加到 AD 组的权限的用户帐户下运行命令。

然后确保新用户已成功添加到与源用户相同的组中:

Get-ADUser -Identity a.adams -Properties memberof | Select-Object -ExpandProperty memberof

您可以使用 Get-ADPrincipalGroupMembership 通用 cmdlet 复制任何 AD 对象(用户、计算机或组)的组成员身份。

$userSource= “jsanti"
$userTarget=”a.adams”
$sourceGroups = Get-ADPrincipalGroupMembership -Identity $userSource
Add-ADPrincipalGroupMembership -Identity $userTarget -MemberOf $sourceGroups

您可以使用 PowerShell 脚本自动写入文本日志文件,其中包含有关将用户添加到组的信息:

$logfile="c:\LOG\CopyAdGroup.log"
$userSource= “jsanti"
$userTarget=”a.adams”
$Time = Get-Date
Add-content $logfile -value $Time -Encoding UTF8
Add-content $logfile -value "_______________"
Add-content $logfile -value "Copying AD groups from $userSource to $userTarget" -Encoding UTF8
$sourceGroups = (Get-ADPrincipalGroupMembership -Identity $userSource).SamAccountName
foreach ($group in $sourceGroups)
{
Add-content $logfile -value "Adding $userTarget to $group" -Encoding UTF8
try
{
$log=Add-ADPrincipalGroupMembership -Identity $userTarget -MemberOf $group
Add-content $logfile -value $log -Encoding UTF8
}
catch
{
Add-content $logfile $($Error[0].Exception.Message) -Encoding UTF8
Continue
}
}
Add-content $logfile -value "_______________"

[玩转系统] 如何在 PowerShell 中将 AD 组成员身份复制到另一个用户

您可以在域控制器安全日志中跟踪将用户添加到 AD 组。

另一项流行的任务是将所有用户从一个域组复制到另一个域组。为此,您可以使用以下 PowerShell 命令:

Get-ADGroupMember "LA-GPO-Admins" | ForEach-Object {Add-ADGroupMember "LA-Server-Admins" -Members $_ }

您可以使用其他方式根据用户的位置或 AD 中指定的其他用户属性自动将用户添加到 AD 组。以下文章提供了创建 Active Directory 动态组的示例。

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

取消回复欢迎 发表评论:

关灯