المصادقة مقابل الوصول إلى البيانات

يوفر تسجيل دخول فيسبوك ميزتين رئيسيتين وهما: المصادقة وإمكانية الوصول إلى البيانات. علمًا بأن هاتين الميزتين لا تستبعد إحداهما الأخرى. ويمكنك استخدام تسجيل دخول فيسبوك لمصادقة الأشخاص دون التخطيط للوصول إلى بياناتهم. في هذه الحالة، لن تحتاج إلى طلب الحصول على أذونات أو إخضاع تطبيقك إلى عملية مراجعة التطبيقات.

تتوفر ميزة المصادقة والوصول إلى البيانات لفترة محدودة. ومع ذلك، تختلف فترات انتهاء صلاحية المصادقة والوصول إلى البيانات، وتعتمد على عدة عوامل.

المصادقة

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

انتهاء صلاحية المصادقة

عندما يستخدم تطبيقك تسجيل دخول فيسبوك لمصادقة شخص ما، فإنه يتلقى حينها رمز وصول مستخدم. وإذا كان تطبيقك يستخدم إحدى مجموعات Facebook SDK، فسيظل هذا الرمز صالحًا لمدة 60 يومًا تقريبًا. ومع ذلك، تعمل مجموعات SDK تلقائيًا على تحديث الرمز عندما يستخدم الشخص تطبيقك، وبالتالي تنتهي صلاحية الرموز بعد مرور 60 يومًا من آخر استخدام. وإذا كان تطبيقك لا يستخدم مجموعات Facebook SDK، فستكون بحاجة إلى تضمين رمز معين يعمل على تحديث رمز المستخدم يدويًا. إذا انتهت صلاحية رمز وصول المستخدم، فيجب أن يضع تطبيقك المستخدم ضمن دفق تسجيل الدخول مرة أخرى.

الوصول إلى البيانات

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

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

انتهاء صلاحية الوصول إلى البيانات

تنتهي صلاحية الوصول إلى البيانات بعد مرور 90 يومًا وفقًا لآخر مرة كان المستخدم نشطًا فيها. وعند انتهاء فترة الصلاحية هذه التي تستغرق 90 يومًا، سيظل بإمكان المستخدم الوصول إلى تطبيقك، أي أن مصادقة المستخدم لا تزال قائمة، ولكن لن يتمكّن تطبيقك من الوصول إلى بياناته. لاستعادة إمكانية الوصول إلى البيانات، يجب أن يطلب تطبيقك من المستخدم إعادة تصريح أذونات التطبيق لديك.

لطلب إعادة التصريح باستخدام مجموعة Facebook SDK لنظام Android أو مجموعة Facebook SDK لنظام iOS، يمكنك استدعاء reauthorizeDataAccess() في LoginManager.

بالنسبة لمجموعة Facebook SDK للغة Javascript، استخدم auth_type: 'reauthorize'.

FB.login(function(response) {
  // Original FB.login code
}, { auth_type: 'reauthorize' })

بالنسبة للويب، يمكنك إجراء الاستدعاء باستخدام auth_type=reauthorize.

لا تنتهي صلاحية الأذونات التالية:

  • ads_read
  • ads_management
  • business_management
  • configure_page_transactions
  • pages_manage_ads
  • pages_manage_cta
  • pages_manage_instant_articles

  • pages_manage_engagement

  • pages_manage_metadata
  • pages_manage_posts
  • pages_messaging
  • pages_read_engagement
  • pages_read_user_content
  • pages_show_list
  • read_audience_network_insights
  • read_insights

اختبار موعد انتهاء صلاحية الوصول إلى بيانات المستخدم

من خلال مجموعات SDK لنظام Android ونظام iOS، يمكنك الحصول على موعد انتهاء صلاحية وصول تطبيقك إلى بيانات المستخدم عن طريق استدعاء dataAccessExpirationTime في كائن رمز الوصول. وتعمل هذه الطريقة على إرجاع تاريخ يحدد موعد انتهاء صلاحية الوصول إلى البيانات.

يمكنك أيضًا اختبار ما إذا كان الوصول إلى بيانات المستخدم قد انتهت صلاحيته أم لا عن طريق استدعاء isDataAccessExpired الذي يعمل على إرجاع قيمة منطقية.

من جانب الخادم، يمكنك استرداد هذه المعلومات من نقطة النهاية debug_token.

على الويب، يمكنك عرض وقت انتهاء الصلاحية في payload: data_access_expiration_time.

{
  status: 'connected',
  authResponse: {
    accessToken: '...',
    expiresIn:'...',
    reauthorize_required_in:'...',
    data_access_expiration_time: '...',
    signedRequest:'...',
    userID:'...'
  }
}

انتهاء صلاحية الإذن

إذا لم يستخدم تطبيقك إذنًا ما لمدة 90 يومًا، فستنتهي صلاحية هذا الإذن بغض النظر عن وقت آخر نشاط للمستخدم. ويحدث ذلك حتى في حالة اعتماد الإذن من خلال عملية مراجعة التطبيقات.