Часто задаваемые вопросы#
Список основных вопросов, возникающих в процессе установки и эксплуатации приложения.
Как настроить восстановление работоспособности приложения при сбое?#
В основе приложения лежит оркестратор Docker Swarm, который автоматически восстановит работоспособность приложения, если оно было аварийно завершено. Docker Swarm также восстановит работу приложения при перезагрузке сервера.
Добавьте сервис Docker в список автоматически загружаемых сервисов, чтобы приложение восстанавливало работоспособность без необходимости прибегать к ручным действиям.
Как сбросить данные неудачной установки или удалить приложение?#
Для удаления данных и остановки всех сервисов приложения перейдите в директорию с установщиком и воспользуйтесь командой:
Внимание
Удаление приложения приведет к потере всех пользовательских данных.
Как обновить сертификат?#
Для обновления текущего сертификата достаточно заменить его файлы. Файлы должны иметь те же имена и располагаться в той же директории, что и файлы, указанные в разделе конфигурирования при установке приложения. Далее необходимо обновить конфигурацию веб-сервера:
Обновить сертификаты на хостовом веб-сервере:
Обновить сертификаты в контейнерах:
Как изменить IP-адрес в настройках приложения и базе данных?#
В директории установщика onpremise-installer найдите файл configs/global.yaml.
Откройте его любым текстовым редактором и укажите новый IP-адрес для параметра host_ip:
host_ip: "<Новый IP адрес вашего сервера>"
Выполните команду обновления в директории установщика:
Выполните команду для обновления IP-адреса в базе данных контейнера php-monolith, подставив новый IP-адрес:
Примечание
В двух примерах ниже указан путь /home/compass, который является значением по умолчанию.
Если ваш путь отличается, уточните его в параметре root_mount_path в файле configs/global.yaml и замените в командах соответствующие значения.
Выполните замену старого IP на новый в файлах конфигурации приложения. Для этого используйте следующую команду, подставив соответствующие значения для старого и нового IP:
Обновите timestamp в конфигурационных файлах командой:
Перезапустите микросервисы, используя следующую команду:
Как изменить максимально разрешенный размер загружаемого файла?#
Начиная с версии сервера 5.2.0, в Compass появилась возможность настраивать максимальный размер файла, разрешённого для загрузки. Для этого необходимо изменить соответствующий параметр в конфигурационном файле configs/team.yaml.
Внимание
Для использования функционала клиентские приложения должны быть обновлены до минимальных версий с его поддержкой:
Desktop: 5.14.3
iOS: 5.19.0
Android: 5.17.0
# Ограничение размера загружаемых файлов в мегабайтах (диапазон значений от 20 до 2048)
max_file_size_mb: 2048
Для того чтобы изменить максимальный размер загружаемого файла, укажите его в мегабайтах и выполните обновление серверной части для применения изменений.
Как отобразить руководителя в карточке сотрудника (LDAP)?#
Чтобы при авторизации пользователя через LDAP автоматически отображалась информация о его руководителе (например, ФИО), необходимо настроить соответствующее сопоставление LDAP-атрибутов в конфигурационном файле auth.yaml.
Откройте конфигурационный файл auth.yaml и заполните параметр sso.compass_mapping.bio следующим значением:
[[manager:distinguishedName='{manager}']]— устанавливает связь между текущим пользователем и другим объектом в LDAP по заданному атрибуту;manager— имя ключа, используемого для обращения к атрибутам найденного в LDAP объекта (например, руководителя);distinguishedName— атрибут, по значению которого выполняется поиск соответствующего объекта;'{manager}'— значение атрибута у текущего пользователя, используемое в качестве параметра для поиска в LDAP;
{manager=>displayName}— подставляет значение атрибута displayName у найденного объекта (руководителя) и отображает его в карточке пользователя. Дополнительно можно использовать другие атрибуты, например: {manager=>mail}.
Выполните обновление серверной части для применения изменений.
Как настроить автоматическую синхронизацию данных из LDAP в карточку пользователя Compass?#
Начиная с версии сервера 6.0.1, в Compass появилась возможность автоматически синхронизировать данные пользователей из LDAP.
Для активации данной функции откройте конфигурационный файл configs/auth.yaml и установите параметр:
По умолчанию синхронизация производится каждые 5 минут. При необходимости интервал можно изменить, указав значение в параметре:
Начиная с версии 6.4.0, доступна настройка обновления пустых атрибутов из LDAP. Для контроля обновления установите параметр:
При включении данной опции (значение true) в момент синхронизации данных текущие значения атрибутов пользователя в Compass будут заменяться связанными значениями из LDAP, даже если эти значения пустые в LDAP.
Внимание
Активация этой настройки может привести к очистке данных, которые были вручную заполнены пользователем в приложении, если соответствующие атрибуты в LDAP не заполнены. Например, если пользователь указал должность в Compass, но этот атрибут отсутствует в LDAP, при синхронизации должность будет удалена из карточки пользователя.
Для применения изменений, внесённых в конфигурационный файл, выполните обновление серверной части:
Если LDAP-данные сотрудников были изменены до активации синхронизации, выполните команду из директории установщика, чтобы принудительно синхронизировать их с приложением.
Как настроить отдельный метод авторизации для гостей?#
Начиная с версии 6.0.4 появилась возможность задать отдельный способ авторизации для пользователей с гостевым доступом. Настройка производится в конфигурационном файле configs/auth.yaml:
Выберите и настройте подходящий тип авторизации для гостей в соответствии с инструкциями из раздела: «Настройка сервисов авторизации».
После внесения изменений необходимо выполнить обновление серверной части:
Удаление пространства#
Для удаления пространства (команды) по его идентификатору выполните следующую команду:
Внимание
Удаление пространства приведет к безвозвратному удалению всех данных команды, включая документы и настройки. Восстановление будет невозможно.
Смена root-пользователя#
Для передачи прав root-пользователя другому пользователю выполните команду:
Скрипт выполняет следующие действия:
Назначает пользователю права root-пользователя;
Проверяет пространства, в которых состоит новый root-пользователь;
Добавляет пользователю права администратора во всех пространствах, в которых он уже состоит;
Если пользователя нет в каком-либо пространстве, он автоматически вступает в него с правами администратора.
Примечание
Предыдущий root-пользователь сохраняет права администратора во всех пространствах, в которых он состоит. В системе может быть только один активный root-пользователь одновременно.
Смена уникального атрибута LDAP с сохранением существующих учетных записей#
Для смены параметра ldap.user_unique_attribute с сохранением существующих учетных записей пользователей используйте инструкцию ниже.
Ниже показана работа скрипта на примере Active Directory. Скрипт также работает и с FreeIPA.
В файле конфигурации auth.yaml поменяйте значение параметра ldap.user_unique_attribute:
ldap.user_unique_attribute: "objectGUID"
Запустите обновление серверной части, чтобы применить изменения конфигурации.
Внимание
На время выполнения всех шагов не авторизовывайте пользователей через LDAP. Иначе будет создана новая учетная запись вместо существующей.
Перед выполнением миграции рекомендуется запустить скрипт в тестовом режиме --dry=1, чтобы посмотреть, какие изменения будут применены.
Замените <старый-атрибут> на уникальный атрибут LDAP, который был указан до смены.
А <новый-атрибут> — на новый уникальный атрибут, который вы указали в auth.yaml.
Пример:
sudo docker exec -it $(sudo docker ps -q --filter name=php_monolith) bash -c \
"php /app/src/Compass/Federation/sh/php/migrate_user_to_new_user_unique_attribute.php \
--dry=1 --old_unique_attribute==sAMAccountName \
--new_unique_attribute=objectGUID"
В тестовом режиме --dry=1 скрипт только покажет, какие учетные записи будут обновлены, но не внесет фактических изменений.
Чтобы выполнить миграцию, запустите скрипт с отключенным тестовым режимом --dry=0:
Напишите нам в пространстве поддержки On-premise, Telegram или на почту support@getcompass.ru, чтобы получить индивидуальную демонстрацию функционала и помощь по вопросам интеграции мессенджера в вашей компании.