В этой статье:
Служебный пользователь подсистемы безопасности обеспечивает:
вход в систему;
корректную работу аудита и блокировку пользователей;
использование роли приложения при работе с СУБД;
использование функции хэширования паролей.
Примечание. Создание служебного пользователя необходимо для репозитория, созданного на базе поддерживаемой СУБД, и доступно администратору/пользователю с привилегиями «Создание и удаление пользователей» и «Применение прав на уровне СУБД». Для репозитория, созданного на базе СУБД SQLite, создание служебного пользователя не требуется.
Для создания служебного пользователя подсистемы безопасности в ОС Linux:
Важно. Создание служебного пользователя подсистемы безопасности выполняется только один раз. Если на сервере базы данных уже содержатся учётные данные служебного пользователя, то пропустите данный шаг.
Сохраните созданные учётные данные служебного пользователя на компьютере с установленным BI-сервером.
После выполнения действий будет создан служебный пользователь подсистемы безопасности на сервере базы данных и сохранён в соответствии с выбранным способом на компьютере с установленным BI-сервером.
Совет. Настоятельно рекомендуется отключить политику обязательной периодической смены пароля для учётной записи служебного пользователя подсистемы безопасности в СУБД.
Для изменения пароля существующего служебного пользователя подсистемы безопасности используйте следующие скрипты:
ALTER USER SERVICE_USER_NAME IDENTIFIED BY 'NEW_PASSWORD';
ALTER ROLE "SERVICE_USER_NAME" WITH PASSWORD 'NEW_PASSWORD';
ALTER LOGIN SERVICE_USER_NAME WITH PASSWORD = 'NEW_PASSWORD';
Где:
SERVICE_USER_NAME. Имя служебного пользователя;
NEW_PASSWORD. Новый пароль служебного пользователя.
Для создания учётных данных служебного пользователя запустите приложение PP.Util, которое расположено в папке установки BI-сервера /opt/foresight/fp10.x-biserver/bin. Для запуска приложения используйте скрипт PP.Util_start.sh со следующими параметрами:
sudo ./PP.Util_start.sh /create_audit_user metabase_id login password audit_login audit_password db_login db_password
Где:
metabase_id. Идентификатор репозитория. Обязательный параметр;
Примечание. Репозиторий с указанным идентификатором должен содержаться в списке репозиториев. Если в настройках подключения к репозиторию указана пользовательская схема, то учётные данные служебного пользователя будут созданы для неё.
login. Имя владельца схемы ADMIN для подключения к репозиторию. Обязательный параметр;
password. Пароль владельца схемы ADMIN для подключения к репозиторию. Обязательный параметр;
audit_login. Имя создаваемого служебного пользователя. Обязательный параметр;
Примечание. Имя служебного пользователя P4AUDIT недоступно для использования.
audit_password. Пароль создаваемого служебного пользователя. Обязательный параметр;
db_login. Имя пользователя базы данных, у которого есть привилегии на создание пользователей в СУБД. Необязательный параметр. Если имя пользователя не указано, то оно будет запрошено в интерактивном режиме;
db_password. Пароль пользователя базы данных, у которого есть привилегии на создание пользователей в СУБД. Необязательный параметр. Если пароль не указан, то он будет запрошен в интерактивном режиме.
После выполнения действий будут созданы учётные данные служебного пользователя на сервере базы данных.
Для сохранения созданных учётных данных служебного пользователя на компьютере с установленным BI-сервером запустите приложение PP.Util, которое расположено в папке установки BI-сервера /opt/foresight/fp10.x-biserver/bin. Для запуска приложения используйте скрипт PP.Util_start.sh со следующими параметрами:
sudo ./PP.Util_start.sh /save_audit_creds /ALG enc_alg realm|/DC login password
Где:
enc_alg. Алгоритм шифрования, который будет применяться при шифровании учётных данных:
gos. По умолчанию. Используется шифрование алгоритмом GOST R 34.11-2012;
pro. Используется шифрование с помощью Data Protection API (DPAPI) в ОС Windows. Данный алгоритм шифрования недоступен для ОС Linux;
sim. Учётные данные сохраняются в открытом виде.
Важно. Для обеспечения безопасности в промышленной эксплуатации продукта «Форсайт. Аналитическая платформа» используйте значение gos или pro.
Необязательный параметр. Если параметр не задан, то используется значение по умолчанию;
scope. Способ сохранения учётных данных:
hkcu. Только для текущего пользователя. Учётные данные будут храниться в ветке реестра текущего пользователя [HKEY_CURRENT_USER\SOFTWARE\Foresight\Foresight Analytics Platform\10.0\Audit\Credentials\Item0] и доступны для использования только текущему пользователю на компьютере;
hklm. Для всех пользователей. Учётные данные будут храниться в ветке реестра локальной машины [HKEY_LOCAL_MACHINE\SOFTWARE\Foresight\Foresight Analytics Platform\10.0\Audit\Credentials\Item0] и доступны для использования всем пользователям на компьютере;
file. По умолчанию. В файл settings.xml.
В ОС Windows учётные данные будут храниться в файле settings.xml, расположенном по пути %PROGRAMDATA%\Foresight\Foresight Analytics Platform.
Примечание. По умолчанию папка ProgramData скрыта в операционной системе.
Если файл содержится по указанным путям, то он будет перезаписан. Если файл отсутствует, то он будет создан.
Необязательный параметр, используется только в ОС Windows. Если параметр не задан, то используется значение по умолчанию.
В ОС Linux учётные данные могут храниться только в файле settings.xml, расположенном по пути /opt/foresight/fp10.x-cfg/.config/Foresight/Foresight Analytics Platform.
Важно. При сохранении учётных данных служебного пользователя в файл settings.xml в ОС Linux выполните предварительные действия, указанные ниже, для раздачи прав доступа к файлу.
realm|/DC. Область действия учётных данных служебного пользователя. Выберите один из способов:
realm. Если в списке репозиториев содержится более одного репозитория и учётные данные служебного пользователя должны отличаться для каждого из них, то задайте идентификатор вида «SERVER_DATABASE|TYPE» для сервера базы данных, указанного в настройках подключения к конкретному репозиторию, где:
SERVER_DATABASE. IP-адрес или псевдоним, под которым зарегистрирован сервер базы данных;
Примечание. При настройке подключения к репозиторию на каждом клиентском компьютере или на компьютере с установленным BI-сервером IP-адрес или псевдоним сервера должен совпадать с сервером, указанным в параметре SERVER_DATABASE.
TYPE. Тип используемого драйвера. Допустимы следующие значения: «POSTGRES», «MSSQL», «ORCL»;
Например: "127.0.0.1|POSTGRES".
Примечание. Для избежания синтаксических ошибок значение задаётся в верхних двойных кавычках.
/DC. Если в списке репозиториев содержится один или более репозиториев, но учётные данные служебного пользователя должны быть одинаковыми для всех репозиториев, то используйте данный параметр без указания дополнительных настроек.
Обязательный параметр;
login. Имя существующего служебного пользователя. Обязательный параметр;
password. Пароль существующего служебного пользователя. Необязательный параметр. Если пароль не указан, то он будет запрошен в интерактивном режиме.
При сохранении созданных учётных данных служебного пользователя в файл settings.xml в ОС Linux выполните предварительные действия для раздачи прав доступа к файлу:
Задайте переменную HOME в конце файла:
/etc/apache2-fp10.x/envvars для Debian-подобных дистрибутивов:
export HOME=/opt/foresight/fp10.x-cfg
/etc/sysconfig/httpd-fp10.x для RedHat-подобных дистрибутивов или /etc/sysconfig/httpd2-fp10.x для ALT Linux:
HOME=/opt/foresight/fp10.x-cfg
Создайте каталог для хранения учётных данных служебного пользователя с помощью команды:
sudo mkdir -p "/opt/foresight/fp10.x-cfg/.config/Foresight/Foresight Analytics Platform"
Назначьте владельцем каталога пользователя www-data с помощью команды:
sudo chown -R www-data:www-data "/opt/foresight/fp10.x-cfg/.config/Foresight/Foresight Analytics Platform"
Указанный пример применим для раздачи прав в Debian-подобных дистрибутивах. При работе в других дистрибутивах ОС Linux замените «www-data:www-data» на «apache:apache» для RedHat-подобных дистрибутивов или на «apache2:apache2» для ALT Linux.
Запустите приложение PP.Util от имени пользователя www-data, apache или apache2, и сохраните учётные данные служебного пользователя. Пример команды:
sudo -u <имя пользователя> /opt/Foresight/fp10.x-biserver/bin/PP.Util_start.sh /sac "SERVER_DATABASE|POSTGRES" SERVICE_USER_NAME SERVICE_USER_PASSWORD
Где:
SERVER_DATABASE. IP-адрес или псевдоним, под которым зарегистрирован сервер базы данных;
SERVICE_USER_NAME. Имя служебного пользователя;
SERVICE_USER_PASSWORD. Пароль служебного пользователя.
Перезапустите сервер Apache2 в зависимости от операционной системы:
для Debian-подобных дистрибутивов:
sudo systemctl restart apache2-fp10.x
для RedHat-подобных дистрибутивов:
sudo systemctl restart httpd-fp10.x
для ALT Linux:
sudo systemctl restart httpd2-fp10.x
После выполнения действий учётные данные служебного пользователя будут сохранены в файл settings.xml.
Важно. Служебный пользователь может быть заблокирован при попытке входа в репозиторий, если его учётные данные, добавленные с помощью приложения PP.Util, не совпадают с исходными учётными данными, заданными при создании. Для разблокировки служебного пользователя обратитесь к администратору СУБД.
См. также:
Создание и управление репозиториями метаданных | Менеджер репозитория Linux