MultiFactor
abstract class MultiFactor
Defines multi-factor related properties and operations pertaining to a FirebaseUser. This class acts as the main entry point for enrolling or un-enrolling second factors for a user, and provides access to their currently enrolled factors.
Summary
Public constructors |
|---|
Public functions |
|
|---|---|
abstract Task<Void!> |
enroll(multiFactorAssertion: MultiFactorAssertion, displayName: String?)Enrolls a second factor as identified by the |
abstract (Mutable)List<MultiFactorInfo!> |
Returns a list of the |
abstract Task<MultiFactorSession!> |
Returns a session identifier for a second factor enrollment operation. |
abstract Task<Void!> |
Unenrolls a second factor from this user. |
abstract Task<Void!> |
unenroll(multiFactorInfo: MultiFactorInfo)Unenrolls a second factor from this user. |
Public constructors
Public functions
enroll
abstract fun enroll(multiFactorAssertion: MultiFactorAssertion, displayName: String?): Task<Void!>
Enrolls a second factor as identified by the MultiFactorAssertion parameter for the current user.
On successful enrollment, existing Firebase sessions are revoked, and an email notification is sent to the user’s email. The user's must have a verified email to enroll a second factor.
A MultiFactorAssertion can be generated using getAssertion for enrolling phone number as a second factor or getAssertionForEnrollment for enrolling TOTP as a second factor.
| Parameters | |
|---|---|
multiFactorAssertion: MultiFactorAssertion |
the assertion representing the second factor to enroll |
displayName: String? |
an optional name for identifying this second factor |
getEnrolledFactors
abstract fun getEnrolledFactors(): (Mutable)List<MultiFactorInfo!>
Returns a list of the MultiFactorInfo already associated with this user.
If the user does not have any enrolled factors, the list will be empty.
getSession
abstract fun getSession(): Task<MultiFactorSession!>
Returns a session identifier for a second factor enrollment operation. This is used to identify the current user trying to enroll a second factor.
To be used when building a PhoneAuthOptions instance to call verifyPhoneNumber for phone factor enrollment, or when generating a TotpSecret instance for TOTP factor enrollment.
unenroll
abstract fun unenroll(factorUid: String): Task<Void!>
Unenrolls a second factor from this user.
The factorUid to be passed in can be retrieved from getEnrolledFactors.
unenroll
abstract fun unenroll(multiFactorInfo: MultiFactorInfo): Task<Void!>
Unenrolls a second factor from this user.
The MultiFactorInfo to be passed in can be gotten from getEnrolledFactors.