WebAuthn#
WebAuthn (short for Web Authentication API) is a specification written by the W3C and FIDO, with the participation of Google, Mozilla, Microsoft, Yubico, among others. The API allows servers to register and authenticate users using public key cryptography instead of a password. From the description in the Guide to Web Authentication ⧉:
[WebAuthn] allows servers to integrate with the strong authenticators now built into devices, like Windows Hello or Apple’s Touch ID. Instead of a password, a private-public keypair (known as a credential) is created for a website. The private key is stored securely on the user’s device; a public key and randomly generated credential ID is sent to the server for storage. The server can then use that public key to prove the user’s identity.
The public key is not secret, because it is effectively useless without the corresponding private key. The fact that the server receives no secret has far-reaching implications for the security of users and organizations. Databases are no longer as attractive to hackers, because the public keys aren’t useful to them.
WebAuthn is part of the FIDO2 framework, which is a set of technologies that enable passwordless authentication between servers, browsers, and authenticators. As of January 2019, WebAuthn is supported on Chrome, Firefox, and Edge, and Safari.
More information available in https://webauthn.guide ⧉.
Registration Flow#
Info
Diagram retrieved from https://auth0.com/blog/introduction-to-web-authentication/ ⧉
Authentication Flow#
Info
Diagram retrieved from https://auth0.com/blog/introduction-to-web-authentication/ ⧉
Registering a device in Security Portal#
There are two ways to register a device in the SecurityPortal using the WebAuthn strategy:
Registering during Login#
-
If a user is successfully authenticated in SecurityPortal, a new step will appear when accessing the MES for the first time, asking the user to register the device that they are currently at as a authentication device:
-
Pressing the No, thanks button skips this step and allows the user to proceed with the login flow. Pressing the Yes, use this device will allow the user to register their device using the WebAuthn technology. In the following screenshot this registration used the Windows Hello technology with a PIN input, but this could be configured to use a fingerprint reader, a face recognition mechanism or a USB key.
Note
Please consult your device documentation to see what types of authentication methods are available for use.
-
After registering the WebAuthn device, your browser may request permissions to allow the Security Portal site to access the device:
-
Please grant access to the browser in order to finish the registration process.
Info
This step only appears once for each combination of user and browser. In other words if the same user attempts to login with the same browser this "device registration" step will not appear.
Registering after Login#
If the user doesn't register the browser during the login phase, it is also possible to do so from the User page within the MES:
-
Navigating to the User page, scroll down to the Device section:
-
In the Device section you can find a Register dropdown button showing the possible ways through which the user can register their device:
-
Clicking on the WebAuthn link will open a new tab in the browser, allowing the user to register their device:
-
By pressing the Add Device button the user will be able to add the device as an authentication device.
Info
This page implements the same WebAuthn technology as previously discussed in the registration page, shown when the user authenticates in Security Portal using a new browser. This means that the registration can be done, among other ways, via a fingerprint reader, face recognition or USB key. Please consult your device's documentation to see what style of authentication are available for your device. The Windows Hello technology will be used in the screenshots shown in this guide:
-
After registering the WebAuthn device, your browser may request permissions to allow the Security Portal to access the device. Please grant access to the browser in order to finish the registration:
-
A message is shown on the screen to inform the user that the device has been registered successfully:
Performing passwordless authentication in Security Portal#
In order to authenticate a user using a previously registered device, perform the following steps:
-
In the Security Portal interface select the strategy that was configured as a WebAuthn strategy. In the following screenshot this was the WebAuthn strategy:
-
In the WebAuthn login page write the name of the user to login in the input field and press Login:
-
Authenticate your device. As indicated before, the Windows Hello technology is used to authenticate the device via a PIN in this guide but other technologies could be used. Please consult your device documentation to see what style of authentication are available for use:
-
After the device is authenticated, the user is redirected to the MES interface.
Info
If a user is accessing the MES system using a browser that they had already registered as a WebAuthn authentication device, steps 1 and 2 are performed automatically by the system with no need for user interaction. In this scenario, the Windows Hello window is automatically displayed to the user and they only need to validate their device in order to access the MES interface.













