Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 3 Next »

Общее описание

Классически, SSO позволяет перейти в систему пользователю, который уже в ней зарегистрирован. Однако, возможен сценарий, когда такого пользователя в Кортеос нет, и его нужно зарегистрировать в момент первого перехода в систему, условно говоря, “на лету”.

Для того, чтобы создать пользователя на лету, необходимо заполнить структуру AccountDetails так, как показано в примере:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:sso="https://sso.corteos.ru/">
   <soapenv:Header/>
   <soapenv:Body>
      <sso:Set>
         <!--Optional:-->
         <sso:request>
            <sso:AccountDetails id_Group="ХХ" GroupSecurityKey="ХХХХХХХХХХХ" Email="themax1@elmotest.ru">
               <!--Optional:-->
               <sso:PersonToCreate LastName="Админских" FirstName="Максим" MiddleName="Валерьевич" 
               	LastNameLatin="Adminskih" FirstNameLatin="Maksim" MiddleNameLatin="Valerievich" Gender="true" DateBirth="2000-01-02">
                  <!--Optional:-->
                  <sso:INN>987987987</sso:INN>
                  <!--Optional:-->
                  <sso:KPP>779901001</sso:KPP>
                  <!--Optional:-->
                  <sso:CountryAlpha2>RU</sso:CountryAlpha2>
                  <!--Optional:-->
               </sso:PersonToCreate>
               <sso:id_Role>1</sso:id_Role>
            </sso:AccountDetails>
         </sso:request>
      </sso:Set>
   </soapenv:Body>
</soapenv:Envelope>

В этом случае, если пользователя с Email(в нашем примере - themax1@elmotest.ru - нет в системе, то он будет создан на лету. Данные для персоны берутся из контейнера PersonToCreate, который имеет тип данных персона. Минимальный набор полей показан в примере, нужно передать:

  • LastName - фамилия персоны на русском языке, строка

  • FirstName - имя персоны на русском языке, строка

  • MiddleName - отчество персоны, если нет - передаем пробельный символ, строка.

  • LastNameLatin, FirstNameLatin, MiddleNameLatin - все то же самое, но на английском языке, строка. Если у вас в системе эти данные не хранятся, то русский аналог необходимо транслитерировать по ГОСТ 7.79-2000 (система Б)

  • Gender - true - мужчина, false - женщина

  • DateBirth - дата рождения, datetime

  • INN - ИНН организации, в которой работает персона, строка

  • KPP - КПП организации, в которой работает персона, строка. По полям ИНН и КПП мы привязываем персону к нужной компании

  • CountryAplha2 - alpha2 код страны, гражданином которой является персона.

  • id_Role - идентификатор роли пользователя, который будет создан в процессе SSO

Посмотреть идентификаторы, доступные в вашей компании, можно из-под пользователя с правами Тревел-Менеджера в меню “Настройки” - “Роли”:

Идентификаторы ролей показаны в первом столбце:

Дополнительно можно передавать контактные данные, структурные коды, документы по создаваемой персоне, аналогично тому, как мы передаем при передаче пассажира - детально можно посмотреть на SSO портале.

Важные замечания

Нужно ли дублировать данные персоны в пассажирах, если она передана как пользователь?

Данные пользователя и пассажира обрабатываются разными разборщиками, поэтому их необходимо дублировать.

Что будет, если передать детали пользователя, а такой пользователь уже зарегистрирован в системе? Обновятся ли его данные?

Если пользователь уже зарегистрирован, элемент PersonToCreate не обрабатывается в принципе, обновить данные можно только через данные пассажиров.

Нужно ли активировать созданного через SSO пользователя в редакторе договора?

Нет. Пользователь активируется автоматически.

  • No labels