Interfejs definiujący wieloczynnikowe właściwości i operacje dotyczące Użytkownika .
Podpis:
export interface MultiFactorUser
Nieruchomości
Nieruchomość | Typ | Opis |
---|---|---|
zarejestrowane czynniki | Informacje wieloczynnikowe [] | Zwraca listę drugich czynników zarejestrowanych przez użytkownika. |
Metody
metoda | Opis |
---|---|
zarejestruj się (twierdzenie, nazwa wyświetlana) | Rejestruje drugi czynnik zidentyfikowany przez MultiFactorAssertion dla użytkownika. |
pobierzSesję() | Zwraca identyfikator sesji dla operacji rejestracji drugiego czynnika. Służy do identyfikacji użytkownika próbującego zarejestrować drugi czynnik. |
wyrejestruj się (opcja) | Wyrejestrowuje określony drugi czynnik. |
MultiFactorUser.enrolledFactors
Zwraca listę drugich czynników zarejestrowanych przez użytkownika.
Podpis:
readonly enrolledFactors: MultiFactorInfo[];
MultiFactorUser.enroll()
Rejestruje drugi czynnik zidentyfikowany przez MultiFactorAssertion dla użytkownika.
Po rozwiązaniu tokeny użytkownika są aktualizowane, aby odzwierciedlić zmianę w ładunku JWT. Akceptuje dodatkowy parametr nazwy wyświetlanej używany do identyfikacji drugiego czynnika dla użytkownika końcowego. Aby ta operacja się powiodła, wymagane jest niedawne ponowne uwierzytelnienie. Po pomyślnej rejestracji istniejące sesje Firebase (tokeny odświeżania) zostaną unieważnione. Po zarejestrowaniu nowego czynnika na adres e-mail użytkownika wysyłane jest powiadomienie e-mailem.
Podpis:
enroll(assertion: MultiFactorAssertion, displayName?: string | null): Promise<void>;
Parametry
Parametr | Typ | Opis |
---|---|---|
twierdzenie | Twierdzenie wieloczynnikowe | Twierdzenie wieloczynnikowe, z którym warto się zarejestrować. |
wyświetlana nazwa | ciąg | zero | Nazwa wyświetlana drugiego czynnika. |
Zwroty:
Obietnica<pusta>
Przykład
const multiFactorUser = multiFactor(auth.currentUser);
const multiFactorSession = await multiFactorUser.getSession();
// Send verification code.
const phoneAuthProvider = new PhoneAuthProvider(auth);
const phoneInfoOptions = {
phoneNumber: phoneNumber,
session: multiFactorSession
};
const verificationId = await phoneAuthProvider.verifyPhoneNumber(phoneInfoOptions, appVerifier);
// Obtain verification code from user.
const phoneAuthCredential = PhoneAuthProvider.credential(verificationId, verificationCode);
const multiFactorAssertion = PhoneMultiFactorGenerator.assertion(phoneAuthCredential);
await multiFactorUser.enroll(multiFactorAssertion);
// Second factor enrolled.
MultiFactorUser.getSession()
Zwraca identyfikator sesji dla operacji rejestracji drugiego czynnika. Służy do identyfikacji użytkownika próbującego zarejestrować drugi czynnik.
Podpis:
getSession(): Promise<MultiFactorSession>;
Zwroty:
Obietnica< MultiFactorSession >
Obietnica, która rozwiązuje się dzięki MultiFactorSession .
Przykład
const multiFactorUser = multiFactor(auth.currentUser);
const multiFactorSession = await multiFactorUser.getSession();
// Send verification code.
const phoneAuthProvider = new PhoneAuthProvider(auth);
const phoneInfoOptions = {
phoneNumber: phoneNumber,
session: multiFactorSession
};
const verificationId = await phoneAuthProvider.verifyPhoneNumber(phoneInfoOptions, appVerifier);
// Obtain verification code from user.
const phoneAuthCredential = PhoneAuthProvider.credential(verificationId, verificationCode);
const multiFactorAssertion = PhoneMultiFactorGenerator.assertion(phoneAuthCredential);
await multiFactorUser.enroll(multiFactorAssertion);
MultiFactorUser.unenroll()
Wyrejestrowuje określony drugi czynnik.
Aby określić współczynnik do usunięcia, przekaż obiekt MultiFactorInfo (pobrany z MultiFactorUser.enrolledFactors ) lub ciąg UID czynnika. Sesje nie są anulowane w przypadku wyrejestrowania konta. Prawdopodobnie do użytkownika zostanie wysłane powiadomienie e-mail z powiadomieniem o zmianie. Aby ta operacja się powiodła, wymagane jest niedawne ponowne uwierzytelnienie. W przypadku wyrejestrowania istniejącego czynnika na adres e-mail użytkownika wysyłane jest powiadomienie e-mailem.
Podpis:
unenroll(option: MultiFactorInfo | string): Promise<void>;
Parametry
Parametr | Typ | Opis |
---|---|---|
opcja | Informacje wieloczynnikowe | strunowy | Wieloczynnikowa opcja wyrejestrowania. |
Zwroty:
Obietnica<pusta>
-
Promise
, która rozwiązuje się po zakończeniu operacji wyrejestrowania.
Przykład
const multiFactorUser = multiFactor(auth.currentUser);
// Present user the option to choose which factor to unenroll.
await multiFactorUser.unenroll(multiFactorUser.enrolledFactors[i])