【问题标题】:Add a value to all users in AD为 AD 中的所有用户添加一个值
【发布时间】:2021-12-07 09:33:48
【问题描述】:

我正在尝试在我工作的公司中设置动态分发列表。 我想将 AD 中的公司价值用于公司中每个人都需要参与的分发列表。

我们的大多数用户都将公司名称作为值,但在检查了一些用户后,似乎并未为所有用户设置此值。

有没有办法为所有 AD 用户设置此值(通过使用 powershell f.e),或者获取公司值未设置为公司名称的用户列表?

【问题讨论】:

    标签: active-directory


    【解决方案1】:

    您可以使用远程服务器管理工​​具 (RSAT) 中包含的 PowerShell ActiveDirectory 模块。详细安装方法here

    然后您可以使用Get-ADUser 并将结果通过管道传输到Set-ADUser。像这样的:

    $badusers = Get-ADUser -Filter "company -ne 'Your Company Name'"
    $badusers | Set-ADUser -Company "Your Company Name"
    

    可以在一行中执行此操作,但我将其分成两部分,以便您可以检查 $badusers 集合以实际查看您更改的用户(只需在 PowerShell 中键入 $badusers提示并按回车键)。

    在尝试更改每个用户之前,最好将其限制为 5 或 10 个用户,以确保它按照您想要的方式工作。您可以通过将-ResultSetSize 5 添加到Get-ADUsers 行来实现。

    这还假设您希望将所有用户对象更改为拥有您的公司名称,甚至是管理帐户。请记住,如果遇到您无权修改的用户,这将停止处理用户。如果要限制为单个OU,可以使用Get-ADUsers-SearchBase参数,像这样:

    $badusers = Get-ADUser -Filter "company -ne 'Your Company Name'" -SearchBase "OU=Users,DC=example,DC=com"
    

    【讨论】:

    • 谢谢,这解决了我的问题!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-12-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-03
    • 2020-11-14
    相关资源
    最近更新 更多