bugfix> powershell > 投稿

フィルターに一致するすべての広告ユーザーのリストを取得しようとしています。それを Get-ADPrincipalGroupMembership にパイプします次に、結果を読みやすいCSVにエクスポートします。

* NB MemberOf を使用できません広告ユーザーごとに空白を返し、私が見つけた最も成功したスクリプトは MemberOf を使用しているため 。

グループのリストは表示されますが、誰がどこに行くのかは関連付けられていません。 export-csv を試みた同様にしかし、それは空のパイプを訴えますか?

import-module activedirectory
foreach ($user in (Get-AdUser -Filter {(Name -Like "*(s)") }  | select samaccountName)) {
    Get-ADPrincipalGroupMembership $user.samaccountName | select samaccountname,name
}

回答 1 件
  • これには、ユーザーの sAMAccountName が含まれます  グループ結果:

    Import-Module ActiveDirectory
    ForEach ($user in (Get-AdUser -Filter {(Name -Like "*(s)") }  | select sAMAccountName)) {
        Get-ADPrincipalGroupMembership $user.sAMAccountName| select @{Expression={$user.sAMAccountName};Label="User"},sAMAccountName,name
    }
    
    

    その奇妙な表記法は、カスタムテーブルを作成するためのものです。詳細についてはこちらをご覧ください:https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-powershell-1.0/ee692794(v=technet.10)

    memberOf に何も表示されない  正常な場合があります。 [ユーザーとコンピューター]をチェックインすると、 memberOf に値が表示されますか ?

    ザ・ memberOf  属性は、同じADフォレスト内のユニバーサルスコープを持つグループ、または同じドメイン上のグローバルグループのみを表示します。他のドメインのグローバルグループ、またはドメイン(同じドメインであっても)のドメインローカルグループは表示されません。そのため、制限があります。

    ユーザーは primaryGroupId によってグループの「メンバー」になることもできます  ユーザーのプライマリグループのRID(SIDの最後のセクション)を格納する属性。これは通常、Domain Usersグループにのみ使用されます。

    Get-ADPrincipalGroupMembership  あなたのためにそれらすべてを処理します。プライマリグループが含まれ、フォレスト内のすべてのドメインで、ユーザーをメンバーとして持つグローバルグループとドメインローカルグループを検索します。

あなたの答え