إثبات ملكية رقم هاتف على جهاز كمبيوتر مكتبي باستخدام WebOTP API

بدءًا من الإصدار 93 من Chrome، يمكن للمواقع الإلكترونية إثبات ملكية أرقام الهواتف من متصفّح Chrome على أجهزة الكمبيوتر المكتبي.

يساعد WebOTP المستخدمين في إدخال رمز إثبات ملكية رقم الهاتف على موقع إلكتروني متوافق مع الأجهزة الجوّالة بضغطة واحدة بدون التبديل بين التطبيقات. يقدّم الإصدار 93 من Chrome هذه الوظيفة لأجهزة الكمبيوتر المكتبي أيضًا. اطّلِع على المزيد من المعلومات أدناه.

مقدمة

تُستخدَم عادةً كلمات المرور لمرة واحدة (OTP) المرسَلة عبر الرسائل القصيرة SMS لإثبات ملكية رقم هاتف، مثلاً كخطوة ثانية في المصادقة أو لإثبات ملكية الدفعات على الويب. ومع ذلك، فإنّ عملية التبديل بالكامل من الكمبيوتر المكتبي إلى الجهاز الجوّال وفتح تطبيق الرسائل القصيرة وحفظ رمز OTP وإدخاله على الموقع الإلكتروني الأصلي مرة أخرى على الكمبيوتر المكتبي تزيد من الصعوبات. ومن السهل ارتكاب أخطاء بهذه الطريقة، كما أنّها تكون عرضةً لصعوبات تتعلّق بهجمات التصيّد الاحتيالي.

تمنح واجهة برمجة التطبيقات WebOTP API المواقع الإلكترونية إمكانية الحصول على كلمة المرور لمرة واحدة من رسالة قصيرة مبرمَجًا و preenchimento automático do formulário para os usuários com apenas um toque sem alternar aplicativos. تتّبع الرسائل القصيرة تنسيقًا محدّدًا وهي مرتبطة بالمصدر، ما يقلل من خطر سرقة المواقع الإلكترونية المخادعة لرمز التحقّق المؤقت أيضًا.

WebOTP API في العمل

من حالات الاستخدام التي لم يتم توفيرها بعد في WebOTP هي استهداف طلبات التحقّق من رقم الهاتف من جهاز كمبيوتر مكتبي عن بُعد أو كمبيوتر محمول، لأنّ واجهة برمجة التطبيقات لا تعمل إلا على الأجهزة التي تتضمّن إمكانات الاتصال الهاتفي. تتيح واجهة برمجة التطبيقات الآن الاستماع إلى الرسائل القصيرة الواردة على الأجهزة الأخرى لمساعدة المستخدمين في إكمال عملية إثبات ملكية رقم الهاتف على أجهزة الكمبيوتر المكتبي في الإصدار 93 من Chrome.

WebOTP API على الكمبيوتر المكتبي

جرّبه الآن

المتطلبات الأساسية

عرض توضيحي

لتجربة هذه العملية السلسة لإثبات ملكية رقم الهاتف على الكمبيوتر المكتبي بنفسك، اتّبِع الخطوات التالية:

  1. انتقِل إلى https://web-otp-demo.glitch.me/ على الكمبيوتر المكتبي. انقر على الزر إثبات الملكية.
  2. أرسِل الرسالة النصية نفسها التي كانت على الشاشة من هاتف ثانٍ إلى جهاز Android.
  3. عند إرسال الرسالة القصيرة إلى جهاز Android، سيظهر مربّع حوار يسألك عما إذا كنت تريد إثبات ملكية رقم الهاتف على الكمبيوتر المكتبي. اضغط على إرسال لتأكيد الموافقة.
  4. على الكمبيوتر المكتبي، يجب أن يتم ملء رمز التحقّق المُرسَل إلى جهاز Android تلقائيًا في حقل الإدخال.

آلية عمل واجهة برمجة التطبيقات WebOTP

لنطّلِع على آلية عمل WebOTP API:

…
  const otp = await navigator.credentials.get({
    otp: { transport:['sms'] }
  });
  if (otp.code) input.value = otp.code;
…

يجب أن تكون رسالة SMS مُعدَّة باستخدام الرموز المخصّصة لمرة واحدة والمرتبطة بمصدر الرسالة.

Your OTP is: 123456.

@web-otp-demo.glitch.me #123456

يُرجى ملاحظة أنّ السطر الأخير يحتوي على المصدر الذي سيتم ربطه به ويسبقه @ ، يليه مفتاح OTP يسبقه #.

عند وصول الرسالة النصية، ينبثق شريط معلومات يطلب من المستخدم إثبات ملكية رقم هاتفه. بعد أن ينقر المستخدم على الزر Verify، يعيد المتصفّح توجيه رمز OTP تلقائيًا إلى الموقع الإلكتروني ويحلّ navigator.credentials.get(). يمكن للموقع الإلكتروني بعد ذلك استخراج رمز OTP وإكمال عملية إثبات الملكية.

اطّلِع على مزيد من المعلومات على إثبات ملكية أرقام الهواتف على الويب باستخدام WebOTP API.

كيفية استخدام WebOTP API على أجهزة الكمبيوتر المكتبي

إنّ إثبات ملكية رقم الهاتف عبر الرسائل القصيرة هو إجراء شائع ومتاح على جميع المنصات. يجب أن تكون أي حالات استخدام على الأجهزة الجوّالة قابلة للتطبيق على أجهزة الكمبيوتر المكتبي.

لا يختلف استخدام WebOTP API على أجهزة الكمبيوتر المكتبي عن استخدامه على الأجهزة الجوّالة، لذلك يمكن لمواقع الويب نشر الرمز نفسه على جميع المنصات.

توافق المتصفّح والتشغيل التفاعلي

تعتمد هذه الميزة على ميزة "مزامنة Chrome"، لذا لا تعمل إلا على Chrome في الوقت الحالي. لا يمكن تلقّي الرسائل القصيرة وإرسالها على نظام التشغيل iOS أو iPadOS في Chrome.

على الرغم من أنّ محرّكات المتصفّحات غير Chromium لا تُنفِّذ WebOTP API، يستخدم Safari تنسيق الرسائل القصيرة نفسه مع ميزة input[autocomplete="one-time-code"]. في Safari، ما دام العميل قد فعّل المزامنة التلقائية لتطبيق iMessage، يتم إعادة توجيه الرسالة إلى macOS عندما تصل رسالة قصيرة تتضمّن تنسيق رمز صالح لمرة واحدة مرتبط بالمصدر على iOS أو iPadOS، وذلك إذا كان المصدر مطابقًا. إذا ركز المستخدم على حقل الإدخال، سيقترح Safari رمز OTP على المستخدم إدخاله.

ملاحظات

نستفيد كثيرًا من ملاحظاتك لمساعدتنا في تحسين WebOTP API. ننصحك بتجربة هذه الميزة وإعلامنا برأيك.

صورة لويس فيلاسميل على Unsplash