2011-10-20 17 views
3

ドメインユーザーのすべてのWindowsグループメンバーシップをpowershellを使用してリストしたいと思います。これどうやってするの?Powershellでドメインユーザーのユーザー権利とグループメンバーを一覧表示するにはどうすればよいですか?

+1

「ユーザー権利」とはどういう意味ですか? –

+0

@Christian私の投稿を書き直してみましょう。私はそれを編集し、Windowsグループのメンバーシップだけを含めます。 – gyurisc

答えて

2

私はあなたがで「リストのすべてのユーザー権限」を意味正確に何を確認していない - しかし、グループメンバーシップがドメインから簡単です:

$de = New-Object System.DirectoryServices.DirectoryEntry 
$ds = New-Object System.DirectoryServices.DirectorySearcher($de) 
$ds.Filter = "(&(objectClass=User)(sAMAccountName=goyuix))" 
$user = $ds.FindOne() 
$user.Properties.memberof 

memberofプロパティは、すべてのグループのリストが含まれている必要がありますそのアカウントのメンバーシップハードコードされたユーザーではなく適切なログインを使用するようにFilterを更新する必要があります。

+1

ネストされたグループがmemberofにリストされていないことをお知らせいただきありがとうございます。コマンドレットにクエストモジュールを使用して、すべてのグループメンバーシップを達成する –

1

gyurisc!それはあなたが意味することですか?

function Get-ProfilesList { 
    $hive = "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList" 

    #проверка нужна лишь на время отладки 
    if (Test-Path $hive) { 
    gci $hive | % -b {$prof = @()} -p {$dest = "" | select UserName, Sid, ProfilePath 
    $dest.Sid = $_.PSChildName 
    $dest.ProfilePath = (gp ($hive + "\" + $_.PSChildName)).ProfileImagePath 
    $dest.UserName = Split-Path $dest.ProfilePath -leaf 
    $prof += $dest 
    } -end {$prof} 
    } 
} 

Get-ProfilesList | ft -auto