Безопасность

Раздел содержит информацию об используемом шифровании данных и регистрируемых событиях безопасности Оркестратора.

Шифрование паролей в элементах Студии

Студия обладает набором готовых элементов для создания роботизированного сценария. Элементы, использующие пароли, имеют специальное свойство Защищенный пароль. Оно позволяет вводить пароли в зашифрованном виде и, таким образом, не хранить их открытыми даже в памяти компьютера в целях безопасности использования учетных данных. Для защиты пароля используется формат значений SecureString.

Шифрование очередей обмена данными в Оркестраторе

Очереди обмена данными – это структуры данных в БД Оркестратора, которые используются при выполнении RPA-проектов для организации обмена данными между:

  • Роботами;

  • Роботами и Студией.

При создании очереди обмена данными в UI Оркестратора существует возможность настроить шифрование элементов очереди в БД. Для шифрования используется алгоритм AES-512.

Шифрование в ресурсах Оркестратора

Ресурсы – именованные переменные в хранилище Оркестратора. Ресурсы могут читать/устанавливать роботы и Студия при выполнении RPA-проектов. Значение всех ресурсов шифруется в БД посредством алгоритма AES-512.

Шифрование паролей в конфигурационных файлах

Конфигурационные файлы поставляются с зашифрованными паролями для доступа пользователей к БД (PostgeSQL; MS SQL Server) и другим службам/компонентам Системы (ActiveDirectory, SslCert, RabbitMQ).

Смена предустановленного пароля, например, для пользователя БД, требует обязательного шифрования нового пароля при помощи программы LTools.Orchestrator.PasswordEncryptor.exe. После чего он копируется в конфигурационные файлы. Программа для шифрования паролей PasswordEncryptor.exe входит в комплект поставки Оркестратора.

Для шифрования могут использоваться AES- (по умолчанию) или RSA-алгоритмы. Соль для алгоритма шифрования паролей находится в одной из обфусцированных dll Оркестратора, поэтому шифрование доступно только с помощью LTools.Orchestrator.PasswordEncryptor.exe.

Шифрование паролей в БД

В целях безопасности БД не хранит пароли, за исключением паролей для машин Роботов. Пароли для машин хранятся не в открытом, а в зашифрованном виде - при помощи AES-алгоритма.

События безопасности

В журнале Оркестратора регистрируются события, относящиеся к классу Инцидент безопасности. Их можно найти в UI Оркестратора в разделе Журнал > Инцидент безопасности:

Например, к ним относятся:

  1. Конфигурационный файл изменен. Код: 2. Фиксируется, если с прошлого запуска конфигурационный файл WebApi изменился. В Оркестраторе есть возможность просмотреть прошлое содержание конфигурационного файла.

  2. Пользователь отключен. Код: 104. Фиксируется, если администратор заблокировал пользователя.

  3. Пользователю назначены роли. Код: 105. Фиксируется, если администратор назначил выбранные роли/роль пользователю.

  4. Робот занял свободную лицензию. Код: 608. Фиксируется в случае, когда робот после запуска запросил лицензию и успешно ее получил.

  5. Ошибка занятия лицензии роботом. Код: 609. Фиксируется, если робот не смог получить лицензию. Причины могут быть разными, например, отсутствие свободной лицензии.

И другие.

Состав информации о событии

Фиксируемая информация о событии зависит от типа события. В общем случае фиксируются:

  1. eventName - название события. Например, Пользователь авторизовался.

  2. event - код события. У каждого события есть свой постоянный код. Например, у события Пользователь авторизовался постоянный код 2001. Он отобразится в данном поле.

  3. orchTimestampUtc - дата и время события по UTC в формате Timestamp. Когда был зафиксирован прием события по времени Оркестратора.

  4. IP - IP-адрес машины владельца события.

  5. userId - идентификатор пользователя. Логин пользователя, который является владельцем события.

  6. tenantId - идентификатор тенанта, в котором произошло событие. Тенант, используемый по умолчанию, не указывается.

  7. Text – в этом поле может быть любая произвольная информация от разработчика, связанная с событием. Чаще всего присутствует при ошибках.

  8. Entity Data – расширенная информация о событии, например, сведения об объекте изменений. Информация варьируется и зависит от типа события. Пример: событие Пользователь авторизовался подразумевает, что пользователя еще как такового нет, есть только реквизиты (credential). Будущему пользователю отдали его сессию - кому именно (credential), отображается в EntityData. Когда этот, уже настоящий, пользователь снова обратится в Оркестратор в сессии, например, выполнит какую-то операцию по кнопке, он будет уже зафиксирован в userId.

  9. entityId - изначально содержало идентификатор сущности, связанной с событием. Например, если это событие 104 (Пользователь отключен), то в поле будет содержаться id пользователя, которого отключили. В настоящее время это поле находится в переходном периоде реструктуризации. То есть, оно по-прежнему может содержать как идентификатор, так и более расширенную информацию о сущности каждого события. Например, для события 2001 (Login / Пользователь авторизовался) оно будет содержать информацию о логине пользователя и его тенанте. А для события 101 (UserCreated / Пользователь создан) - по-прежнему только идентификатор созданного пользователя.

  10. сorrectSignature – подпись данных события.

  11. operationKey – код бизнес-операции. Код есть только у событий, которые связаны с роботом, поскольку именно они выполняют операции. Операция – это поток событий в рамках одного логического блока.

В зависимости от типа события значения некоторых параметров может быть null.

Last updated