U
    ̙h&2                     @   s,   d dl mZ d dlT G dd de jjZdS )    )fields)*c                   @   s,  e Zd ZdZdZdZdZddddgd	ddddd
dddddg
dddddddddddddgddddd d!d"d#d$d%d&d'd(d)gdd*d+d,d-d.d/gdd0d1d2d3gdgd4Zej	ej
d5d6d7d7d8Zej	ejd9d:d;d<d=Zej	ejd>d?d@Zej	ejdAdBd@Zej	ejdCdDd@Zej	ejdEdFZej	ejdGdHd@Zej	ejdIdJd@Zej	ejdKdLdMdNdOd=Zej	ejdPdQdRZej	ejdSdTd7dUZej	ejdVdWdXdYZej	ejdZdWdXdYZej	ejd[d\dXdYZej	ejd]d^dXdYZej	ejd_d`dXdYZej	ej dad7dbdcZ!ej	ej ddd7dbdcZ"ej	ejdedfdgdhdidjdkdbdlZ#ej	ej$dmdFZ%ej	ej$dndFZ&ej	ej$dodFZ'ej	ej$dpdFZ(ej	ej$dqdFZ)ej	ej$drdFZ*ej	ej$dsdFZ+ej	ej$dtdFZ,ej	ej$dudFZ-ej	ej$dvdFZ.ej	ejdwdxdydzd{d|d}d=Z/ej	ej$d~dFZ0ej	ej$dddZ1ej	ej$ddFZ2ej	ej$ddFZ3ej	ej$ddFZ4ej	ej$ddFZ5ej	ej$ddFZ6ej	ej$ddFZ7ej	ej$ddFZ8ej	ejddFZ9e:jj	e:jj;dd7d7dZ<ej	ejdddZ=ej	ejddXdZ>ej	ejddXdZ?ej	ej@d7dddd dZAej	ejBddddZCej	ejddFZDej	ej
ddd7dZEdS )CmfAuthLdapPluginZauthu4   Внешние системы авторизацииZALDAPZdenynamedirectory_typebase_dndomainZ_main	sync_datesync_status	auto_syncadditional_user_dnadditional_group_dnuv   link:settings/global:Важно! Нужно отключить локальный вход пользователей.)r   r   u/   Дополнительные настройкиsync_intervalsync_all_intervalenable_subgroupsread_timeoutsearch_timeoutconnection_timeoutdebugdefault_groupsmapping_fieldsdont_delete_domain
sync_groupuI   Параметры настройки схемы пользователяuser_object_classuser_object_class_filteruser_disabled_filteruser_full_name_attruser_display_name_attruser_name_attruser_last_name_attruser_email_attruser_password_attruser_password_cryptuser_uid_attruser_employee_number_attru0   Настройки групповой схемыgroup_object_classgroup_object_class_filtergroup_name_attrgroup_desc_attrgroup_uid_attru?   Параметры настройки схемы участияgroup_users_attruser_groups_attruse_user_groups_attr)Zui_list_fieldsZui_group_fieldsZ	CmfPluginu!   Настройки доступаT)modelcaptionnullableZlinkableu   ТипzMicrosoft Active DirectoryZOpenLDAP)ZadZldap)r.   choiceszBase DNu   Корневой узел LDAP, с которого начинается поиск пользователей и групп. Пример: ou=users,dc=example,dc=com.)r.   commentu8   Дополнительный DN ПользователяuF  Это значение используется в дополнение к базовому DN при поиске и загрузке пользователей. Если значение не указано, поиск поддерева начнется с базового DN. Например: ou=group,ou=name; ou=classu,   Дополнительный DN Группыu7  Это значение используется в дополнение к базовому DN при поиске и загрузке групп. Если значение не указано, поиск поддерева начнется с базового DN.Например: ou=users,ou=admins; ou=guestu   Домен для логина)r.   u8   Дополнительное DN пользователяu   Добавляется к базовому DN для ограничения объема при поиске пользователей.u,   Дополнительные DN группыux   Добавляется к базовому DN для ограничения объема при поиске групп.u   Разрешения LDAPu    Только для чтенияuJ   Только для чтения, с локальными группамиu   Чтение/Запись)readonlyZreadonly_and_localZread_and_writeu   ПользователиZauth_plugin)r.   Zbackrefu0   Включить вложенные группыu   Если включено, группы могут содержать в себе другие группы. Включение этой опции может привести к снижению производительности.)r.   r1   defaultuS   Интервал синхронизации изменений (в минутах)   F)r.   r3   r/   uG   Интервал полной синхронизации (в днях)u?   Время ожидания чтения (в секундах)x   u3   Тайм-аут поиска (в секундах)<   u;   Тайм-аут соединения (в секундах)
   u8   Время последней синхронизации)r.   r2   	log_leveluE   Время последней полной синхронизацииu   Статусopenu   Созданu+   Запущена синхронизацияu-   Синхронизация завершенаu'   Ошибка синхронизации)r:   Zin_progressclosederror)r.   r3   r0   r9   u2   Класс объекта пользователяu>   Фильтр пользовательских объектовu>   Фильтр отключенных пользователейu6   Атрибут «Логин пользователя»u:   Атрибут «RDN имени пользователя»u2   Атрибут «Имя пользователя»u:   Атрибут «Фамилия пользователя»u?   Атрибут «Полное имя пользователя»uM   Атрибут «Электронная почта пользователя»u8   Атрибут «Пароль пользователя»u:   Шифрование пароля пользователяZDESZ	PLAINTEXTZSHAZMD5ZSSHA)ZdesZ	plaintextZshaZmd5ZsshauC   Атрибут «Уникальный ID пользователя»u"   Атрибут «Employee Number»ZEmployeeNumber)r.   r3   u(   Класс Группы Объектовu*   Фильтр объектов группыu&   Атрибут «Имя группы»u0   Атрибут «Описание группы»u7   Атрибут «Уникальный ID группы»u(   Атрибут Членов Группыu:   Атрибут «Участие пользователя»uC   Используйте атрибут «Членов Группы»u   Имя хоста)r.   Zvisibler2   ZCmfAuthPluginDatau   RAW данные)r-   r.   u7   Автоматическая синхронизацияu%   Debug для техподдержкиu   Назначить группыCmfPersonGroupc                   C   s   t j gS )N)modelsr=   Z
user_group r?   r?   1./modules/settings/fields/cmf_auth_ldap_plugin.py<lambda>       zCmfAuthLdapPlugin.<lambda>)leftr.   r-   r3   u    Маппинг полей (JSON) uT   {"Название аттрибута в AD":"Название поля в EvaTeam"})r.   r3   Zplaceholderu0   Не удалять домен из логинаuZ   Синхронизировать пользователей только из группы)r.   r-   r/   N)F__name__
__module____qualname__Z	ui_moduleZui_nameZcode_prefixZacl_default_user_policyZui_formr   ZFieldZCmfRelationZpluginZ	CmfChoicer   Z
CmfStr4096r   r   r   r   Zuser_dnZgroup_dnmodeZ
CmfBackrefZusersZCmfBoolr   ZCmfIntr   r   r   r   r   ZCmfDateTimer	   Zsync_all_dater
   ZCmfStrr   r   r   r   Zuser_rdn_attrr   r   r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   cmfZCmfStr64Zorg_nameZauth_plugin_datar   r   ZCmfM2Mr   ZCmfTextr   r   r   r?   r?   r?   r@   r      s:  M   







  r   N)rI   r   Zcmf.includer>   Z	CmfEntityr   r?   r?   r?   r@   <module>   s   