отключить перечисление других учетных записей пользователей в активном каталоге - PullRequest
0 голосов
/ 17 апреля 2020

Ху,

возможно ли отключить поиск других пользователей в AD? На этой картинке я вошел как "обычный" пользователь.

Поиск Get-ADuser

Вот изображение нашей структуры AD.

Структура AD

Так что я не хочу, чтобы пользователь мог найти другого пользователя в OU пользователя с помощью powershell (get-aduser)

это возможно?

Надеюсь, у вас достаточно информации, чтобы понять мой выпуск.

С уважением

Ответы [ 2 ]

1 голос
/ 17 апреля 2020

Это не совсем вещь в Windows собственно. По умолчанию в AD все пользователи читают. Во-вторых, любой в AD может иметь псевдоним электронной почты и, следовательно, искать, где он использует PowerShell или нет по своему псевдониму электронной почты / SMTP-адресу, и должен быть предназначен для поиска электронной почты, так что, IMHO, это бесполезный вариант использования.

Не требуется Get-ADUser, чтобы найти пользователя в AD. Это удалось сделать с тех пор, как появился AD, и задолго до того, как PowerShell когда-либо начал использовать более старые методы сценариев с .bat / .cmd / .vbs / WMI / ADSI или. Net, и именно так это было сделано. до того, как PowerShell был когда-либо вещь.

Если вы не знаете, какой пользователь использует указанные c командлеты / командлеты, тогда вам нужно реализовать ограничения через 'PowerShell просто достаточно администрирования (JEA)'

Опять же, не нужно использовать PowerShell для сканирования и получения информации из AD, хорошо документированной и используемой вещи, для людей, которые отключили (или пытались) PowerShell в своих средах.

Пример: Как получить список всех пользователей в подразделении и его подразделениях?

VBScript:

On Error Resume Next
Const ADS_SCOPE_SUBTREE = 2

Set objConnection = CreateObject(“ADODB.Connection”)
Set objCommand =   CreateObject(“ADODB.Command”)

objConnection.Provider = “ADsDSOObject”
objConnection.Open “Active Directory Provider”

Set objCommand.ActiveConnection = objConnection

objCommand.Properties(“Page Size”) = 1000
objCommand.Properties(“Searchscope”) = ADS_SCOPE_SUBTREE

objCommand.CommandText = _
    “SELECT Name FROM ‘LDAP://ou=finance,dc=fabrikam,dc=com’ WHERE objectCategory=’user'”
Set objRecordSet = objCommand.Execute
objRecordSet.MoveFirst

Do Until objRecordSet.EOF
    Wscript.Echo objRecordSet.Fields(“Name”).Value
    objRecordSet.MoveNext
Loop

или

ADDS PowerShell (CMDLET, ADSI &. Net) для ускорения выполнения ваших задач

ADSI:

<#
PowerShell ADSI(Active Directory Services Interface) commands
1. How to find the users property.
#>

$users1 = [ADSI]"LDAP://cn=copy,cn=users,dc=contoso,dc=com"
$users1 | select *

# 2. How to find the Group members for a Group.
$test = [ADSI]"LDAP://CN=test,CN=Users,DC=contoso,DC=com"
$test.Member | 
ForEach-Object {[ADSI]"LDAP://$_"} | 
select samccountname, samaccounttype

# 3. Listing an OU Contents
$ou=[ADSI]"LDAP://ou=tech,dc=contoso,dc=com"
$ou.PSBase.Children
$ou.PSBase.Children | Format-Table sAMAccountName
0 голосов
/ 17 апреля 2020

Так что это сработало для меня: я просто запустил его, сняв флажок «Содержимое списка» от «аутентифицированных пользователей» подразделения «Пользователи», и до сих пор я не распознал никаких побочных эффектов.

Права аутентифицированных пользователей

И «обычный» пользователь больше не может видеть других пользователей по запросу. Протестировано с PowerShell: AD-GetUser и CMD "net user"

Результат запроса

Так что моя проблема решена, если не будет никаких побочных эффектов в будущее.

Я дам вам знать.

Приветствия

...