在 Foreach 中设置 ADuser

Posted

技术标签:

【中文标题】在 Foreach 中设置 ADuser【英文标题】:Set-ADuser in Foreach 【发布时间】:2022-01-16 23:15:53 【问题描述】:

我尝试将值公司设置为广告字段公司,它应该按主页过滤(这有效)。我得到这个错误:

cmdlet Set-ADUser 在命令管道位置 1 为以下参数提供值: 身份:

$users = $null

$users = Get-ADUser -Filter 'Homepage -like "www.test.ch"' -Searchbase “OU=TestOu, OU=test Lyss, DC=ads,DC=test,DC=CH"  



ForEach($user in $users)

    
    Set-ADUser -Identity -Company 'Company' 


【问题讨论】:

【参考方案1】:

是的,在您的 foreach 循环中,您正在调用 -Identity 参数,但从未给参数提供任何值,例如 -Identity $user。另外,也可以直接用管道:

Get-ADUser -Filter "Homepage -like 'www.test.ch'" -Searchbase 'OU=TestOu,OU=test Lyss,DC=ads,DC=test,DC=CH' |
Set-ADUser -Company 'Company'

【讨论】:

是 -Identity 来自 Get-ADUser 的 $user 还是对象的 guid?文档不清楚应该传递什么身份 @GoldenLion -Identity 指的是:“您可以通过其可分辨名称、GUID、安全标识符 (SID) 或安全帐户管理器 (SAM) 帐户名称来识别用户。”。它可以采用这 4 个值 我刚刚意识到 SID 是一个不错的选择。如何告诉 set-aduser 在更新时仅搜索 OU 和设备控制器路径的特定部分。在权限不足的错误消息中,它看起来像在根目录中

以上是关于在 Foreach 中设置 ADuser的主要内容,如果未能解决你的问题,请参考以下文章

如何在 SwiftUI 中嵌入 ForEach 的 HStack 中设置相对宽度?

Windows 图像采集 - 在 C# 中设置设备属性

如何在 QTableWidgetItem 中设置单元格边框和背景颜色?

在编辑页面的表格中的每一行中设置下拉列表的选定值

在codeigniter中的数据库中设置值时如何将复选框显示为选中状态

为代码“DateTime::createFromFormat”的 foreach () 提供的参数无效?