Авторизация в компоненте реализуется с помощью стороннего ПО. Доступна интеграция с Avanpost, Keycloak и Basis Virtual Security.
Чтобы включить авторизацию через IAM, выполните следующие действия:
-
Создайте резервную копию файла
config.yml:cp /opt/skala-r/etc/vision/server/vision_core/config.yml \
/opt/skala-r/etc/vision/server/vision_core/config.yml.bak ```
-
В файле
config.ymlприведите блокauthк следующему виду:auth: enabled: true auth_server: <1> admin_server: <2> auth_type: <3> realm: <4> client_id: <5> client_secret: vault.auth.client_secretПодставьте нужные значения в соответствующие поля:
-
URL сервера Keycloak, например,
https://192.168.1.1:8080/. -
URL для административного доступа к IAM.
-
Для Keycloak и Basis Virtual Security используйте то же значение, что и для
auth.auth_server. -
Для Avanpost допускается использование URL, отличающегося от указанного в
auth.auth_server.
-
-
Тип подключения,
keycloakилиavanpostсоответственно. -
Название REALM.
-
Идентификатор клиента в REALM.
Пример заполнения для Keycloak:
auth: enabled: true auth_server: https://192.168.1.1:8080 admin_server: https://192.168.1.1:8080 auth_type: keycloak realm: vision client_id: vision-core-client client_secret: vault.auth.client_secret -
-
Создайте копию файла хранилища секретов:
cp /opt/skala-r/vision/.secrets_vault \ /opt/skala-r/vision/.secrets_vault.bak -
Откройте хранилище секретов для редактирования:
ansible-vault edit /opt/skala-r/vision/.secrets_vault -
Присвойте ключу
vault.auth.client_secretзначение секрета клиента, полученное в IAM. -
Сохраните изменения и запустите скрипт:
/opt/skala-r/vision/tools/update_server_configs.sh -
Проверьте статус службы
vision_core:systemctl status vision_core.service -
Убедитесь, что в логе нет ошибок после перезапуска:
journalctl -fu vision_core -n 20 -
В браузере перейдите в веб-интерфейс Визиона и убедитесь, что запрошена авторизация через IAM.