Firebase Phone Number Verification

Firebase Phone Number Verification ( Firebase PNV ) روشی سریع‌تر و امن‌تر برای تأیید شماره تلفن‌ها است. برخلاف تأیید مبتنی بر پیامک که نیاز به دریافت و وارد کردن کد از طریق پیامک دارد، Firebase PNV با یک لمس، شماره تلفن اختصاص داده شده به سیم‌کارت دستگاه را مستقیماً از اپراتور متصل دریافت می‌کند. این امر باعث کاهش اصطکاک برای کاربر، بهبود قابلیت اطمینان با عدم وابستگی به نحوه دریافت پیامک و حذف مسیرهای سوءاستفاده‌ای می‌شود که معمولاً هنگام استفاده از پیامک مورد سوءاستفاده قرار می‌گیرند.

قابلیت‌های کلیدی

Carriers are the source of truth با Firebase PNV ، گوگل شماره تلفن تأیید شده برای سیم کارت را مستقیماً از اپراتور دریافت می‌کند و به شما می‌گوید که در حال حاضر چه شماره‌ای روی دستگاهی که برنامه شما در آن اجرا می‌شود، وجود دارد. OTP های پیامکی فقط می‌توانند به شما بگویند که آیا کاربر به شماره تلفن دسترسی دارد یا خیر.
Use standalone or with an identity provider شما می‌توانید Firebase PNV به تنهایی به عنوان یک روش آسان و قابل اعتماد برای تأیید شماره تلفن استفاده کنید، یا می‌توانید از آن به عنوان یک روش ورود به سیستم با Firebase Authentication یا سیستم تأیید هویت خودتان استفاده کنید.
Automatically use available carriers شما می‌توانید از Firebase PNV SDK برای تشخیص سازگاری استفاده کنید و در صورتی که Firebase PNV هنوز در دستگاه پشتیبانی نمی‌شود، به روش دیگری مانند پیامک برگردید. Firebase PNV به تدریج برای اپراتورهای سراسر جهان در دسترس قرار خواهد گرفت. با در دسترس قرار گرفتن اپراتورهای جدید، می‌توانید به طور خودکار و بدون هیچ تغییر اضافی در برنامه خود از آنها استفاده کنید. برای مشاهده لیست اپراتورهای شرکت‌کننده، به پشتیبانی اپراتور مراجعه کنید.
Eliminate SMS phishing attacks از آنجایی که Firebase PNV هیچ پیامکی برای تأیید شماره تلفن ارسال نمی‌کند، بنابراین کاربران نمی‌توانند برای دریافت رمزهای عبور یکبار مصرف که می‌توانند در حملات تصاحب حساب کاربری مورد استفاده قرار گیرند، مورد فیشینگ قرار گیرند.

چگونه کار می‌کند؟

وقتی درخواست تأیید شماره تلفن می‌دهید، Firebase PNV :

  1. بررسی می‌کند که دستگاه کاربر و اپراتور تلفن همراه پشتیبانی می‌شوند.

  2. از کاربر رضایت می‌گیرد تا شماره تلفن خود را با برنامه شما به اشتراک بگذارد.

  3. برای دریافت شماره تلفن تأیید شده، با اپراتور تلفن همراه اختصاص داده شده به سیم کارت همکاری می‌کند.

  4. یک توکن امضا شده حاوی شماره تلفن تأیید شده، معمولاً در عرض ۱ تا ۳ ثانیه پس از رضایت کاربر، به برنامه شما برمی‌گرداند.

پس از تأیید امضای این توکن، برنامه شما اکنون شماره تلفن تأیید شده کاربر را دارد. همچنین می‌توانید از این توکن به عنوان بخشی از یک جریان ورود به سیستم مبتنی بر شماره تلفن استفاده کنید، به عنوان مثال با استفاده از Firebase Authentication یا احراز هویت خودتان.

Implementation path

Set up your Firebase project در کنسول Firebase ، مراحل راه‌اندازی اولیه را برای فعال کردن صورتحساب و API Firebase Phone Number Verification برای پروژه Firebase خود انجام دهید.
Install the SDK and initialize کیت توسعه نرم‌افزار Firebase PNV را برای پلتفرم برنامه خود نصب کنید. این کیت مستلزم آن است که تأیید برند OAuth با موفقیت انجام شده باشد.
Design an explainer screen (توصیه می‌شود) قبل از فعال کردن رابط کاربری رسمی رضایت کاربر، توضیح دهید که آنها باید یک سیم‌کارت برای دریافت شماره انتخاب کنند و اینکه چگونه این روش سریع‌تر و امن‌تر از رمزهای یک‌بار مصرف پیامکی است. این کار باعث کاهش سردرگمی و آموزش کاربران در مورد جریان جدید تأیید شماره تلفن می‌شود.
Check for device and carrier compatibility (توصیه می‌شود) هنگام راه‌اندازی برنامه، از Firebase PNV SDK برای بررسی سازگاری دستگاه و اپراتور تلفن همراه آن با Firebase PNV استفاده کنید. در صورت سازگاری، صفحه توضیح را نمایش داده و از کاربر رضایت بخواهید. در غیر این صورت، از روش قدیمی تأیید شماره تلفن خود، مانند پیامک، استفاده کنید.
Request the verified phone number Use the Firebase PNV SDK to request the device's verified phone number from the mobile carrier. This triggers user consent, which your explainer screen helps prepare the user to complete.
Verify the response token در پاسخ از سرویس Firebase PNV ، یک توکن امضا شده دریافت می‌کنید که می‌توانید آن را به backend برنامه خود ارسال کنید. در backend، امضای توکن را تأیید کنید. اگر امضا معتبر باشد، توکن حاوی شماره تلفن تأیید شده دستگاه است.

مراحل بعدی

  • برای یادگیری نحوه آزمایش Firebase PNV در یک برنامه اندروید با استفاده از حالت تست بدون سیم‌کارت، به راهنمای شروع به کار با اندروید مراجعه کنید.