summaryrefslogtreecommitdiff
path: root/doc/ru_RU/ldap-group-sync.markdown
blob: 87d9d1cc0c04df332da9bfa50e100a46bb9bb0db (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
Синхронизация групп LDAP
========================



Требования[¶](#requirements "Ссылка на этот заголовок")
-------------------------------------------------------



-   Правильно настроенную аутентификацию LDAP



-   Используется сервер LDAP, который поддерживает `memberOf` или `memberUid` (PosixGroups)



Автоматическое определение ролей пользователей на основании LDAP групп[¶](#define-automatically-user-roles-based-on-ldap-groups "Ссылка на этот заголовок")
-----------------------------------------------------------------------------------------------------------------------------------------------------------



Используйте следующие константы в вашем конфигурационном файле:



-   `LDAP_GROUP_ADMIN_DN`: Уникальные имена (Distinguished Names) для администраторов приложения



-   `LDAP_GROUP_MANAGER_DN`: Уникальные имена (Distinguished Names) для менеджеров приложения



### Пример для Active Directory:[¶](#example-for-active-directory "Ссылка на этот заголовок")



    define('LDAP_GROUP_ADMIN_DN', 'CN=Kanboard Admins,CN=Users,DC=kanboard,DC=local');

    define('LDAP_GROUP_MANAGER_DN', 'CN=Kanboard Managers,CN=Users,DC=kanboard,DC=local');



-   Участники группы “Kanboard Admins” будут иметь роль “Администратор”



-   Участники группы “Kanboard Managers” будут иметь роль “Менеджер”



-   Все, кто не попадает под предыдущие определения, будут иметь роль “Пользователь”



### Пример OpenLDAP с Posix Groups:[¶](#example-for-openldap-with-posix-groups "Ссылка на этот заголовок")



    define('LDAP_GROUP_BASE_DN', 'ou=Groups,dc=kanboard,dc=local');

    define('LDAP_GROUP_USER_FILTER', '(&(objectClass=posixGroup)(memberUid=%s))');

    define('LDAP_GROUP_ADMIN_DN', 'cn=Kanboard Admins,ou=Groups,dc=kanboard,dc=local');

    define('LDAP_GROUP_MANAGER_DN', 'cn=Kanboard Managers,ou=Groups,dc=kanboard,dc=local');



Вы **должны определить параметр** `LDAP_GROUP_USER_FILTER`, если ваше сервер LDAP использует `memberUid` вместо `memberOf`. Все параметры в этом примере обязательные.



Автоматическая загрузка групп LDAP для Канборд проекта[¶](#automatically-load-ldap-groups-for-project-permissions "Ссылка на этот заголовок")
---------------------------------------------------------------------------------------------------------------------------------------------



Эта возможность позволяет вам синхронизировать автоматически группы LDAP с группами Канборд. Каждая группа может иметь разные роли в проектах.



В проекте на странице *Разрешения*, можно ввести имя группы (имеется автодополнение) и Канборд будет искать группу во всех подключенных поставщиках.



Если группа не найдена в локальной базе данных, то она будет автоматически синхронизированна.



-   `LDAP_GROUP_PROVIDER`: Включение поставщика группы LDAP



-   `LDAP_GROUP_BASE_DN`: Уникальное имя (Distinguished Names) для поиска группы в LDAP директории



-   `LDAP_GROUP_FILTER`: фильтр LDAP используемый для выполнения запроса



-   `LDAP_GROUP_ATTRIBUTE_NAME`: атрибут LDAP используемый для получения имени группы



### Пример для Active Directory:[¶](#id1 "Ссылка на этот заголовок")



    define('LDAP_GROUP_PROVIDER', true);

    define('LDAP_GROUP_BASE_DN', 'CN=Groups,DC=kanboard,DC=local');

    define('LDAP_GROUP_FILTER', '(&(objectClass=group)(sAMAccountName=%s*))');



С помощью фильтра, в примере выше, Канборд будет искать группы соответсвующие запросу. Если пользователь введет текст “Мои группы” в автозаполняемое поле, Канборд вернет все группы которые соответсвуют шаблону: `(&(objectClass=group)(sAMAccountName=Мои группы*))`.



-   Примечание 1: Спец символ `*` очень важен, в противном случает **будет выбрано только точное совпадение**



-   Примечание 2: Эта функция возможна только с аутентификацией LDAP настроенной на метод “proxy” или “anonymous”



[Больше примеров фильтров LDAP для Active Directory](http://social.technet.microsoft.com/wiki/contents/articles/5392.active-directory-ldap-syntax-filters.aspx)



### Пример OpenLDAP с Posix Groups:[¶](#id2 "Ссылка на этот заголовок")



    define('LDAP_GROUP_PROVIDER', true);

    define('LDAP_GROUP_BASE_DN', 'ou=Groups,dc=kanboard,dc=local');

    define('LDAP_GROUP_FILTER', '(&(objectClass=posixGroup)(cn=%s*))');






[Русская документация Kanboard](http://kanboard.ru/doc/)