Web-сервисы: Сервис для авторизации — различия между версиями

Материал из Megatec
Перейти к: навигация, поиск
[непроверенная версия][досмотренная версия]
(Новая страница: «==Введение== Начиная с релиза 2009.2.16 ПК «Мастер-Web» появилась возможность защиты веб-сервис…»)
 
(Метод получения токена для 21 релиза (метод «GetUserToken»))
 
(не показано 10 промежуточных версий 2 участников)
Строка 1: Строка 1:
 
==Введение==
 
==Введение==
Начиная с релиза 2009.2.16 ПК «Мастер-Web» появилась возможность защиты веб-сервисов распределенного поиска от несанкционированного использования посредством сервиса авторизации WsAuthorization.
+
Данный модуль предназначен для получения токена и хеша пароля, которые используются для защиты веб-сервисов от несанкционированного использования.
 +
 
 +
===Ссылка на тестовый сервис===
 +
С работой тестового [http://demo.megatec.ru/DS_Authorization/WsAuthorization.asmx сервиса авторизации] вы можете ознакомиться на нашем демо-сервере.
 +
 
 
==Установка==
 
==Установка==
 
Для установки '''Сервиса авторизации''' нужно создать директорию '''Authorization''' в каталоге <code>c:/inetpub/wwwroot/</code> (корневом каталоге '''IIS''') и выложить туда распакованные файлы из архива <code>mw-ws-authorization-9.2.x.xxxxx.zip</code>.
 
Для установки '''Сервиса авторизации''' нужно создать директорию '''Authorization''' в каталоге <code>c:/inetpub/wwwroot/</code> (корневом каталоге '''IIS''') и выложить туда распакованные файлы из архива <code>mw-ws-authorization-9.2.x.xxxxx.zip</code>.
Строка 17: Строка 21:
 
<br />
 
<br />
 
4 В открывшемся окне нужно нажать кнопку '''ОК'''<br />
 
4 В открывшемся окне нужно нажать кнопку '''ОК'''<br />
[[Файл: am_748.png|x500px|Добавить приложение]]<br />
+
[[Файл: ep_111.png|x500px|Добавить приложение]]<br />
 
<br />
 
<br />
  
Строка 28: Строка 32:
 
После установки ''сервис авторизации''  доступен по адресу<br />
 
После установки ''сервис авторизации''  доступен по адресу<br />
 
<code><nowiki>http://ip-адрес сервера Мастер-Веб/Authorization/WsAuthorization.asmx</nowiki></code>.
 
<code><nowiki>http://ip-адрес сервера Мастер-Веб/Authorization/WsAuthorization.asmx</nowiki></code>.
 +
 +
===Настройка базы данных===
 +
<ul>
 +
<li>Для защиты веб-сервисов от несанкционированного использования нужно выполнить по базе данных ПК «Мастер-Тур» скрипт:
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="100%"><TR><TD>
 +
<syntaxhighlight lang="sql">
 +
insert into [SystemSettings] (SS_ParmName,SS_ParmValue) values ('SYSCheckSecurityToken','1')
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</li>
 +
<li>Отключить использование сервиса авторизации можно скриптом:
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="100%"><TR><TD>
 +
<syntaxhighlight lang="sql">
 +
update [SystemSettings] set [SS_ParmValue] = '0' where [SS_ParmName] in ('SYSCheckSecurityToken')
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</li>
 +
<li>Начиная с ПК «Мастер-Web» 2009.2.17.1 (пакет обновлений № 1 для релиза ПК «Мастер-Web» 2009.2.17) использование сервиса авторизации по умолчанию не требуется.<br />
 +
 +
</ul>
  
 
===Настройки в файле WEB.CONFIG===
 
===Настройки в файле WEB.CONFIG===
Дополнительные настройки, задаются в файле web.config, находящемся в папке Authorization.
+
 
<li>Настройки авторизации в элементе <font style="font-family:courier new"><appSettings></font>:
+
В конфигурационном файле Web.config сервиса авторизации нужно указать следующие настройки:
 +
<ul>
 +
<li>Строка подключения к базе данных ПК «Мастер-Тур» в элементе <font style="font-family:courier new"><appSettings></font>, например:
 +
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="100%"><TR><TD>
 +
<syntaxhighlight lang="xml">
 +
<add key="connectionString"
 +
  value="Data Source=server; Initial Catalog=database; User Id=root; Password=toor; Application Name=ds"/>
 +
</syntaxhighlight>
 +
</TD></TR></TABLE>
 +
</li>
 +
<li>Настройки авторизации в элементе <font style="font-family:courier new"><appSettings></font>:
 
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="100%"><TR><TD>
 
<TABLE STYLE="border: 0.1em dashed #2F6FAB; margin: 8px; padding: 8px" WIDTH="100%"><TR><TD>
 
<syntaxhighlight lang="xml">
 
<syntaxhighlight lang="xml">
Строка 46: Строка 80:
 
<li>usePasswordHashing — включение хеширования пароля.</li>
 
<li>usePasswordHashing — включение хеширования пароля.</li>
 
</ul>
 
</ul>
+
</li>
 
<li>Для корректной работы сервиса WsAuthorization на релизах ПК «Мастер-Web» 2009.2.15 и выше нужно включить настройку customErrors в элементе <font style="font-family:courier new"><system.web></font>:
 
<li>Для корректной работы сервиса WsAuthorization на релизах ПК «Мастер-Web» 2009.2.15 и выше нужно включить настройку customErrors в элементе <font style="font-family:courier new"><system.web></font>:
 
<span style="color:#808080"></span>
 
<span style="color:#808080"></span>
Строка 54: Строка 88:
 
   <customErrors mode="On"/>
 
   <customErrors mode="On"/>
 
 
</system.web>
 
 
</system.web>
 
</system.web>
 
</syntaxhighlight>
 
</syntaxhighlight>
 
</TD></TR></TABLE>
 
</TD></TR></TABLE>
 +
</li>
 +
</ul>
 
==Работа в системе==
 
==Работа в системе==
====Метод получения хеш-пароля (GetHash)====
+
===Метод получения хеш-пароля (GetHash)===
Данный метод возвращает хеш-пароль.
+
Данный метод возвращает '''хеш-пароль'''.
  
Список принимаемых параметров:
+
'''Список принимаемых параметров''':
*password – пароль указанный в конфигурационном файле распределенного поиска
+
*password – пароль, указанный в конфигурационном файле сервиса авторизации web.config
  
 
===Метод получения токена (GetToken)===
 
===Метод получения токена (GetToken)===
Данный метод возвращает токен.
+
Данный метод возвращает '''токен'''.
  
Список принимаемых параметров:
+
'''Список принимаемых параметров''':
*login –  логин указанный в конфигурационном файле распределенного поиска
+
*login –  логин, указанный в конфигурационном файле сервиса авторизации web.config
*password – пароль указанный в конфигурационном файле распределенного поиска
+
*password – пароль, полученный в результате отработки метода получения хеш-пароля (GetHash)
 
*addInfo – комментарий
 
*addInfo – комментарий
  
===Аутентификация (метод «GetUserToken»)===
+
===Метод получения токена (метод «GetUserToken»)===
Данный метод возвращает токен.  
+
Данный метод возвращает '''токен'''. <br />
 +
Токен будет возвращен только в следующих случаях:
 +
* если пользователь с указанным логином и паролем существует
 +
* если у данного пользователя стоит признак [[Мастер-Тур:База данных «Партнеры»#Представители|on-line]]
  
Список принимаемых параметров:  
+
'''Список принимаемых параметров''':  
 
* login - имя пользователя on-line системы бронирования ПК «Мастер-Web»
 
* login - имя пользователя on-line системы бронирования ПК «Мастер-Web»
 
* password - пароль пользователя on-line системы бронирования ПК «Мастер-Web».
 
* password - пароль пользователя on-line системы бронирования ПК «Мастер-Web».
 +
 +
[[Category:Web-сервисы]]

Текущая версия на 11:42, 24 мая 2018

Введение

Данный модуль предназначен для получения токена и хеша пароля, которые используются для защиты веб-сервисов от несанкционированного использования.

Ссылка на тестовый сервис

С работой тестового сервиса авторизации вы можете ознакомиться на нашем демо-сервере.

Установка

Для установки Сервиса авторизации нужно создать директорию 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
Администрирование - Диспетчер служб 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 – пароль, полученный в результате отработки метода получения хеш-пароля (GetHash)
  • addInfo – комментарий

Метод получения токена (метод «GetUserToken»)

Данный метод возвращает токен.
Токен будет возвращен только в следующих случаях:

  • если пользователь с указанным логином и паролем существует
  • если у данного пользователя стоит признак on-line

Список принимаемых параметров:

  • login - имя пользователя on-line системы бронирования ПК «Мастер-Web»
  • password - пароль пользователя on-line системы бронирования ПК «Мастер-Web».