Skip to content

Fortified IDDocs

Username & password

Used to verify user credentials against one or more user stores. Requires modules AuthN & Pipes to be deployed.

Common Authenticator configuration can be found here.

NameDescriptionDefault valueMandatory
pipe_idPipe to use for validation.N/Atrue
allowed_retriesNumer of allowed faulty tries before system resets the state.2false
webroot_dirSee common authenticator configurationweb/authenticator/username_passwordfalse
custom_identifierTag used for event separationN/Afalse

Apart from system logging, event logging is done when completing and failing a transaction.

Event ids are:

  • WEB_100017("Authenticated using User-name & password")

    • IDENTIFIER (user trace id)
    • CUSTOMER_IDENTIFIER (if configured)
    • SOURCE_USER_NAME (username entered by the user)
    • SOURCE_ADDRESS (ip of the remote session)
    • AUTHENTICATOR_IDENTIFIER (id and display name)
  • WEB_100018("Failed authentication using User-name & password")

    • IDENTIFIER (user trace id)
    • CUSTOMER_IDENTIFIER (if configured)
    • SOURCE_ADDRESS (ip of the remote session)
    • SOURCE_USER_NAME (username entered by the user)
    • AUTHENTICATOR_IDENTIFIER (id and display name)

On validation, data sent to the pipe is:

  • identifier - the username provided by the user
  • password - the password provided by the user

After a user completes a transaction, the authenticator is marked as done. Data from the authentication response is then put into the global state replacing existing values:

  • username

API follows the general conventions of the Fortified Web Authenticator API.

All requests use the HTTP PUT method with Content-Type: application/json, sent to the directory URL the view was loaded from. The session cookie must be sent with every request.

MessagePurpose
stateFetch the current state. Send it when the view loads.
startSubmit the username and password for validation.
cancelCancel the authentication.

Send this when the view loads, and after a browser reload. It moves a pending authenticator into progress and reports that the view may collect input.

{
"type": "state"
}

Send the username and password entered by the user. They are passed to the configured pipe together with any whitelisted request headers.

{
"type": "start",
"data": {
"identifier": "<username>",
"password": "<password>"
}
}

A request can be canceled at any time. This is done by sending a cancel request.

{
"type": "cancel"
}

Expect HTTP status code 200. Anything else is to be considered an error.

The body is a JSON object. A step that is still in progress answers with a status property; a step that ends the authenticator answers with a complete, cancel, or failure message as described in Web Authenticator API.

StatusMeaning
ABOUT_TO_STARTThe authenticator is ready and the view should collect the username and password.
ERRORCredentials were missing or rejected. Attempts remain.
{
"username_password.identifier": "Username",
"username_password.password": "Password",
"username_password.start_authentication": "Sign in",
"username_password.authentication_verified": "Identity verified",
"username_password.redirecting": "Redirecting...",
"username_password.cancel": "Cancel",
"username_password.ERROR": "Wrong username or password.",
"allow-cookies-body": "To save your language settings on this device you need to approve a language cookie.",
"allow-cookies-button": "Approve language cookie",
"authentication.help_text": "",
"change_language": ""
}
{
"username_password.identifier": "Användarnamn",
"username_password.password": "Lösenord",
"username_password.start_authentication": "Logga in",
"username_password.authentication_verified": "Identitet verifierad",
"username_password.redirecting": "Omdirigerar...",
"username_password.cancel": "Avbryt",
"username_password.ERROR": "Felaktigt användarnamn eller lösenord",
"allow-cookies-body": "Vill du spara dina språkinställningar på denna enhet behövs ett godkännande av språk-cookie.",
"allow-cookies-button": "Godkänn språk-cookie",
"authentication.help_text": "",
"change_language": ""
}