Выгрузка пользователей из Active Directory (AD)

Выгрузка пользователей из Active Directory (AD) — получение актуального списка учетных записей с необходимыми атрибутами для аудита, отчетности и администрирования.

Import-Module ActiveDirectory

Get-ADUser -Filter * -Properties mail,proxyAddresses,UserPrincipalName,Enabled |
Select-Object `
Name,
SamAccountName,
@{Name=»Email»;Expression={$_.mail}},
@{Name=»UserPrincipalName»;Expression={$_.UserPrincipalName}},
@{Name=»UPN_Suffix»;Expression={
if ($_.UserPrincipalName -and $_.UserPrincipalName -match ‘@’) {
($_.UserPrincipalName -split ‘@’,2)[1]
} else { «» }
}},
@{Name=»Enabled»;Expression={$_.Enabled}},
@{Name=»PrimarySMTP»;Expression={
($_.proxyAddresses |
Where-Object { $_ -cmatch ‘^SMTP:’ } |
Select-Object -First 1
) -replace ‘^SMTP:’
}},
@{Name=»ProxyAddresses»;Expression={
(($_.proxyAddresses |
Where-Object { $_ -cmatch ‘^smtp:’ } |
ForEach-Object { $_ -replace ‘^smtp:’ }
) -join ‘; ‘)
}},
@{Name=»Groups»;Expression={
try {
((Get-ADPrincipalGroupMembership -Identity $_ |
Select-Object -ExpandProperty Name |
Sort-Object) -join ‘; ‘)
} catch {
«»
}
}} |
Export-Csv «C:\Users\DomainUsers.csv» -NoTypeInformation -Encoding UTF8 -Delimiter ‘;’

Import-Module ActiveDirectory

Get-ADUser -Filter * -Properties mail,proxyAddresses,UserPrincipalName,Enabled |
Select-Object `
    Name,
    SamAccountName,
    @{Name="Email";Expression={$_.mail}},
    @{Name="UserPrincipalName";Expression={$_.UserPrincipalName}},
    @{Name="UPN_Suffix";Expression={
        if ($_.UserPrincipalName -and $_.UserPrincipalName -match '@') {
            ($_.UserPrincipalName -split '@',2)[1]
        } else { "" }
    }},
    @{Name="Enabled";Expression={$_.Enabled}},
    @{Name="PrimarySMTP";Expression={
        (($_.proxyAddresses | Where-Object { $_ -cmatch '^SMTP:' } | Select-Object -First 1) -replace '^SMTP:')
    }},
    @{Name="ProxyAddresses";Expression={
        (($_.proxyAddresses |
            Where-Object { $_ -cmatch '^smtp:' } |
            ForEach-Object { $_ -replace '^smtp:' }
        ) -join '; ')
    }},
    @{Name="Groups";Expression={
        try {
            ((Get-ADPrincipalGroupMembership -Identity $_ |
                Select-Object -ExpandProperty Name |
                Sort-Object
            ) -join '; ')
        } catch { "" }
    }} |
Export-Csv "C:\Users\DomainUsers.csv" -NoTypeInformation -Encoding UTF8 -Delimiter ';'

#выгрузкапользователейсад #ad #выгрузкапользователейсad #выгрузкаизад

Оставьте комментарий