Manage MFA for a user
The manageMFA method is used to trigger manage MFA flow for users, allowing users to update their MFA settings. If you are using default sign-in providers, you don't need to pass LoginParams. If the user signed in with a custom auth connection that needs extra sign-in options (for example, Auth0), pass the same LoginParams you used to sign in.
manageMFA returns a CompletableFuture<Boolean>. It fails with MFA is not enabled. Please enable MFA first. if the user hasn't enabled MFA, and with No user found, please login again! if there's no active session.
The SDK fills in the auth connection details from the current session, so the authConnection value you pass doesn't change which connection is used.
warning
- Don't pass
idTokeninLoginParams. The method fails withEnabling MFA is not allowed for this user.ifidTokenis set. - This method isn't available for users who signed in with SFA (
connectTowithidToken).
Usage
- Default Verifier
- Custom Auth Connection
val manageMFACF = web3Auth.manageMFA()
manageMFACF.whenComplete{_, error ->
if (error == null) {
// Handle success
} else {
// Handle error
}
}
Usage
// Use the same LoginParams you used to sign in, without idToken
val loginParams = LoginParams(
AuthConnection.CUSTOM,
authConnectionId = "your_auth_connection_id",
extraLoginOptions = ExtraLoginOptions(
domain = "https://YOUR_AUTH0_DOMAIN"
)
)
val manageMFACF = web3Auth.manageMFA(loginParams)
manageMFACF.whenComplete { _, error ->
if (error == null) {
// Handle success
} else {
// Handle error
}
}