26 Сен

Creatio .NetCore,PostgeSQL в Docker Desktop

Разворачиваем Creatio локально в Docker Desktop версию для .NetCore естественно с базой PostgresSQL.

Urls:

Install

  • запускаем docker-compose up -d —build
  • первый раз контейнер creatio упадет, так как долго ресторится база, а она большая
  • заходим в логи postgres и смотрим пока не закончится до PostgreSQL init process complete; ready for start up.
  • запускаем контейнер creatio, ждем и заходим по URL
  • чтобы запустить создание базы заново, просто удалить папку \db

Папки

  • \postgres — для pgadmin папка через которую можно залить бэкап SQL
  • \Creatio — исходники файлов Creatio взяты тут http://ftp.creatio.com/support/downloads/!Release/installation_files/7.18.0/ для Docker нужно брать с …NetCore.zip в имени файла
  • \logs — папка логов Creatio
  • \db — папка для сохранения баз PG

Файлы для правки

  • \Creatio\ConnectionStrings.config — для работы нужно прописать, заменить две строки

Опционально. чтобы развернуть базу SQL вручную

заходим http://localhost:5050 pgadmin админка SQL (password = admin) создаем базу c именем Creatio и ресторим из папки /home/backup дамп BPMonline7180SalesEnterprise_Marketing_ServiceEnterprise_Linux.backup (будет папка с ПК ./postgres) потом еще можно прогнать скрипт CreateTypeCastsPostgreSql.sql как бы правит имена

Error

При первом запуске он может долго ресторить базу, смотрим логи и потом запускаем контейнер с креатио

FATAL Microsoft.AspNetCore.Hosting.Diagnostics ApplicationError — Application startup exception Npgsql.PostgresException (0x80004005): 42P01: relation «public.SysSettings» does not exist Как раз такая ошибка когда база не ресторина, тогда разворачиваем базу вручную

PostgreSQL Database directory appears to contain a database; Skipping initialization решение удалить локальный vol чтобы база был чистая https://stackoverflow.com/questions/59715622/docker-compose-and-create-db-in-postgres-on-init так и не получилось реторить из дампа через sh pg_restore нашел решение просто из full.sql

 

23 Сен

Интеграция Creatio + LDAP AD

LDAPЕсть официальная документация Creatio по интеграции с MS AD по LDAP, там все подробно описано, но некоторые моменты нужно  иметь ввиду, которые хочу описать.
Как работает механизм интеграции Creatio LDAP. Запускается периодически процесс и стягивает данные к себе в базу Creatio. Обновляет данные пользователя и его привязанного контакта и  группы из AD, которые потом можно выбрать в привязке к ролям.   Для настройки нужно…

1. Подготовить AD  пользователей и группы. Важно чтобы пользователь был в группе (domain users не считается) иначе не пройдет синхронизация. Любые ошибки синхронизации нужно смотреть в логах Auth.log.
Создадим новую группу CreatioUsers и добавим в нее несколько тестовых пользователей.

2. Настройка Creatio конфиг UI
Основные настройки делаем
https://site.ru/0/Nui/ViewModule.aspx#ConfigurationModuleV2/LDAPServerSettings/
можно заменить site.ru вашим сайтом Creatio
Тут данные для доступа на чтение в AD LDAP, может быть любой пользователь. Ставим выдавать лицензии, так удобнее.

Это те данные, которые он будет синхронизировать, если вам нужно больше полей то нужно писать свой отдельный скрипт интеграции.  Важно 5 обязательных полей должны быть сопоставлены с LDAP атрибутами пользователя.  Для уникальности лучше  выбрать objectGUID, а не objectSID  почему тут.
С группами и фильтрами оставим все как есть, по умолчанию.

3. Запускаем синхронизацию вручную

Тут можно вручную запустить, если объектов LDAP будет больше 1000 и нет лицензий  Creatio, то не пройдет синхронизация.

4. Проверяем логи синхронизации

Нажимаем на Шестерёнку, потом Журнал процессов, находим наш процесс и  если есть ошибка, а они будут, то смотрим и решаем.

5. Делаем привязку к группе

Если все прошло удачно, то нужно настроить привязку групп AD к ролям. Для этого прописываем нашу группу CreatioUsers к роли например All employees.

Пользователи сами добавятся в область ниже.

6. Настройка Creatio конфиг IIS Web.config

Когда пользователи появились у роли. Разрешим входить используя логин и пароль LDAP. Для этого сделаем изменения в файл Web.config корневой папки.
Добавим Ldap провайдер, дополнив providerNames=»InternalUserPassword,Ldap»

Настроим провайдер на наш сервер, пропишем свой домен и сервер LDAP

Перезапускаем IIS, чтобы применить изменения.

7. Проверим вход в Creatio

8. Дополнительные настройки  интеграции LDAP Creatio

В системных настройках есть те же настройки по  отдельности

9. Возможные ошибки 

Если у пользователя=контакта есть обязательные поля,  то импорт будет завершатся ошибкой, решение нужно убрать у этих полей обязательность.
Больше по настройке тут.
Если есть ошибки которые не решить, перезапустите сервер иногда помогает.