MultiFactorResolver interface

যখন কোন ব্যবহারকারীকে সাইন ইন করার জন্য দ্বিতীয় ফ্যাক্টর প্রদান করতে হয় তখন MultiFactorError থেকে পুনরুদ্ধারের সুবিধার জন্য ব্যবহৃত ক্লাস।

স্বাক্ষর:

export interface MultiFactorResolver 

বৈশিষ্ট্য

সম্পত্তি টাইপ বর্ণনা
ইঙ্গিত মাল্টিফ্যাক্টর ইনফো [] বর্তমান সেশনের জন্য সাইন-ইন সম্পূর্ণ করার জন্য প্রয়োজনীয় দ্বিতীয় কারণগুলির জন্য ইঙ্গিতগুলির তালিকা৷
সেশন মাল্টিফ্যাক্টর সেশন বর্তমান সাইন-ইন প্রবাহের জন্য সেশন শনাক্তকারী, যা দ্বিতীয় ফ্যাক্টর সাইন-ইন সম্পূর্ণ করতে ব্যবহার করা যেতে পারে।

পদ্ধতি

পদ্ধতি বর্ণনা
সমাধান সাইনইন(দাওয়া) একটি সহায়ক ফাংশন ব্যবহারকারীদেরকে একটি মাল্টিফ্যাক্টরঅ্যাসারশন ব্যবহার করে দ্বিতীয় ফ্যাক্টর দিয়ে সাইন ইন সম্পূর্ণ করতে সাহায্য করে যাতে ব্যবহারকারী নিশ্চিত করে দ্বিতীয় ফ্যাক্টর চ্যালেঞ্জ সফলভাবে সম্পন্ন করে।

MultiFactorResolver.hints

বর্তমান সেশনের জন্য সাইন-ইন সম্পূর্ণ করার জন্য প্রয়োজনীয় দ্বিতীয় কারণগুলির জন্য ইঙ্গিতগুলির তালিকা৷

স্বাক্ষর:

readonly hints: MultiFactorInfo[];

MultiFactorResolver.session

বর্তমান সাইন-ইন প্রবাহের জন্য সেশন শনাক্তকারী, যা দ্বিতীয় ফ্যাক্টর সাইন-ইন সম্পূর্ণ করতে ব্যবহার করা যেতে পারে।

স্বাক্ষর:

readonly session: MultiFactorSession;

MultiFactorResolver.resolveSignIn()

একটি সহায়ক ফাংশন ব্যবহারকারীদেরকে একটি মাল্টিফ্যাক্টরঅ্যাসারশন ব্যবহার করে দ্বিতীয় ফ্যাক্টর দিয়ে সাইন ইন সম্পূর্ণ করতে সাহায্য করে যাতে ব্যবহারকারী নিশ্চিত করে দ্বিতীয় ফ্যাক্টর চ্যালেঞ্জ সফলভাবে সম্পন্ন করে।

স্বাক্ষর:

resolveSignIn(assertion: MultiFactorAssertion): Promise<UserCredential>;

পরামিতি

প্যারামিটার টাইপ বর্ণনা
দাবী মাল্টিফ্যাক্টর অ্যাসারশন সাইন-ইন সমাধান করার জন্য মাল্টি-ফ্যাক্টর দাবী।

রিটার্ন:

প্রতিশ্রুতি< ব্যবহারকারীর শংসাপত্র >

প্রতিশ্রুতি যা ব্যবহারকারীর শংসাপত্রের বস্তুর সাথে সমাধান করে।

উদাহরণ

const phoneAuthCredential = PhoneAuthProvider.credential(verificationId, verificationCode);
const multiFactorAssertion = PhoneMultiFactorGenerator.assertion(phoneAuthCredential);
const userCredential = await resolver.resolveSignIn(multiFactorAssertion);

উদাহরণ

let resolver;
let multiFactorHints;

signInWithEmailAndPassword(auth, email, password)
    .then((result) => {
      // User signed in. No 2nd factor challenge is needed.
    })
    .catch((error) => {
      if (error.code == 'auth/multi-factor-auth-required') {
        resolver = getMultiFactorResolver(auth, error);
        // Show UI to let user select second factor.
        multiFactorHints = resolver.hints;
      } else {
        // Handle other errors.
      }
    });

// The enrolled second factors that can be used to complete
// sign-in are returned in the `MultiFactorResolver.hints` list.
// UI needs to be presented to allow the user to select a second factor
// from that list.

const selectedHint = // ; selected from multiFactorHints
const phoneAuthProvider = new PhoneAuthProvider(auth);
const phoneInfoOptions = {
  multiFactorHint: selectedHint,
  session: resolver.session
};
const verificationId = phoneAuthProvider.verifyPhoneNumber(phoneInfoOptions, appVerifier);
// Store `verificationId` and show UI to let user enter verification code.

// UI to enter verification code and continue.
// Continue button click handler
const phoneAuthCredential = PhoneAuthProvider.credential(verificationId, verificationCode);
const multiFactorAssertion = PhoneMultiFactorGenerator.assertion(phoneAuthCredential);
const userCredential = await resolver.resolveSignIn(multiFactorAssertion);