Изменения

Перейти к навигации Перейти к поиску

Авторизация пользователей из внешних систем

3958 байт добавлено, 17:28, 12 февраля 2020
м
Особенности авторизации из внешних систем
Система Nemo позволяет обращаться к ней как базе пользователей для авторизации из других систем (например форума на сайте, собственного ПО компании и т.п)
Для этого нужно подключиться к веб-службе авторизации, WSDL-описание которой располагается по адресусделать следующее:
[httpнеобходимо на адрес вида '''https://hostnamedomain/authorization_reolapi__external_authorization''' отправить POST-запрос в стандартном формате ответа об авторизуемом пользователе.wsdl httpПри получении запроса система Nemo.Travel обрабатывает полученные данные, авторизует пользователя и перенаправляет пользователя на страницу поиска авиабилетов. В случае неудачной авторизации, у пользователя появится возможность стандартной авторизации по номеру телефона.<br>Запрос передачи авторизуемого пользователяСистеме Nemo.Travel можно передать информацию об авторизованном во внешней системе пользователе путем отправки на URL https://hostnamedomain/authorization_reol.wsdl]api__external_authorization POST запроса в следующем формате:
* POST - параметр * Пример значения параметра: <pre>Request { "user": {"id": 12,"email": "test@test.ru","phone": "79123456789","firstName": "Konstantin","lastName": "Konstantinov","middleName": "Konstantinovich","birthDate": "1990-11-15","nationality": "RU","gender": "F","docNumber": "6522232232","loyaltyNumber": "1231233213223"},"passengers": [{"id": 433,"firstName": "Alexander","lastName": "Alexandrov","middleName": "Alexandrovich","birthDate": "1990-10-05","nationality": "RU","gender": "M","docNumber": "7844454454","loyaltyNumber": "1231223213223"}]}</pre> <!--> <pre>?xml version ='1.0' encoding ='UTF-8' ?>
<definitions name='Authorization'
targetNamespace='http://example.org/Authorization'
</port>
</service>
</definitions></pre></!--> * Пример расчета hash на языке PHP: <pre>$hash = hash('sha256', $request . $salt);</pre> $request - значение POST-параметра из запроса, $salt - секретная строка, известная только получателю и отправителю. В настройках Nemo.Travel должна быть включена возможность авторизации во внешней системе и задана секретная строка. Секретное слово для генерации хеша будет отдельно выдано специалистами технической поддержки.  ==Особенности авторизации из внешних систем== * Привязка пользователей идет по домену. Если необходимо добавить пользователей в корневое агентство, то запросы будут идти на домен:'''домен_аг-ва/tests/nsa/frame.php'''Если же нужно авторизовывать пользователей для субагента, то необходимо прописать данному субагенту домен в настройках: '''Управление сайтом -> Домены и протоколы'''в поле: '''Доменное имя сайта для загрузки настроек''' * Чтобы после авторизации пользователя перенаправлять его не на страницу поиска, а на любую другую выбранную страницу, необходимо указать в json после хеша домен перенаправления.  * Авторизация пользователя происходит по его ID. Для добавления нового пользователя, которого нет в системе Nemo, нужно также указать его ID.  * Если данные пользователя переданы частично, они останутся без изменений до передачи новых данных. * Если часть данных данных отличается от имеющихся в системе Nemo, то они перезапишутся.
== См. также ==
*[[Авторизация]]
*[[Пользователь]]
1382
правки

Навигация

'