powershell - 接受用户名并检查安全组的 Powershell 脚本
问题描述
我想创建一个 powershell 脚本来检查用户配置文件,该用户在活动目录中属于哪些安全组。然后我想把它写到一个文件中。我无法解决这个问题。
预期输出示例。
用户 1
安全组
域用户 域管理员...
用户 2
安全组
域用户 企业管理员
New-Item "$home\Desktop\GroupsMembers-list $(get-date -f dd-MM-yyyy).txt"
$users = @("User1", "User2", "User3", "User4")
foreach ($user in $users){
Get-ADPrincipalGroupMembership $user | sort name | select name | Out-File "$home\Desktop\GroupsMembers-list $(get-date -f dd-MM-yyyy).txt"
}
解决方案
我想您可以通过它获得更多创意,但这绝对适合您:
$users = @("user1","user2")
foreach ($user in $users){
$groups = Get-ADPrincipalGroupMembership $user | Where-Object {$_.GroupCategory -eq "Security"} | Sort-Object Name | Select-Object -ExpandProperty Name
Add-Content -Path C:\path\to\file.txt -Value @"
$user
Security Groups
----------------------------
"@
foreach ($group in $groups){
Add-Content -Path C:\path\to\file.txt -Value $group
}
}
这是输出的样子:
user1
Security Groups
----------------------------
Administrators
Domain Admins
user2
Security Groups
----------------------------
Administrators
Domain Admins