يوفر تسجيل دخول فيسبوك ميزتين رئيسيتين وهما: المصادقة وإمكانية الوصول إلى البيانات. علمًا بأن هاتين الميزتين لا تستبعد إحداهما الأخرى. ويمكنك استخدام تسجيل دخول فيسبوك لمصادقة الأشخاص دون التخطيط للوصول إلى بياناتهم. في هذه الحالة، لن تحتاج إلى طلب الحصول على أذونات أو إخضاع تطبيقك إلى عملية مراجعة التطبيقات.
تتوفر ميزة المصادقة والوصول إلى البيانات لفترة محدودة. ومع ذلك، تختلف فترات انتهاء صلاحية المصادقة والوصول إلى البيانات، وتعتمد على عدة عوامل.
تتيح ميزة المصادقة للأشخاص تسجيل الدخول إلى تطبيق الهاتف المحمول أو الويب وإنشاء حساب عن طريق استخدام بيانات اعتمادهم على فيسبوك. علمًا بأنهم لا يحتاجون إلى إنشاء كلمة سر منفصلة أو تذكّرها.
عندما يستخدم تطبيقك تسجيل دخول فيسبوك لمصادقة شخص ما، فإنه يتلقى حينها رمز وصول مستخدم. وإذا كان تطبيقك يستخدم إحدى مجموعات 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 يومًا، فستنتهي صلاحية هذا الإذن بغض النظر عن وقت آخر نشاط للمستخدم. ويحدث ذلك حتى في حالة اعتماد الإذن من خلال عملية مراجعة التطبيقات.