Web-сервисы: Сервис для авторизации
Введение
Начиная с релиза 2009.2.16 ПК «Мастер-Web» появилась возможность защиты веб-сервисов распределенного поиска от несанкционированного использования посредством сервиса авторизации WsAuthorization.
Установка
Для установки Сервиса авторизации нужно создать директорию Authorization в каталоге c:/inetpub/wwwroot/
(корневом каталоге IIS) и выложить туда распакованные файлы из архива mw-ws-authorization-9.2.x.xxxxx.zip
.
В управлении IIS необходимо создать виртуальный каталог для папки Authorization.
Создание виртуального каталога
По умолчанию корневым каталогом IIS является C:/Inetpub/wwwroot
. Для создания виртуального каталога для приложения находящегося в этом каталоге нужно выполнить следующие действия:
1 Зайти в Пуск (Start) → Настройки (Settings) → Панель управления (Control Panel) → Администрирование (Administrative Tools)
2 Диспетчер служб IIS
3 В открывшемся дереве каталогов выбрать Web Sites – Default Web Site. В открывшемся списке найти папку, для которой нужно создать виртуальный каталог, кликнуть по ней правой кнопкой мыши и выбрать Преобразовать в приложение
4 В открывшемся окне нужно нажать кнопку ОК
Подключение к базе данных ПК «Мастер-Тур»
В файле web.config
, расположенном в папке Authorization пропишите необходимые параметры подключения (красным цветом выделены значения, которые необходимо ввести).
Строка подключения к базе данных ПК «Мастер-Тур»:
<add key = "connectionString" value = "Data Source=ip-адрес сервера базы данных ПК «Мастер-Тур»;Initial Catalog=название базы данных ПК «Мастер-Тур;User ID=логин пользователя ПК «Мастер-Тур»;Password=пароль пользователя ПК «Мастер-Тур»"/>
Настройка
После установки сервис авторизации доступен по адресу
http://ip-адрес сервера Мастер-Веб/Authorization/WsAuthorization.asmx
.
Настройка базы данных
- Для защиты веб-сервисов от несанкционированного использования нужно выполнить по базе данных ПК «Мастер-Тур» скрипт:
insert into [SystemSettings] (SS_ParmName,SS_ParmValue) values ('SYSCheckSecurityToken','1')
- Отключить использование сервиса авторизации можно скриптом:
update [SystemSettings] set [SS_ParmValue] = '0' where [SS_ParmName] in ('SYSCheckSecurityToken')
- Начиная с ПК «Мастер-Web» 2009.2.17.1 (пакет обновлений № 1 для релиза ПК «Мастер-Web» 2009.2.17) использование сервиса авторизации по умолчанию не требуется.
Настройки в файле WEB.CONFIG
В конфигурационном файле Web.config сервиса авторизации нужно указать следующие настройки:
- Строка подключения к базе данных ПК «Мастер-Тур» в элементе <appSettings>, например:
<add key="connectionString" value="Data Source=server; Initial Catalog=database; User Id=root; Password=toor; Application Name=ds"/>
- Настройки авторизации в элементе <appSettings>:
<add key="wsAuthLogin" value="qaz"/> <add key="wsAuthPassowrd" value="123"/> <add key="tokenLifeTime" value="5"/> <add key="usePasswordHashing" value="false"/>
- wsAuthLogin — логин доступа к WsAuthorization;
- wsAuthPassowrd — пароль доступа к WsAuthorization;
- tokenLifeTime — время до повторной авторизационной проверки в минутах;
- usePasswordHashing — включение хеширования пароля.
- Для корректной работы сервиса WsAuthorization на релизах ПК «Мастер-Web» 2009.2.15 и выше нужно включить настройку customErrors в элементе <system.web>:
<system.web> <customErrors mode="On"/> … </system.web>
Ссылка на тестовый сервис
С работой тестового сервиса авторизации вы можете ознакомиться на нашем демо-сервере.
Работа в системе
Метод получения хеш-пароля (GetHash)
Данный метод возвращает хеш-пароль.
Список принимаемых параметров:
- password – пароль, указанный в конфигурационном файле сервиса авторизации web.config
Метод получения токена (GetToken)
Данный метод возвращает токен.
Список принимаемых параметров:
- login – логин, указанный в конфигурационном файле сервиса авторизации web.config
- password – пароль, указанный в конфигурационном файле сервиса авторизации web.config
- addInfo – комментарий
Метод получения токена (метод «GetUserToken»)
Данный метод возвращает токен.
Токен будет возвращен только в следующих случаях:
- если пользователь с указанным логином и паролем существует
- если у данного пользователя стоит признак on-line
Список принимаемых параметров:
- login - имя пользователя on-line системы бронирования ПК «Мастер-Web»
- password - пароль пользователя on-line системы бронирования ПК «Мастер-Web».