Журнал технических изменений¶
Примечание
Ниже представлены технические изменения вышедших релизов. Краткий перечень изменений релизов отражен в новых функциях. Также см. информацию о важных изменениях.
Версия 2.7.1¶
Шифрование паролей подключений LDAP¶
Класс org.unidata.mdm.core.util.CryptUtils
объявлен deprecated. Необходимо использовать класс org.unidata.mdm.system.utils.CryptUtils
.
Шифрование паролей подключений LDAP переведено на общий механизм платформы. Если шифрование в платформе выключено, подключения LDAP шифроваться не будут.
Старые настройки подключений LDAP после обновления станут неактуальны. Для существующих подключений необходимо заново ввести пароль.
Версия 2.7¶
Отображение удаленных связей¶
На эндпоинтах
/v1/dg/data/relations
и/v1/dg/data/catalog/next-level
добавлен флаг "cascaded", еслиincludeInactive=true
иcascaded=true
, то возвращаются все активные и логически удаленные каскадно связи.На эндпоинте
/v1/dg/data/catalog/next-level
также добавлена поддержка флага "includeInactive" (работает так же, как и в/v1/dg/data/relations
).
Удаление информационной системы¶
Реализован новый эндпоинт для получения информации о наличии связей с бизнес-слоем или активами другой информационной системы: GET-запрос
/dg/meta/information-systems/has-relations
с Query-параметром "informationSystem": "Название ИС".
Очистка информационной системы¶
Реализован новый endpoint для очистки ИС с выбором сканера. url:
v1/data/clean/crawler-instance/
, method: DELETE, params: informationSystemName: Название ИС, crawlerInstanceName: Название сканера (на BE - имя crawler instance в моделиorg.unidata.mdm.meta.configuration.Descriptors.SOURCE_SYSTEMS
).
Ресурс безопасности на пользовательские пакетные операции¶
POST
/api/v2/core/import-data
POST
/api/v2/bulk-operations/execute
При отсутствии прав ответ: 403 У пользователя [user1] недостаточно прав для (импорта/экспорта/удаления - в зависимости от выбранной операции) активов. Доступ запрещен.
Кастомный модуль по поддержке SSO Kerberos¶
Добавлена возможность добавить кнопку Вход по ССО, для этого необходимо добавить параметр "SSO_BUTTON_ENABLED" : true" в customer json
Изменены параметры файла backend.properties:
com.universe.mdm.sso.kerberos.realm.name=${SSO_KERBEROS_REALM_NAME:USE.ME} //edit with correct domain name
com.universe.mdm.sso.kerberos.keytab.file=${SSO_KERBEROS_KEYTAB_FILE:${unidata.conf}/tomcat.keytab}
com.universe.mdm.sso.kerberos.service.principal=${SSO_KERBEROS_SERVICE_PRINCIPAL:HTTP/dmitrova.use.me@USE.ME}
Поддержка файловых массив-атрибутов¶
org.unidata.mdm.rest.system.upload.attachment.directory
org.unidata.mdm.rest.system.upload.attachment.memory.threshold
org.unidata.mdm.rest.system.upload.attachment.max.size
Были изменены на:
org.unidata.mdm.core.upload.attachment.directory
org.unidata.mdm.core.upload.attachment.memory.threshold
org.unidata.mdm.core.upload.attachment.max.size
Было добавлено поле:
org.unidata.mdm.core.file.max.count
Оно задает максимальное количество файлов для атрибута (по умолчанию 10).
Управление статусами вручную¶
Добавлена возможность ручного управления статусами объектов через REST. Подробнее см. в важных изменениях.
Метод
com.unidata.mdm.data.status.type.transition.DataStatusTransitionHandler.handle(List<DataStatusTransition>)
объявлен deprecated. Рекомендуется использовать вместо него методcom.unidata.mdm.data.status.type.transition.DataStatusTransitionHandler.after(List<DataStatusTransition>)
.
Сортировка записей активов без выбора конкретного актива¶
Добавлена индексация отображаемых имен активов и их типов, что позволяет выполнять поиск и сортировку по отображаемым именам.
В случае изменения типа актива будет необходимо выполнение переиндексации, о чем появится соответствующее сообщение в момент публикации типа актива.
Поддержка транслитерации в поиске¶
Для обновления необходимо установить плагин analysis-icu для OpenSearch.
Установка с Docker:
При запуске Universe DG из репозитория Docker через Docker Compose плагин будет установлен автоматически.
Важно: Перед запуском команды docker-compose up -d
необходимо убедиться, что присутствует файл opensearch-install-plugins-and-start.sh, который производит установку плагина analysis-icu, если она требуется, а также актуализирован файл docker-compose.yml:
...
opensearch-dg:
image: opensearchproject/opensearch:2.7.0
restart: always
environment:
- "OPENSEARCH_JAVA_OPTS=-Xms1024m -Xmx1024m"
- "discovery.type=single-node"
- "DISABLE_SECURITY_PLUGIN=true"
volumes:
- dg-opensearch-data:/usr/share/opensearch/data
- ./hunspell:/usr/share/opensearch/config/hunspell/
- ./opensearch-install-plugins-and-start.sh:/usr/share/opensearch/opensearch-install-plugins-and-start.sh
entrypoint: /usr/share/opensearch/opensearch-install-plugins-and-start.sh
...
Установка вручную:
Приведенные ниже команды выполняются из директории, где установлен OpenSearch.
Команда для проверки установленных плагинов:
bin/opensearch-plugin list
Команда для установки плагина analysis-icu:
bin/opensearch-plugin install analysis-icu
Пример команды для установки плагина оффлайн (необходимо заранее скачать zip-файл с плагином, например, по ссылке https://artifacts.opensearch.org/releases/plugins/analysis-icu/2.7.0/analysis-icu-2.7.0.zip):
bin/opensearch-plugin install file:C:/Downloads/analysis-icu-2.7.0.zip
Пример команды для установки плагина через указание URL на zip-файл с плагином:
bin/opensearch-plugin install https://artifacts.opensearch.org/releases/plugins/analysis-icu/2.7.0/analysis-icu-2.7.0.zip
История изменения актива¶
Доработан способ получения истории изменений записи актива.
Для сохранения дополнительных элементов истории, которые ранее никак не фиксировались (восстановление/удаление актива), создана таблица org_unidata_dg_data.transitions
. Также доступна регистрация новых типов transition'ов и их сохранение в таблицу.
Для различных потоков выполнения восстановления и удаления актива добавлены новые сегменты, которые сохраняют информацию об изменениях в org_unidata_dg_data.transitions (org.unidata.dg.data[ASSET_DELETE_TRANSITION], org.unidata.dg.data[ASSET_RESTORE_TRANSITION])
.
Получение истории записи вынесено в отдельный поток выполнения:
{
"startId": "org.unidata.dg.data[ASSET_HISTORY_START]",
"subjectId": "",
"description": "org.unidata.dg.data.asset.history.start.description",
"segments": [
{
"segmentType": "START",
"id": "org.unidata.dg.data[ASSET_HISTORY_START]"
},
{
"segmentType": "POINT",
"id": "org.unidata.dg.data[ASSET_HISTORY]"
},
{
"segmentType": "POINT",
"id": "org.unidata.dg.data[ASSET_HISTORY_TRANSITIONS]"
},
{
"segmentType": "FINISH",
"id": "org.unidata.dg.data[ASSET_HISTORY_FINISH]"
}
]
}
Добавлены новые эндпоинты:
GET-запрос
/v1/dg/data/assets-history/types
для получения всех типов событий истории актива.POST-запрос
/v1/dg/data/assets-history
для получения истории записи.
Примечания:
Эндпоинт для получения истории записи актива стал Deprecated - POST-запрос
/v1/dg/data/assets/vistory
Метод
org.unidata.dg.data.service.AssetsService.getVistory(AssetVistoryGetContext)
стал DeprecatedТочки пайплайна
org.unidata.dg.data[ASSET_VISTORY_GET_START]
,org.unidata.dg.data[ASSET_GET_VISTORY]
иorg.unidata.dg.data[ASSET_VISTORY_GET_FINISH]
стали Deprecated
Обновление OrientDB с версии 3.2.4 до 3.2.23¶
Добавлено свойство в backend.properties c названием БД OrientDB:
org.unidata.mdm.graph.storage.orientdb.datasource.database=dg
Изменено значение для свойства
org.unidata.mdm.graph.storage.orientdb.datasource.url
Было:
org.unidata.mdm.graph.storage.orientdb.datasource.url=remote:localhost:2424/dg
Стало:
org.unidata.mdm.graph.storage.orientdb.datasource.url=remote:localhost:2424
В url необходимо указывать только хост и порт для подключения к OrientDB.
Выбор формата импорта ФИО из Active Directory¶
Добавлен REST эндпоинт
Запрос: GET http://{{server}}:{{port}}/universe-backend/api/v1/ldap/configuration/name-formats
Ответ (displayName локализован):
{"details":{"info":[],"warning":[],"error":[]},
"names":[
{"name":"LAST_FIRST_MIDDLE","displayName":"фамилия / имя / отчество"},
{"name":"LAST_MIDDLE_FIRST","displayName":"фамилия / отчество / имя"},
{"name":"FIRST_LAST_MIDDLE","displayName":"имя / фамилия / отчество"},
{"name":"FIRST_MIDDLE_LAST","displayName":"имя / отчество / фамилия"},
{"name":"FIRST_LAST","displayName":"имя / фамилия"},
{"name":"LAST_FIRST","displayName":"фамилия / имя"},
{"name":"MIDDLE_LAST_FIRST","displayName":"отчество / фамилия / имя"},
{"name":"MIDDLE_FIRST_LAST","displayName":"отчество / имя / фамилия"}]}
Изменен объект для GET/POST/PUT http://{{server}}:{{port}}/unidata-backend/api/v1/ldap/configuration/{{_int}}
В объект
domains
добавлено поле "adUserNameFormat" типа строка. Значение - одно из списка name-formats