Настройка портала абонента
В данном разделе описаны настройки соединения с БД "Портала абонента", учетных записей "Портала абонента", а также подсистемы, отвечающей за автоматическое заведение абонентов в "Портале абонента".
Понятия, определения
- Портал абонента — раздел на веб-ресурсах Оператора связи, содержащий информацию об Абоненте, подключенных им Услугах связи, а также дающий возможность дистанционного управления Услугами связи и информационного обслуживания.
- MySQL — система управления базами данных.
- БД — база данных.
Описание
Приложение "Портал абонента" системы ECSS-10 позволяет абонентам системы самостоятельно управлять услугами, просматривать информацию по совершенным вызовам, активным конференциям, а также настраивать свои собственные IVR-скрипты для входящих вызовов.
Описание работы приложения приведено в разделе "Портал абонента".
Установка Портала абонента
Портал абонента не требует отдельной установки и доступен в составе пакета ecss-web-conf.
При инсталляции пакета ecss-node будет задан вопрос об IP-адресе, где будет установлен портал:
ecss-dns-env: [Subscriber Portal] Введите адрес: ([Subscriber Portal] Enter ip:)
Если ecss-web-conf и система ECSS-10 устанавливаются на одном хосте, то можно указать адрес 127.0.0.1;
По умолчанию портал доступен по адресу https://<адрес ECSS>/wcf_subscriber_portal/<DOMAIN>/
Настройка соединения с MySQL БД "Портала абонента" через CLI
Для работы портала абонента необходимо настроить соединение с базой данных MySQL портала абонента ecss_subscribers. Для этого необходимо в консоли cocon ECSS-10 ввести:
domain/<DOMAIN>/subscriber-portal/properties/set connection <Host>[:<Port>] <Login> <Password> <Database>
либо
cluster/storage/<CLUSTER>/subscriber-portal/properties/set connection <Host>[:<Port>] <Login> <Password> <Database>
где
- <Host> — имя или IP-адрес MySQL-сервера (по умолчанию — 127.0.0.1);
- <Port> — номер порта MySQL-сервера (по умолчанию — 3306);
- <Login> — логин для подключения к MySQL-сервера (по умолчанию — subscribers);
- <Password> — пароль для подключения к MySQL-серверу (по умолчанию — subscribers);
- <Database> — имя базы данных (по умолчанию — ecss_subscribers).
Например:
/domain/biysk.local/subscriber-portal/properties/set connection 192.168.1.71 subscribers subscribers ecss_subscribers Property "connection" successfully changed from: to Host: 192.168.1.71; Database: ecss_subscribers; Login: subscribers; Password: subscribers.
После этого можно проверить соединение с базой MySQL:
domain/<DOMAIN>/subscriber-portal/check-connection
При успешном соединении с базой MySQL выведется соответствующее сообщение:
/domain/biysk.local/subscriber-portal/check-connection Connection successful
Настройка служебного пользователя для связи с Mediator
Для лучшей безопасности, рекомендовано использовать отдельного пользователя, который имеет права только на Портал абонента.
Для этого необходимо в "Управление пользователями" добавить пользователя с разрешениями ecss-subscriber-portal и ecss-<DOMAIN>-domain-subscriber-portal
Пример:
Данный пользователь будет иметь доступ только в CoCon. Доступ в Веб будет закрыт.
Далее требуется открыть файл /etc/ecss/ecss-web-conf/settings_local.py и изменить значения LOGIN_HTTP_TERMINAL, PASSWORD_HTTP_TERMINAL на те, которые были присвоены пользователю, предназначенного для Портала абонента.
По дефолту файл выглядит следующим образом
# global const for web_conf. # coding=utf-8 DEBUG = False SESSION_COOKIE_NAME = "wcf_sid" SERVER_URL = 'localhost' SERVER_PORT = '9999' SERVER_WCF = "http://localhost:8000/" PCAP_REPLY_IP = '192.168.26.203' LOGIN_HTTP_TERMINAL = 'admin' PASSWORD_HTTP_TERMINAL = 'password' URL_HTTP_TERMINAL = '127.0.0.1:9999' WEBSOCKET_PORT = 9014 AUTO_LOGOUT_TIMEOUT = 9000 CC_PORT = '8086' CC_DOMAIN = 'test.domain' OPERATOR = ['oper_name1', 'oper_name2'] PING_TIME = 50000 # ms = 50s # PING_TIME=3000000 #ms = 3000s ALARM_REFRESH_TIME = 10000 # ms = 10s HOSTS_MONITOR_TIME = 2000 # ms = 2s CALL_MONITOR_TIME = 2000 # ms = 2s SSL_CERT = '/etc/ecss/ssl/ecss10.crt' SSL_KEY = '/etc/ecss/ssl/ecss10.key' SSL_DOMAIN = 'localhost' ALLOW_DOMAINS = 'true' # 'true' or 'false' COMMA_SEPARATOR = ";" REPORT_LIMIT = "5000" USE_HTTPS = True DO_XSD_VALIDATION = True LOCALE = 'rus' # 'eng', 'rus' THEME = 'classic' # 'classic', 'grey' DEFAULT_MODE = 'wcf' # wcf, simple BRAND = "ECSS-10" #"ECSS-10" # CSS-16 BRAND_PATH = "../ecss-web-conf-brand" # local path
Настройка соединения с MySQL БД "Портала абонента" через web-конфигуратор
Приложение web-конфигуратора "Портал абонента" ("Subscriber portal") предназначено для настройки доступа к порталу абонента, синхронизации абонентов ECSS-10 c порталом абонентов.
Рисунок 1 — Интерфейс приложения "Портал абонента" ("Subscriber portal")
Для синхронизации данных абонентов ECSS-10 c порталом абонентов нажмите кнопку "Синхронизировать алиасы с порталом абонентов" ("Sync aliases to subscriber portal").
В диалоговом окне укажите пароль, который будет задан для всех вновь созданных учетных записей абонентов, или оставьте поле пустым, тогда система автоматически сгенерирует случайные пароли.
Нажмите кнопку "ОК".
Далее в свойствах алиасов из выбранного домена появятся параметры учетной записи subscriber_portal\login subscriber_portal\password для входа в "Портал абонента".
Для установки или проверки соединения с базой данных портала абонента нажмите кнопку "Проверить соединение" ("Check connection").
Информация будет отображена во всплывающем окне.
- C(авто) (C(auto)) — если флаг установлен, при создании абонента в системе ECSS-10 будет автоматически создаваться учетная запись на портале абонента;
- У(авто) (D(auto)) — если флаг установлен, при удалении абонента из системы ECSS-10 будет автоматически удаляться учетная запись с портала абонента;
- Параметры соединения (Connection params) — параметры соединения с базой данных портала абонента:
- Хост (Host) — имя или IP-адрес, номер порта MySQL-сервер;
- База данных (Database) — имя базы данных. По умолчанию — ecss_subscribers;
- Пользователь (User) — имя пользователя:пароль. По умолчанию — subscribers:subscribers.
Для создания нового профиля настроек заполните следующие поля и нажмите кнопку "Сохранить" ("Save"):
- Домен (Domain) — имя виртуальной АТС, при выборе "*" параметры будут установлены для всех виртуальных АТС по умолчанию;
- Создавать аккаунт автоматически (Auto create account) — если флаг установлен, при создании абонента в системе ECSS-10 будет автоматически создаваться учетная запись на портале абонента;
- Удалять аккаунт автоматически (Auto delete account) — если флаг установлен, при удалении абонента из системы ECSS-10 будет автоматически удаляться учетная запись с портала абонента;
- Включить LDAP/AD авторизацию (LDAP/AD authentication enabled) — при использовании LDAP/Active Directory для авторизации в портале;
- Идентификатор LDAP/AD сервера (LDAP/AD server id) — уникальное имя сервера в пределах домена.
Параметры соединения:
- имя или IP-адрес MySQL-сервера (Mysql-server hostname);
- номер порта MySQL-сервера (Mysql-server port number);
- имя базы данных (Database name). По умолчанию — ecss_subscribers;
- имя пользователя MySQL (Database username). По умолчанию — subscribers;
- пароль пользователя MySQL (Database password). По умолчанию — subscribers.
Для сохранения конфигурации нажмите кнопку "Сохранить" ("Save").
Для удаления конфигурации нажмите кнопку "Удалить конфигурацию" ("Remove config").
Настройка учетных записей "Портала абонента"
Для настройки учетных записей "Портала абонента" используется интерфейс командной строки или web-конфигуратор.
Автоматическое создание/удаление пары логин/пароль для портала абонента
Для автоматического создания учетной записи (логина и пароля) "Портала абонента" в системе, при создании абонента, выполните следующую команду:
domain/<DOMAIN>/subscriber-portal/properties/set auto_create_account true
Для автоматического удаления учетной записи "Портала абонента" из системы, при удалении абонента, выполните следующую команду:
domain/<DOMAIN>/subscriber-portal/properties/set auto_delete_account true
Установка и просмотр логина и пароля для абонентов портала
Для создания/изменения имя пользователя учетной записи "Портала абонента" через интерфейс командной строки cocon используется команда:
/domain/<DOMAIN>/alias/set <NUMBER> <GROUP_NAME> <INTERFACE> subscriber_portal\login <LOGIN>
Для создания/изменения пароля для доступа к "Порталу абонента" через интерфейс командной строки cocon используется команда:
/domain/<DOMAIN>/alias/set <NUMBER> <GROUP_NAME> <INTERFACE> subscriber_portal\password <PASSWORD>
Для просмотра имя пользователя и пароля учетной записи "Портала абонента" используется команда:
/domain/<DOMAIN>/alias/info <NUMBER>
где
- <DOMAIN> — имя виртуальной АТС;
- <NUMBER> — абонентский номер;
- <GROUP_NAME> — имя группы интерфейсов, логическая привязка интерфейсов в определенной виртуальной АТС;
- <INTERFACE> — имя интерфейса;
- <LOGIN> — логин для доступа к Порталу абонента;
- <PASSWORD> — пароль для доступа к Порталу абонента.
Например:
Установим для абонента с номером 240101 логин портала абонента "240101" и пароль "ssw_101":
admin@mycelium1@ecss1:/$ domain/biysk.local/alias/set 240101 loc.gr 240101@biysk.local subscriber_portal\login 240101 There are aliases within domain biysk.local affected by settings property subscriber_portal\login: 240101 <-> 062743c4240eae38 Legend: a: Setup alias address i: Setup alias inteface !: Setup broken. Alias allready exists *: Setup broken. Alias not exists L: Setup broken. No free subscriber licences. x: Setup broken. Unexpected error <empty>: Successfull setup [exec at: 11.02.2020 09:45:43, exec time: 73ms, nodes: ds1@ecss1] admin@mycelium1@ecss1:/$ domain/biysk.local/alias/set 240101 loc.gr 240101@biysk.local subscriber_portal\password ssw_101 There are aliases within domain biysk.local affected by settings property subscriber_portal\password: 240101 <-> 062743c4240eae38 Legend: a: Setup alias address i: Setup alias inteface !: Setup broken. Alias allready exists *: Setup broken. Alias not exists L: Setup broken. No free subscriber licences. x: Setup broken. Unexpected error <empty>: Successfull setup [exec at: 11.02.2020 09:45:48, exec time: 81ms, nodes: ds1@ecss1
Проверим установленные параметры:
admin@mycelium1@ecss1:/$ domain/biysk.local/alias/info 240101 Aliases in domain biysk.local ┌───────┬──────────────────┬─┬─┬──────────────────────────┬────────────────────────────────────┐ │Address│ Iface │A│W│ Property │ Value │ ├───────┼──────────────────┼─┼─┼──────────────────────────┼────────────────────────────────────┤ │240101 │240101@biysk.local│ │p│access_group │all │ ... │ │ │ │ │subscriber_portal\login │"240101" │ │ │ │ │ │subscriber_portal\password│ssw_101 │ ... └───────┴──────────────────┴─┴─┴──────────────────────────┴────────────────────────────────────┘ ... [exec at: 11.02.2020 09:46:31, exec time: 136ms, nodes: ds1@ecss1
Настройка и изменение параметров учетной записи "Портала абонента" через web-конфигуратор выполняется в приложении "Карточка абонента" ("Subsciber card"), во вкладке "Другие" ("Other").
Для добавления логина/пароля нажмите кнопку "Добавить" ("Add"), в поле "Имя" ("Name") введите название параметра:
- subscriber_portal\login — логин;
- subscriber_portal\password — пароль.
В поле "Значение" ("Value") установите новое значение параметра.
Для сохранения настроек нажмите кнопку "Сохранить" ("Save").
Настройка имени абонента, отображаемое в "Портале абонента"
Имя абонента, отображаемое в карточке "Портал абонента", может быть настроено следующим образом:
- через интерфейс командной строки CLI:
/domain/<DOMAIN>/alias/set <NUMBER> <GROUP_NAME> <INTERFACE> displayName <NAME>
где
<DOMAIN> — имя виртуальной АТС;
<NUMBER> — абонентский номер;
<GROUP_NAME> — имя группы интерфейсов, логическая привязка интерфейсов в определенной виртуальной АТС;
<INTERFACE> — имя интерфейса;
<NAME> — отображаемое имя.
- через web-конфигуратор:
В приложении "Карточка абонента" ("Subscriber card"), во вкладке "Основные" ("General"), параметр "отображаемое имя" ("display name"). После изменения значения нужно нажать кнопку "Сохранить" ("Save"). - в самом "Портале абонента" пользователь может сам изменить отображаемое имя: "Карточка абонента" → "Другие настройки" → "Имя абонента".
Аутентификация с использованием LDAP (Active Directory)
Настройка через CLI
Команды CLI для работы с LDAP/AD приведены в разделе "/domain/<DOMAIN>/ldap — команды управления LDAP и AD авторизацией на уровне домена"
Для того чтобы аутентификация пользователей конкретной инсталляции портала абонента осуществлялась через LDAP (Active Directory), а не через собственную базу портала абонента, необходимо ввести в консоли cocon следующее:
В домене сделать настройки подключения к LDAP/AD-серверу:
domain/<DOMAIN>/declare <ID> <TYPE> <HOST> <PORT> <DC_OR_DOMAIN>
Параметры:
- ID — уникальный в рамках домена идентификатор сервиса (используется в других подсистемах для ссылки к настройкам LDAP/AD);
- TYPE — тип сервера (LDAP или AD); HOST — IP или хост, где располагается LDAP/AD сервер;
- PORT — порт, на котором располагается LDAP/AD сервер. В случае если значение поля равно default — будет использоваться 389(636) порт для НЕ SSL (SSL) соединения;
- DC_OR_DOMAIN — в случае, если <TYPE> = LDAP — базовый DN; если <TYPE> = AD — корневой домен active directory
Пример:
domain/biysk.local/ldap/declare maas.eltex.loc ldap ldap.maas.eltex.loc 3899 dc=eltex,dc=loc LDAP server maas.eltex.loc successfully configured
при необходимости , выполнить модификацию параметров следующей командой (для примера параметр login-attribute):
domain/biysk.local/ldap/set maas.eltex.loc login-attribute cn LDAP/AD server' maas.eltex.loc property "login-attribute" successfully updated
А так же активировать авторизацию через LDAP
domain/<DOMAIN>/subscriber-portal/properties/set ldap_authentication_enabled true
domain/<DOMAIN>/subscriber-portal/properties/set ldap_server_id maas.eltex.loc
Где
<DOMAIN> — имя виртуальной АТС;
admin@mycelium1@ecss1:/$ domain/biysk.local/subscriber-portal/properties/set ldap_authentication_enabled true Property "ldap_authentication_enabled" successfully changed from: false to true. domain/test_domain/subscriber-portal/properties/set ldap_server_id maas.eltex.loc Property "ldap_server_id" successfully changed from: to maas.eltex.loc.
Задать логин от портала абонента в настройках alias
domain/<DOMAIN>/alias/set <address range> <iface group> <name range> subscriber_portal\login <login>
Где
- <DOMAIN> — имя виртуальной АТС;
- <address range> — диапазон адресов (номеров);
- <iface group> — группа интерфейсов;
- <name range> — диапазон имен интерфейсов;
- <login> — логин от портала абонента, используемый в LDAP
admin@mycelium1@ecss1:/$ domain/biysk.local/alias/set 240464 loc.gr 240464@biysk.local subscriber_portal\login ldap_464 There are aliases within domain biysk.local affected by settings property subscriber_portal\login: 240464 <-> 062743c3d0fdfe36 Legend: a: Setup alias address i: Setup alias inteface !: Setup broken. Alias allready exists *: Setup broken. Alias not exists L: Setup broken. No free subscriber licences. x: Setup broken. Unexpected error <empty>: Successfull setup [exec at: 11.02.2020 13:17:45, exec time: 75ms, nodes: ds1@ecss1]
Настройка аутентификации с использованием LDAP с помощью web-конфигуратора
Для настройки нужно сначала в приложении Домены ("Domains") настроить подключение к LDAP.
Открыть "Домены -> выбрать домен -> Свойства домена -> LDAP сервера"
Добавить или отредактировать подключение к LDAP серверу:
Настройки:
В приложении Портал абонента ("Subscriber portal") включить LDAP/AD авторизацию:
На сервере LDAP/AD сделать учетную запись абонента. Проверить с данной учетной записью вход на портал абонента.
После выполнения настроек приложение "Портал абонента" готово для использования. См. раздел "Портал абонента".