【问题标题】:Unable to export user and emplyeeid from ldap group无法从 ldap 组导出用户和 emplyeeid
【发布时间】:2019-07-01 16:46:27
【问题描述】:

我正在尝试从 LDAP 导出用户和员工 ID。 所有用户都在我使用下面的代码提取的组中。 我也把它们放在一个 csv 文件中。

如何检索每个用户的员工 ID?更改此查询或创建一个新查询并使用 csv 文件。

$groups = @()
$groups = 'CONBR-MES-DEV-USERS'
Write-Host 'Group_Name','Member'
foreach ($group in $groups)
{
    $members = @()
    $members = Get-ADGroupMember -Server la.jnj.com -Identity $group 
    foreach ($member in $members)
        {
            Write-Host $member.SamAccountName 


        }
}

我想要类似的东西 用户A 123456 用户B 987654 等等

【问题讨论】:

    标签: powershell ldap ldap-query


    【解决方案1】:

    employeeID 属性不包含在默认属性集中。解决此问题的一种方法是在循环内使用 Get-ADObject 并包含该属性。示例:

    foreach ( $group in $groups ) {
      $members = Get-ADGroupMember -Server la.jnj.com -Identity $group 
      foreach ( $member in $members ) {
        $groupMember = $member | Get-ADObject -Properties employeeID,sAMAccountName
        [PSCustomObject] @{
          "Name"       = $groupMember.sAMAccountName
          "employeeID" = $groupMember.employeeID
        }
      }
    }
    

    【讨论】:

    • 太好了,非常感谢。我只是做了一点改变,因为 "Name" = $groupMember.sAMAccountName 没有返回任何东西。我使用“名称”= $Member.sAMAccountName
    • 我忘记了sAMAccountName 不是Get-ADObject 的默认属性。更新了答案。
    【解决方案2】:

    这可以在不循环使用LDAP_MATCHING_RULE_IN_CHAIN 过滤器的情况下执行,类似于: (memberOf:1.2.840.113556.1.4.1941:=CN=yourgorupname,OU=Groups,DC=example,DC=net)

    并返回属性:“sAMAccountName”“employeeID”

    -吉姆

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-08-12
      • 1970-01-01
      • 1970-01-01
      • 2012-08-13
      • 2011-07-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多