Azure Integration

Roles

Connector App
(From TS)
  • Configuration of TS and Azure credentials.
  • Make calls to TS for registration, authentication and status.
  • Make calls to Azure for getting access token, user profiles.
Application Server
(Client’s app server)
  • Configuration of TS credentials.
  • Accept calls from the client app and forward to Connector App
Client Application
(Client application)
  • The one which uses the Azure AD services for Authentication.
  • Add widget
  • Configuration of URLs
  • Make register / auth / status calls

Integration

  • Client Side Integration

    Assumption

    The client application already uses the Azure AD services for user authentication.

    There are few permissions need to be set in the Azure.

  • Backend Integration

    • In order to perform & receive the status of Registration & Authentication from ThumbsignIn server, the backend should expose APIs to the client widget.
    • Backend also should take care of talking with Azure AD for getting the `access token` and API calls to fetching the user profiles during successful authentication from ThumbsignIn server.
    Connector App

    Application that takes care of the above 2 requirements for the backend integration. This requires configuration of ThumbsignIn and Azure AD credentials.

    • Spring boot java application that can be either deployed in your existing backend infrastructure OR can be deployed as a standalone application.
    • Download the code from Github
    • This application can be used as-is with minor configurations for ThumbsignIn and Azure AD REST calls.

    application.properties

    #Azure AD tenant and app registration details Azure.ad.client.id = <<AZURE CLIENT ID>> Azure.ad.client.secret = <<AZURE CLIENT SECRET>> Azure.ad.tenant.id = <<AZURE TENANT ID>> #ThumbSignin App Registration Details (Multiple client app registrations can be configured) thumbsignin.apiUsers[0].key = <<APP 1 - KEY>> thumbsignin.apiUsers[0].secret = <<APP 1 - SECRET>> thumbsignin.apiUsers[1].key = <<APP 2 - KEY>> thumbsignin.apiUsers[1].secret = <<APP 2 - KEY>>

High Level Flow Diagram / How it works ?