AD LDS для тестирования LDAP на локале

Установка AD LDS в Windows 10  и подключения LDAP

Задача: необходимо протестировать аутентификацию пользователей через Active Directory. И авторизацию через группы, которые могут быть вложенными. Возможности тестировать это на живом клиентском сервисе очень ограничены. Поэтому нужно какое-то локальное решение. Под Windows 10. Google предлагает в основном установку Windows server на виртуалку и настройку AD. Такой вариант мне показался черезчур громоздким решением. Также видел лёгкий сервер на nodejs, но там не было поддержки вложенных групп. По итогу оказалось что в windows существует ADLDS сервис. По умолчанию он отключен. Дальше я опишу как его подключить и с минимальными настройками протестировать. В основном это сами говорящие за себя скриншоты.

Переходим в Apps & Features

01
02

Выбираем Optional features

03

Жмём плюс Add feature

Из появившегося списка выбираем: RSAT:Active Directory Domain Services and Lightweight Directory Services


04

После установки подключаем его. Для этого переходим в: Turn Windows features on or off

05

Ставим галку

06

Переходим в Administrative tools

07

И запускаем wizard по установке инстанса сервиса

08
09
10
11
12
13
14

Примечание: сначала я создал инстанс с названием партиции как в примере: CN=… Но потом оказалось что я не смог создавать в ней OU (organizational units), поэтому тот инстанс я удалил создал новый.

15
16
17
18
19
20

После этого инстанс появляется в списке установленных приложений (откуда может быть удалён при необходимости)

21

ADSI Edit для управления пользователями и группами

22
23
24
25
26

Создадим organizational unit (ou) Users - который будет содержать наших пользователей

27
28
29
30

Добавим двух пользователей, назовём их: Ivan Noiret и Julia Medina (с паролями: inoiret и jmedina соответственно)

32
33
34
35
36

Зададим пароль нашему пользователю: inoiret

37
38

И чтобы Иван не чувствовал себя одиноко, добавим второго пользователя: Julia Medina. Хулии зададим пароль jmedina

39

Теперь заполним некоторые характеристики (поля) для наших пользователей

40
41

По умолчанию пользователь не активен, активируем его:

42

Поле userPrincipalName это как логин пользователя, обычно email:

43

Поле mail - это просто почта, может совпадать с предыдущим полем но не обязательно

44

Повторим аналогичные манипуляции для Хулии.

LDP - чтение и поиск в Active Directory

Для поиска и листинга в AD в Windows есть утилита LDP

46

Подключимся к сервису

47
48
49

Попробуем подключиться как Иван (CN=Ivan Noiret,OU=Users,O=Compania,C=ES) с паролем inoiret

50
51
51

Подключились, и вот что в консоли:

-----------

res = ldap_simple_bind_s(ld, 'CN=Ivan Noiret,OU=Users,O=Compania,C=ES', <unavailable>); // v.3

Authenticated as: 'CN=Ivan Noiret,OU=Users,O=Compania,C=ES'.

-----------

Теперь попробуем сделать листинг AD

56
57
58

Как видим No children, видимо Ивану не хватает прав. Дадим ему администраторские права (добавим его в группу Administrators) и посмотрим что будет. Для этого вернёмся в ADSI Edit.

59
60

Нажимаем кнопку Add DN … 

61

Теперь вернёмся в LDP и переподключимся

62

И повторим всё как и раньше: Connect -> Bind -> View -> Tree 

63

В этот раз список уже не пустой

Потом через ADSI Edit я добавил OU=Groups, внутри создал группы, объекты типа group. Для вложенных групп я создал объекты типа container куда и поместил их. Далее в родительские группы добавил вложенные. Процесс точно тот же, что и при добавлении пользователей в группы.

На этом пока всё, спасибо за внимание.

Leave a Reply

Your email address will not be published. Required fields are marked *