首页 > 解决方案 > 接受用户名并检查安全组的 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"
}

标签: powershellactive-directory

解决方案


我想您可以通过它获得更多创意,但这绝对适合您:

$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

推荐阅读