TABLE OF CONTENTS

Introduction


In this section we will explain you how to setup your identity providers, get your MetaData and what information you need to provide to Identity Provider. 


NOTE: This functionality is NOT free of charge. Please contact your account manager and ask for commercials. Once approved, support team can enable it.


The use-case for the SAML SSO is that you as a client have a product(CRM, ERP system, etc) which is your main application and all of your employees/agents are logged in there and you don't want them to login again on Thomalex system. Your application/product is acting then as a Identity Provider were Thomalex is acting as the Service Provider. 

In order for Thomalex to be able to login your employees, they must exists within our system. Creating employees can be done using our API.  If the employee/agent exists, we log them into the Thomalex system.


Default behavior of the functionality is that you need to setup the SSO on each site that is represented in the Thomalex system. Every site should have it's own setup.


As in Thomalex we have both Parent(Main) sites and affiliate sites, we added a setting which would allow one SSO setup for all affiliate sites that belong to that Parent site.


Depending on an Agency workflow, one agency can have multiple affiliate agencies(stores) operating under their brand and they have Agents that can move from one agency site to another. For that purpose we added an ability to create an Agent directly through the SSO functionality.



Image: SAML SSO Settings. Visible by the Thomalex team only

Setup


Step 1: Login as a Administration you will see menu "SAML SSO". When you click on that. you will have option to add an modify you Identity Providers. 



Image 1. Feature Location


Step 2: Click on a button to add Identity Provider and list of Identity Providers that you already have. Also, you can delete or edit your Identity Providers.


Image 2. Button Location


Step 3: Please insert Identity Provider Name, SSO Service URL and Certificate (from .cer extension)


Image 3. Identity Provider Info Box


Step 4: On your side you would need to specify Service Provider information's:


Single Sign On URL
https://your-dedicated-url/SSO/AssertionConsumerService
Service Provider Name(Audience)https://thomalex.travel



Step 5: Optional In SAML Configuration page you have a link to your metadata. Metadata is your configuration that you need to provide to your Identity Provider. In order to access the metadata in thomalex, the URL should match the dedicated URL for the website or a corporate (don't use the generic thomalex URL).


Image 4. Metadata location



Image 5: Metadata example


SAML SSO Attributes


Within Thomalex SSO implementation, you have an ability to perform different actions. Depending on a setup that is made in our system some functionalities might be available to you. 

In order to successfully establish the connection with the Thomalex platform you will need to send specifics attributes.


Attributes are listed in the table below:


Attribute NameMandatoryDescription
ClientSiteCodeYesEach site in Thomalex has it's own unique Id, you need to pass this value otherwise you will not be able to login.

ActionNo

In case that you want to login and initiate the search on Thomalex platform you can do that by specifying if the provided search query is for Air, Car or Hotel search.

Allowed values:

  • AirSearch
  • CarSearch
  • HotelSearch
SearchRequestNoThis is connected with Action attribute. Here you would specify the actual search query for the given action. Search query will be the same as for the API. You can find the documentation examples here. Make sure to serialize the query object into the json string.
CUSTOM_FIELD_XXXNoWe have an ability to send custom data when performing a search. This property should be sent together with the SearchRequest parameter.
You can have as many as you want CUSTOM_FIELD sent.
XXX represent the actual number of the Custom Field which was created in the Administration panel.
ThirdPartyExternalIdNo*Depending on a SSO setup, you can have SSO enabled on parent site and also allow all the affiliate sites to use the same SSO configuration. The pre-request to have that one working you would need to specify the Third Party External Id that was saved in the Thomalex system. Each ThirdPartyExternalId must be unique within the Affiliates.
* Mandatory if SSO for affiliates is enabled
FirstNameNo*In case we allow creating and moving Agents across different affiliate sites, you need to specify FirstName of the Agent
*Mandatory if feature enabled
LastNameNo*
AllowedSearchTypeNo*When creating Agents, you can choose what are the modules they can see.
Allowed values:
  • Air
  • Car
  • Hotel

In case you want to give them access to multiple modules specify the data like this: Air,Car,Hotel

*Mandatory if you have the feature for creating agents enabled

Table 1. List of available attributes


NOTE: Allowing the SSO to create and move Agents can only be done by the Thomalex support team.




Examples of the Payloads are attached: