Oauth2 authentication

From TempusServa wiki
Jump to navigation Jump to search

Understanding Oauth 2

Oauth authentication will put icons on the login page for fast and easy SSO wth multiple vendors.

The user will be authenticated if the email matches between the provider and the Tempus Serva user.

The following providors are supported.

  • Google
  • LinkedIn
  • Facebook
  • Azure
  • ADFS
  • WordPress (Via plugin)

From version 6191 it is possible to setup TS to create a new account, if a user signed in with oauth/sso and wasn't found among the existing users.

To do this enable the cofiguration oauthCreateNewUsersAllow and set their initial GroupID in the configuration oauthNewUserGroup.

Setting up SingleSignon

Before going into the detailed configuration please make sure https/SSL is enabled.

Set the following configurations to true

  • securitySslLogin
  • securitySslPages

Next activate service icons on the login page

  • oauthLoginDisplay

Google Oauth

Using an existing Google account , go to the [credentials section].

Navigate to "Credentials" in the left menu.

First setup Oauth messages in the Oauth conscent section

  • Logo, privacy policies etc. are not required but make things look better
  • Note that domain authentication is not required

Next setup setup credentials

  1. Navigate back to credentials
  2. Click Create credentials
  3. Fill out the information
  4. Credentials are generated
  5. Copy credentials to your Tempus Serva configuration
    • oauthGoogleClient = [Client ID]
    • oauthGoogleSecret = [Client secret]
  6. Finally
    • oauthGoogleAllow = true


LinkedIn Oauth

Follow the guide

Copy credentials to

  • oauthLinkedinClient
  • oauthLinkedinSecret

Enable

  • oauthLinkedinAllow

Callback URL

Facebook Oauth

Follow the guide

Copy credentials to

  • oauthFacebookClient
  • oauthFacebookSecret

Enable

  • oauthFacebookAllow

Callback URL

Azure Oauth

Follow the guide

Copy credentials to

  • oauthAzureTenant
  • oauthAzureClient
  • oauthAzureSecret

Enable

  • oauthAzureAllow

Callback URL

ADFS Oauth

Follow the guide

Copy credentials to

  • oauthAdfsServer
  • oauthAdfsClient

Enable

  • oauthAdfsAllow

Callback URL

WordPress

  1. Install and activate the plugin
  2. Enable the Oauth-server (Oath Server -> Settings -> Enable Oauth Server)
  3. Create a new client (Oauth Server -> Clients -> Add New Client)
    1. Give it a descriptive name
    2. Add the Redirect URI (Should be something like: https://[ts-hostname]/[ts-instance]/SignInWP)
    3. Assign it admin rights
    4. Save it
  4. Copy credentials to Configurations
    • oauthWPClient
    • oauthWPSecret
  5. Input wordpress domain/link to Configuration (no trailing /)
    • oauthWPHost
  6. Enable Configuration
    • oauthWPAllow