next up previous contents
Next: Параметры конфигурации. Up: Общая архитектура организации расширяемой Previous: Сетевая архитектура АСУ БТА

Регулирование сетевого доступа к главной управляющей прорамме bta_control.

Любая система сетевого доступа к объекту управления должна включать в себя средства контроля и ограничения этого доступа для предупреждения несанкционированного вмешательства в работу системы управления.

В системе управления БТА средства контроля сетевого доступа минимальны и заключаются в записи в стандартный протокол сообщений о каждом новом компьютере, с которого подаются команды на управление. Для того, чтобы это было возможно в формате команды предусмотрено поле IP-адреса источника управления. Программа bta_control_net, с компьютера наблюдателя, подставляет в это поле IP-адрес этого компьютера.

Ограничение доступа в системе управления БТА реализовано двумя взаимодополняющими способами:

1.
Ограничение по IP-адресу компьютера наблюдателя. Для этого устанавливается диапазон IP-адресов которому должен принадлежать компьютер, посылающий команду. Для этого командами через программный интерфейс устанавливаются и распространяются обратно через блок общей памяти два параметра - адрес подсети и маска подсети. Принцип контроля следующий: IP-адрес источника маскируется установленной маской подсети (побитовая операция И). Результат должен совпадать с установленным адресом подсети. Конкретные значения этих параметров устанавливаются при помощи меню в интерфейсе оператора. Сейчас это выбор из пяти, нижеописанных, вариантов:
маска               подсеть         комментарий
0.0.0.0             0.0.0.0         вся сеть без ограничений
255.255.192.0       192.168.0.0     вся сеть САО
255.255.255.0       192.168.3.0     сеть БТА
255.255.255.248     192.168.3.56    сеть АСУ
255.255.255.255      -- // --       без сети
Проверку подаваемых команд производит программа bta_control_net. "Бракованные" команды в главную управляющую программу bta_control она не пропускает.
2.
Получение пользователями привилегий доступа по паролям. Для этого в системе управления определены пять уровней доступа - привилегий. Принцип - чем больше номер, тем больше привилегий: Каждому уровню соответствует установленный пароль. Каждый пароль шифруется. Полученная последовательность байтов разделяется на две части. Одна часть называется код доступа, а другая - ключ доступа. Коды доступа для всех уровней распространяются через программный интерфейс и известны всем программам - клиентам. Ключи доступа скрыты внутри управляющей программы.

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

Из эти общих правил сейчас сделано два исключения:

1.
Если команда с правильным ключем уровня доступа 5 принята от компьютера наблюдателя (т.е. не от (acs1 и acs5), то ей автоматически присваивается уровень 4. Это сделано для того, чтобы удаленно нельзя было воспользоваться привилегиями главного оператора. Например, класть телескоп в "горизонт" или двигать купол.
2.
Для компьтеров АСУ (acs1 и acs5) неправильный ключ доступа не означает ошибки. Привилегия назначается по типу канала из которого принята эта команда. Это сделано для того, чтобы облегчить работу операторов, не заставляя их постоянно вводить пароли на своем рабочем месте.