Синхронизация Пользователей или Групп с ECOS
Contents
Синхронизация выполняется на стороне микросрвиса ecos-model.
Настройка осуществляется через журнал Модель -> Синхронизация или деплой соответствующего артифакта authorities-sync
.
{
"id": "emodel-ldap-person-sync",
"name": {
"ru": "Пользователи из LDAP",
"en": "Persons from LDAP"
},
"type": "emodel-ldap",
"repeatDelayDuration": "PT10S",
"enabled": true,
"config": {},
"version": 1,
"authorityType": "PERSON",
"manageNewAuthorities": true
}
Атрибут | Описание |
---|---|
id | Идентификатор синхронизации |
name | Название синхронизации |
type | Тип синхронизации. См. :ref:`Типы синхронизации <sync-auth-types>` |
repeatDelayDuration | Периодичность синхронизации (PT10S - каждые 10 секунд) |
enabled | Включена ли синхронизация |
config | Конфигурация синхронизации специфичная для каждого типа синхронизации |
version | Версия синхронизации. При изменении конфигурации синхронизации, необходимо увеличить версию |
authorityType | Тип синхронизируемых объектов, возможные значения - PERSON, GROUP |
manageNewAuthorities | TODO: fill @pavel.simonov |
Тип: alfresco
Пример конфигурации:
{
"id": "alfresco-persons-sync",
"name": {
"ru": "Пользователи из Alfresco",
"en": "Persons from Alfresco"
},
"type": "alfresco",
"repeatDelayDuration": "PT10S",
"enabled": true,
"config": {
"batchSize": 30,
"attributes": {
"firstName": "cm:firstName",
"middleName": "cm:middleName",
"personDisabled": "ecos:isPersonDisabled",
"photoCacheKey": "ecos:photo.contentUrl|presuf(\"v2-\")",
"workingCalendar": "org:workingCalendar?id"
}
},
"version": 1,
"authorityType": "PERSON",
"manageNewAuthorities": true
}
Атрибут | Описание |
---|---|
batchSize | Размер пакета для синхронизации |
attributes | Список атрибутов для синхронизации. Ключ - имя атрибута в Ecos, значение - атрибут в Alfresco |
Тип: alfresco
Пример конфигурации:
{
"id": "alfresco-groups-sync",
"name": {
"ru": "Группы из Alfresco",
"en": "Groups from Alfresco"
},
"type": "alfresco",
"repeatDelayDuration": "PT10S",
"enabled": true,
"config": {
"batchSize": 30,
"attributes": {
"name": "cm:authorityDisplayName",
"roleType": "org:roleType",
"branchType": "org:branchType",
"roleSubType": "org:roleTypeAssoc.cm:name",
"branchSubType": "org:branchTypeAssoc.cm:name",
"roleIsManager": "org:roleTypeAssoc.org:roleIsManager?bool",
"authorityGroups": "assoc_src_cm:member[].cm:authorityName|rxg(\"GROUP_(.+)\")|presuf(\"emodel/authority-group@\")"
}
},
"version": 3,
"authorityType": "GROUP",
"manageNewAuthorities": true
}
Атрибут | Описание |
---|---|
batchSize | Размер пакета для синхронизации |
attributes | Список атрибутов для синхронизации. Ключ - имя атрибута в Ecos, значение - атрибут в Alfresco |
Тип: emodel-ldap
Note
Доступно только в Ecos Enterprise
Подключение к LDAP осуществляется через Spring LDAP.
Вы можете создать несколько конфигураций синхронизации, указав различные настройки - например, сервера, домены, фильтры и т.д.
Пример конфигурации:
{
"id": "emodel-ldap-person-sync",
"name": {
"ru": "Пользователи из LDAP",
"en": "Persons from LDAP"
},
"type": "emodel-ldap",
"repeatDelayDuration": "PT5M",
"enabled": true,
"config": {
"batchSize": 100,
"usernameAttributeName": "uid",
"modifyTimestampAttName": "modifyTimestamp",
"modifyTimestampFormat": "yyyyMMddHHmmss'Z'",
"attributes": {
"email": "mail",
"lastName": "sn",
"firstName": "givenname"
},
"ldapSearch": {
"filter": "(objectClass=person)"
},
"differential": true,
"ldapConnection": {
"base": "dc=example,dc=org",
"urls": [
"ldap://localhost:389"
],
"credentials": "ldap-cred"
}
},
"version": 1,
"authorityType": "PERSON",
"manageNewAuthorities": true
}
Атрибут | Описание |
---|---|
batchSize | Размер пакета для синхронизации |
usernameAttributeName | Атрибут LDAP, содержащий имя пользователя (username), должно быть уникальным в системе. По умолчанию - uid |
modifyTimestampAttName | Атрибут LDAP, содержащий время последнего изменения пользователя, необходим для дифференциальной синхронизации. По умолчанию - modifyTimestamp |
modifyTimestampFormat | Формат времени последнего изменения пользователя в LDAP (значения атрибута modifyTimestampAttName ). По умолчанию - yyyyMMddHHmmss'Z' |
attributes | Список атрибутов для синхронизации. Ключ - имя атрибута в Ecos, значение - атрибут в LDAP |
differential | Флаг, указывающий на необходимость синхронизации только измененных пользователей |
ldapSearch | Параметры поиска
|
ldapConnection | Параметры подключения к LDAP серверу
|
Note
Если включена дифференциальная синхронизация и была изменена конфигурация с повышением версии, то первая синхронизация после изменения будет полной.