مقدمه
سرویسهای ارتباطی غنی (Rich Communication Services یا RCS) نسل بعدی پیامک هستند که قابلیتهایی مانند هویت تأییدشده برند، رسید خواندن پیام و ارسال از طریق اینترنت موبایل یا Wi-Fi را ارائه میدهند. با توجه به اینکه پشتیبانی پیشفرض از RCS در دستگاهها و اپراتورهای موبایل در حال گسترش است، کاربران بهتدریج انتظار تعاملات امن و بدون اصطکاک را مستقیماً در اپلیکیشن پیامرسان خود دارند.
برای کسبوکارها، این موضوع یک فرصت مهم ایجاد میکند: فعالسازی احراز هویت دومرحلهای (2FA) مستقیماً از طریق RCS.
در این آموزش، نحوه ادغام RCS در جریانهای احراز هویت توضیح داده میشود. همچنین یک مسیر جایگزین (fallback) پیکربندی خواهد شد تا در صورتی که RCS روی دستگاه یا شبکه کاربر در دسترس نباشد، درخواست تأیید بهصورت خودکار از طریق کانال دیگری مانند پیامک ارسال شود.
پیشنیازها
-
نصب npm و Node.js
-
یک تلفن همراه با پشتیبانی از RCS
RCS چیست و چرا باید از آن استفاده کرد؟
RCS نسخه ارتقایافته کانال پیامک است که امکان ارسال پیام از طریق اینترنت موبایل یا Wi-Fi را در اپلیکیشن پیشفرض پیامرسان در اندروید و آیفون فراهم میکند. این فناوری از اعتبارسنجی هویت فرستنده پشتیبانی میکند و تأخیر بسیار کمی در تحویل پیام دارد.
برای استفاده از کانال RCS، نیاز به یک شناسه فرستنده یا عامل پیامرسان RCS وجود دارد.
پرسشهای متداول
-
RCS چیست؟
-
عامل RCS یا RBM چیست؟
-
چگونه میتوان بررسی کرد که RCS روی دستگاه فعال است؟
پیکربندی یک جریان کاری احراز هویت
یک جریان کاری احراز هویت، مجموعهای از مراحل متوالی برای تأیید هویت کاربر است. این مراحل میتوانند شامل ارسال پیامک یا ایمیل حاوی رمز یکبارمصرف باشند که کاربر از آن برای تأیید هویت خود استفاده میکند.
میتوان یک جریان احراز هویت ایجاد کرد که ابتدا از یک کانال ترجیحی استفاده کند و در صورت ناموفق بودن، بهطور خودکار به کانال دیگری منتقل شود. کانالهای متعددی برای این منظور در دسترس هستند، از جمله پیامک، احراز هویت خاموش (Silent Authentication)، ایمیل و پیامرسانهای اینترنتی.
در این آموزش، یک جریان احراز هویت پیکربندی میشود که کانال RCS را بهعنوان گزینه پیشفرض استفاده میکند. اگر پیام از این طریق با موفقیت ارسال نشود، کانال بعدی در لیست مورد استفاده قرار میگیرد. پیامک بهعنوان کانال جایگزین انتخاب شده است، زیرا تقریباً روی همه دستگاهها در دسترس است.
راهاندازی پروژه Node.js
یک پوشه جدید برای پروژه ایجاد میشود، پروژه Node مقداردهی اولیه شده و وابستگیها نصب میشوند.
تنظیم متغیرهای محیطی
یک فایل .env ایجاد میشود و متغیرهای زیر در آن قرار میگیرند. هر متغیر نقش مشخصی در فرآیند احراز هویت دارد.
ارسال کد تأیید با RCS و مسیر جایگزین در Node.js
یک فایل جاوااسکریپت ایجاد میشود (برای مثال index.js) و وابستگیها مقداردهی اولیه میشوند:
سپس از متد ایجاد درخواست احراز هویت استفاده میشود و کانال RCS بهعنوان تلاش اول و پیامک بهعنوان مسیر جایگزین تنظیم میگردد.
اجرای جریان کاری و تست مسیر جایگزین
برای اجرای برنامه، دستور زیر اجرا میشود:
در این حالت، پیامی به شماره مشخصشده ارسال میشود. ابتدا تلاش میشود پیام از طریق RCS تحویل داده شود و در صورتی که این امکان وجود نداشته باشد، پیامک بهعنوان گزینه جایگزین ارسال خواهد شد.
نکته: اگر در پاسخ وبهوک اعلام شود که درخواست مسدود شده است، ممکن است شبکه مقصد توسط سیستمهای ضدتقلب مسدود شده باشد.
توسعههای احتمالی
هرچه ابزارهای ضدتقلب قویتر شوند، امنیت کاربران نیز افزایش مییابد. APIهای احراز هویت امکان ارسال رمزهای یکبارمصرف از طریق کانالهای مختلف را فراهم میکنند. منطق پیادهسازیشده در این آموزش مشابه استفاده از چند کانال برای مسیر جایگزین است، با تمرکز ویژه بر RCS و پیامک در محیط جاوااسکریپت. نمونههای بیشتری برای زبانهای دیگر نیز در مستندات قابل دسترسی هستند.
جمعبندی
در این مطلب مشاهده شد که چگونه میتوان از کانال RCS در یک API احراز هویت استفاده کرد و در صورت در دسترس نبودن آن، بهطور خودکار به کانال بعدی منتقل شد. این رویکرد، تجربه کاربری امنتر و روانتری را در فرآیندهای ورود و تأیید هویت فراهم میکند.
