CommuniGate Pro
Версия 6.4
 

Модуль Веб Интерфейса Пользователя

Сервер CommuniGate Pro обеспечивает Веб (HTTP/HTML) доступ для Пользователей. Компонент WebUser работает через модуль HTTP и позволяет пользователям читать и создавать сообщения, выполнять другие различные операции с Папками и другими данными Пользователя использую любой Веб браузер.

Даже если Пользователь предпочитает работать через клиент по протоколам POP или IMAP, он может использовать Веб Интерфейс Пользователя для получения доступа к возможностям, не предоставляемым некоторыми почтовыми программами. Например, Веб Интерфейс Пользователя может использоваться для задания Подписок и Списка Прав Доступа для Папок Пользователя - эта возможность до сих пор не поддерживается некоторыми IMAP клиентами. Веб Интерфейс Пользователя может использоваться для создания Псевдонимов Папок, использования Внешнего Опроса для скачивание писем из внешних POP и IMAP источников, создания Правил пользователя и т.д.

В этом разделе описывается Веб Интерфейс Пользователя с точки зрения администратора. Более детальное описание возможностей Веб Интерфейса Пользователя с точки зрения пользователя смотрите в разделе Веб Почта.




Веб Интерфейс Пользователя для системы со многими Доменами

Когда пользователь указывает своему браузеру соединиться с Сервером CommuniGate Pro через порт для Веб Интерфейса Пользователя, отображается страница Входа на сервер. Порт для Веб Интерфейса Пользователя задаётся в настройках HTTP модуля Пользователя; по умолчанию используется незащищённый порт номер 8100 и безопасный (на некоторых платформах не устанавливаемый по умолчанию) порт номер 9100.

После того, как показана страница Входа, пользователи могут ввести на ней их имя и пароль и начать Сессию работы через Веб Интерфейс Пользователя.

WebUser модуль осуществляет проверку имени домена из URL и показывает страницу Входа для этого домена. Если сервер CommuniGate Pro provider.com имеет дополнительный домен client.com, то при использовании URL <http://provider.com:port> будет показана страница Входа для домена provider.com, а при использовании URL <http://client.com:port> будет показана страница входа для домена client.com, даже если домен client.com не имеет назначенного IP адреса.

Когда WebUser модуль получает имя домена из URL, он прогоняет его через записи Маршрутизатора Уровня Домена. Так, если в таблице Маршрутизатора есть запись:

www.client.com = client.com
то URL <http://www.client.com:port> будет обрабатываться как URL <http://client.com:port> и также приведёт к выводу страницы Входа для домена client.com.

Если в URL содержится имя домена, которое не обслуживается сервером CommuniGate Pro, то показывается страница с сообщением об ошибке. Обычно это свидетельствует об ошибке в настройке Сервера: указанный домен имеет A-запись в DNS, указывающую на ваш сервер (так как в противном случае сервер не получил бы этот запрос), но его имя не направляется ни на какой из доменов, обслуживаемых вашим севером. Вы должны или создать домен с таким именем в CommuniGate Pro, или перенаправить этот домен на один из уже существующих доменов CommuniGate Pro.

Если в URL содержится не имя домена, а IP адрес, то модуль WebUser пытается найти домен CommuniGate Pro, которому назначен такой адрес. Если такой домен не найден, то откроется страница Входа для главного домена.

