Android Bootstrap


Table of Contents:

1. Intro
2. Turning on Bootstrap in the Administration Portal
3. Providing the button to generate the bootstrap code
4. Entering the bootstrap code in the new device


Introduction

Please note that this documentation is to be used in conjunction with the basic Android SDK documentation for creating a scanned login app (a universal authenticator for logging into browser-based services which present a QR code) and for creating a self-contained mobile app (which logs in to itself). In the form of demo applications, these guides take you through the methods involved in the basic user registration and authentication process, including retrieving user details and the accessCode required when registering.

In the Android SDK there are forms of the registration and authentication methods available which can be used to give end users the ability to generate a 'bootstrap' code from within the UI. The user can then use this code to register their identity on a new device, thus saving the need to go through the manual registration process again.

This is managed by:

  1. In the mobile UI, the end user should be provided with a button to generate a bootstrap registration code for an already registered ID.

  2. They can take a note of this code to then input into their new device.

Turning on Bootstrap in the Administration Portal

To enable the use of bootstrap codes, the relevant setting must be turned on in the admin portal:

allow bootstrap

Note that the Bootstrap setting in the admin portal is not currently available for customers. If you wish to make use of Bootstrap please contact us using our chat facility, or email us at support@miracl.com.

Providing the button to generate the bootstrap code

This is begun with the following method which passes the current user details:

Status startAuthenticationRegCode(User user)

and finished with:

Status finishAuthenticationRegCode(User user, String[] multiFactor, RegCode regCode)

The user details and PIN can be captured as per the basic Android SDK guides and passed as a single value array. This returns a registration code which should then be displayed for the user.

The startAuthenticationRegCode method would be used in the second stage of the following example UI flow. The finishAuthenticationRegCode method would be called once the user has authenticated with their PIN in step 3:

generate code flow

Entering the bootstrap code in the new device

In the UI registration flow the user should be presented with the option to enter this registration code, instead of the usual registration flow, thus activating the new device. This can be done with the usual startRegistration method (which is also used for normal registration):

Status startRegistration(User user, String accessCode, String pushToken, String regCode)

As you can see, the regCode entered by the user is a parameter which can be passed when starting registration. Please see the above-mentioned basic SDK guides for demo apps which show how to retrieve the User details and the accessCode (required to identify the session). The pushToken is an optional token that can be used for enabling real time push notifications (explained in separate documentation).

The startRegistration method would be used at the second stage of the following example UI flow. Once this is entered, the user can create a PIN on their new device, as illustrated in the scanned/local login demo apps:

enter code flow

Top