Overview

The ska-login-page repository contains the SKA Login Page components that are used for user authentication.

Usage

Two modes of authentication are available. The first makes use of SKAO MS Entra (Azure AD). When this authentication path is used, the user can authentication with the user account registered on the SKAO MS Entra instance.

The alternative authentication path only mocks authentication of users to enable development of front-end applications by developers as well as serve as a fall back during the role out of authentication with SKAO MS Entra:

SKAO MS Entra Authentication

The following prerequisites need to be in place for the MS Entra authentication to work:

  • The application where the user wants to sign in to need to be deployed with the needed prerequisites in place as detailed in this document’s deployment guide.

  • The users need to have an account on the SKAO MS Entra instance.

When making use of MS Entra authentication, the user can sign in by clicking on the sign in button. This will redirect the user to the Microsoft sign in page, where the user can enter the account name they want to use to sign in with:

../_images/msEntraSignIn.png

MS Entra sign in page.

Mocked Authentication

The following prerequisites need to be in place for the mocked authentication to work:

  • The deployed application needs to have the environment variable that allow mock auth set to true:

REACT_APP_ALLOW_MOCK_AUTH='true'

To use mocked authentication the user need to click on the Switch to Mocked Auth button:

../_images/switchAuthButton.png

Switch to Mocked Auth button.

This will change the authentication path to use the mocked instance of authentication. When the user now clicks on log in, the user will be presented with a dialog where the user role and the telescope can be selected. This populates the account field with the predefined mocked users that can be used to sign in.:

../_images/mockUserSelection.png

Selection of a mocked user to sign in.

No passwords are allowed when using mocked authentication.