Пользователь может зайти на сервер как пользователь из любого домена, если он укажет своё полное имя: если, например, открыта страница Входа главного домена Сервера (<http://provider.com:port>), а Имя Пользователя в соответствующем поле введено как username@client.com, то на сервер войдет пользователь username из домена client.com (если был также указан правильный пароль).

Если в домене существуют Списки рассылки, то его страница Входа содержит ссылку на страницы с архивами Списков Рассылки.

Если в Домене включена Свободная Регистрация пользователей, то на странице Входа домена также показывается ссылка на страницу Регистрации.

Если Домен имеет пользовательский Сертификат Безопасности, то показывается ссылка на Сертификат. Если пользователь щелкнет по этой ссылке, то он сможет установить в своём браузере Сертификат Домена как доверенный сертификат.


Доступ Пользователей и Сессии Веб Интерфейса Пользователя

Некоторые протоколы (такие как IMAP и POP) являются сессионно-ориентированными протоколами: клиентское приложение устанавливает соединение с сервером, предоставляет данные, необходимые для аутентификации пользователя, обрабатывает данные пользователя (папки, настройки и т.п.) и затем закрывает соединение. HTTP протокол не является сессионно-ориентированным: Веб-браузер устанавливает соединение, отправляет один или несколько запросов, получает данные и закрывает соединение.

Чтобы обеспечить такую же функциональность, как и при проведении полноценной сессии, в модуле WebUser реализован так называемый сервер приложений: когда пользователь аутентифицирован через страницу Входа, создаётся виртуальная сессия. Виртуальная сессия фактически является некоторой внутренней структурой данных на сервере, хранящей информацию о пользователе, его открытых папках и других сессионно-ориентированных данных, но такая структура не привязана к какому-либо определённому сетевому соединению. Когда пользователь работает с сервером через браузер, модуль WebUser направляет запросы браузера в одну из уже открытых виртуальных сессий.

Для того, чтобы направлять запросы правильным образом, модуль WebUser создаёт идентификатор сессии (ID сессии) для каждой создаваемой виртуальной сессии и заставляет браузер пользователя включать идентификатор сессии в каждый отправляемый им запрос.

Для того, чтобы избежать "захвата" WebUser сессий, модуль WebUser запоминает сетевой (IP) адрес, с которого был получен запрос на вход и направляет в сессию данные только если дальнейшие запросы получены с этого же адреса.

Обратите внимание: Иногда, если пользователь соединяется через прокси сервер, запросы пользователя приходят на сервер с различных IP адресов (если прокси сервер использует несколько сетевых адресов). В этом случае пользователь должен выключить опцию контроля адреса на странице настроек Веб Интерфейс Пользователя. Обычно пользователи больших провайдеров (таких, как AOL, WebTV) выходят в Интернет через прокси сервера провайдера, так что они должны выключать опцию контроля адреса.
Или же добавьте диапазон IP Адресов прокси в список Адреса NAT Серверов.
Все адреса IP, принадлежащие диапазонам из этого списка, считаются одинаковыми.

Для того, чтобы избежать "захвата" сессий WebUser, модуль WebUser может использовать HTTP "cookies". Когда опция Защита при помощи Cookies включена, Сервер создаёт некую случайную "cookie" строку и отправляет её браузеру пользователя при установлении сессии. Затем, когда браузер получить доступ к любым страницам с данными в течение этой сессии, он всегда отсылает эту строку обратно на Сервер. Сервер разрешает доступ только если им получена правильная строка "cookie".

Обратите внимание: Некоторые браузеры не поддерживают "cookies" вообще или поддержка "cookies" в них может быть выключена. Перед тем, как включать опцию Защита при помощи Cookies, Пользователь должен проверить настройки браузера.

Обычно, пользователь начинает свою WebUser сессию введя Имя Пользователя и пароль на страница Входа через Веб Интерфейс Пользователя. Это "незащищенный" метод входа, и он является безопасным только если доступ к странице Входа осуществляется через защищенное (SSL/TLS) соединение (через URL вида https://).

В качестве альтернативы может использоваться URL /login/ на вашем Сервере. Сервер потребует проведения Аутентификации на уровне HTTP, и браузер либо откроет диалоговое окно Аутентификации, либо, если установлено безопасное SSL/TLS соединение, отправит Сертификат Пользователя.


Автоматический Вход и Единый механизм входа пользователей

При создании сложного сайта, предлагающего целый набор Веб Услуг ("Портала"), может потребоваться создание сессии WebUser без перенаправления пользователя на страницу Входа. Для этой цели может быть использован следующих механизм.

Автоматизация Входа
направьте браузер по ссылке
http://your.server.domain[:port]/?username=имяАккаунта&password=пароль
HTTP Аутентификация
направьте браузер по ссылке
http://your.server.domain[:port]/login/
Если браузер автоматически входит на сервер через этот раздел, то диалог Входа не будет показываться пользователю.
Аутентификация По Сертификату
направьте браузер по ссылке
http://your.server.domain[:port]/login/
Если Домен поддерживает Сертификаты Клиентов и на компьютере пользователя установлен надлежащий сертификат, то браузер автоматически входит на сервер через эту область, и диалог Входа не будет показываться пользователю.
Создание Сессии через CLI
для создания сессии WebUser используйте Сетевой Интерфейс Командной Строки CLI/API, затем направьте браузер по ссылке
http://your.server.domain[:port]/Session/sessionID/Hello.wssp
Автоматизация Входа с использованием идентификатора другой Сессии
направьте браузер по ссылке
http://your.server.domain[:port]/?username=имяАккаунта&password=идентификаторСессии&SessionIDMethod=yes
Этот механизм ничем не отличается от описанного ранее механизма Автоматизации Входа, за исключением того, что вместо незащищённого метода Аутентификации будет использоваться метод Аутентификации через SessionID. Параметр sessionID является идентификатором любой другой существующей WebUser или XIMSS сессии для того же пользователя имяАккаунта.

Установки Веб Интерфейса Пользователя

Для того, чтобы настроить модуль Веб Интерфейса Пользователя, с помощью любого браузера соединитесь с Сервером CommuniGate Pro и откройте страницу Доступ в разделе Установки, и затем страницу Сессии.

Сессии Пользователей
Уровень Журнала: Ограничение:
Тайм-аут по Неактивности: Ограничение Времени Сессии:

 

Безопасные типы ссылок
Ограничение
Используйте эти настройки для задания максимального числа одновременно обслуживаемых сессий Веб Интерфейса Пользователя.
Обратите внимание: помните, что соединения, устанавливаемые браузером (HTTP) это не то же самое, что сессии WebUser. Обычно достаточно поддерживать 100 одновременных HTTP каналов для обслуживания 5000 Сессий.
Уровень Журнала
Используйте эту настройку, чтобы указать, какую информацию модуль Веб Интерфейса Пользователя должен сохранять в Журнале работы Сервера. Обычно используется уровень Основные (отчёты о передаче сообщений).
Записи, помещённые модулем Веб Интерфейса Пользователя в Журнал работы Сервера, имеют пометку WEB.
Тайм-аут по Неактивности
Используйте эту настройку для задания максимального интервала времени между обращениями клиента (браузера) к определённой Сессии WebUser. С помощью этой настройки можно производить отсоединение тех пользователей, которые не завершили свою сессию корректно или тех, кто просто закрыл свой браузер или перешёл на другой Веб сайт. Не указывайте здесь слишком маленькое значение, так как в этом случае ваши пользователи могут быть отключены от сервера во время написания письма.
Ограничение Времени Сессии
Используйте эту настройку для задания максимальной продолжительности WebUser сессии. Это ограничение проверяется, когда браузер устанавливает соединение и получает страницы с данными в течение сессии, так что нет смысла задавать тут значения меньшие, чем в Тайм-ауте по Неактивности.
Безопасные типы ссылок
При показе сообщений в формате HTML в Веб Интерфейсе Пользователя и клиентах по протоколу XIMSS сервер блокирует обработку браузерами ссылок с неизвестными типами для предотвращения утечки данных сессии. В этой настройке можно указать дополнительные типы ссылок, которые могут считаться безопасными.

Откройте установки Модуля HTTPU и найдите раздел Доп. протоколов:

Доп. протоколы
 Доступ
WebUser:

Установка Доступ определяет, клиенты из каких сетей могут создавать сессии WebUser.


Настройка Проверки Орфографии

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

Появится страница Орфография:

Включено Язык Уровень Журнала Имя Программы и Параметры 
Преобразовать в:
Преобразовать в:
Преобразовать в:
Преобразовать в:

Для настройки проверки орфографии, укажите язык, который программа должна обрабатывать, путь к программе и кодировку, в которой программа обрабатывает данные. Для внутреннего представления данных в Сервере используется кодировка UTF-8, так что, если перекодировки не требуется, устанавливайте значение UTF-8.

Используйте настройку Уровень Журнала для указания, какую информацию Модуль проверки орфографии должен сохранять в Журнале работы Сервера.

Записи, помещённые модулем проверки орфографии в Журнал работы Сервера, имеют пометку SPELLER.

Вы можете установить (или сбросить) флажок для включения (выключения) использования определённой программы проверки орфографии, не удаляя её из списка программ.

Для того, чтобы удалить программу проверки орфографии, введите пустую строку в поле Язык нажмите кнопку Модифицировать.

Программы проверки орфографии должны поддерживать работу через интерфейс "pipe", используемый в популярных программах Ispell и aspell:

  • Текст отправляется в программу построчно, и первый символ строки должен быть пробелом;
  • Для каждой входной строки программа возвращает ноль, одну, или несколько непустых строк ответа и пустую строку в конце.
  • Обрабатываются только те строки ответа, которые начинаются с символа амперсанд (&) или решётка (#).
  • Строка, начинающаяся с символа решётка, имеет следующий формат:
    # original offset
    где original - это слово с опечаткой, а offset - это позиция этого слова во входной строке.
  • Строка, начинающаяся с символа амперсанд, имеет следующий формат:
    & original count offset:suggestion1, suggestion2, ...
    где original - это слово с опечаткой, offset - позиция этого слова во входной строке, count - число вариантов на замену, suggestionN - вариант на замену.

Обратите внимание: путь, имя и параметры программы должны быть прописаны в Манифестe Дочерних Процессов.


Веб Интерфейс Пользователя к Спискам Рассылки

На странице Входа в Домен, модуль WebUser показывает ссылку на Списки Рассылки.

Страница со Списками Рассылки содержит все списки рассылки этого домена, для которых Права Просмотра даны всем. Каждое имя является ссылкой, пройдя по которой можно открыть страницу со списком сообщений в этом Списке Рассылки. Так как архивы Списков Рассылки хранятся в папках, работа в Веб Интерфейсе Пользователя со списками рассылки очень похожа на работу в Веб Интерфейсе Пользователя при Просмотре Папок.

При работе со списками рассылки через Веб Интерфейс Пользователя не требуется никакой аутентификации и не создаётся виртуальная сессия; каждый запрос браузера обрабатывается независимо.


Свободная Регистрация

Если в домене опция Свободной Регистрации включена, то на странице Входа имеется ссылка на страницу Регистрации. Это страница позволяет новому пользователю ввести имя, пароль, "реальное имя" и создать нового пользователя на сервере.

Когда создаётся новый пользователь, его опции и установки берутся из Шаблона Домена.


Руководство CommuniGate Pro. Copyright © 2020-2023, АО СталкерСофт