In response to the upcoming changes to ATT enforcement, we made changes to the iOS SDK and the SDK no longer provides valid user access tokens in scenarios where the user opts out of ATT. The access token validation or Graph API requests may throw errors like OAuthException - “Invalid OAuth access token - Cannot parse access token”. Our recommendation is that users integrate Limited Login following the official documentation:
When users opt out of ATT, all Facebook Login traffic will be performed on the Limited Login domain. Limited Login does not support business permissions. Our recommendation is that developers integrate Limited Login following the official documentation. See limited login supported permissions in this document.
When users opt out of ATT, all Facebook Login traffic will be performed on the limited login domain via the in-app browser. Limited Login does not support fast app switch (that is, redirecting to fb app to login). See limitations section of the Limited Login for iOS document.
Please see the official documentation, Validating the Limited Login OIDC Token.
Please see key considerations for user_friends with Limited Login in the Permissions in Limited Login document.
We made changes both to the iOS SDK and our core login systems to support the privacy manifest requirements based on the upcoming App Transparency Tracking enforcement so that iOS users who have opted out of ATT are able to use FBLogin. As a result, we do not plan to release the privacy manifest as part of a minor update.
سيؤدي ذلك إلى مصادقة المستخدم لديك وملء مثيل مشترك لأي رمز مصادقة. وسيتم استخدام المعلومات الإضافية من استدعاء المصادقة من أجل ملء مثيل الملف الشخصي المشترك للمستخدم مع الحقول الأساسية.
سيفشل طلب graph نظرًا لعدم وجود رمز وصول. وللحصول على رمز وصول، أعد استخدام طريقة تسجيل الدخول التقليدي (يتم تعيين التتبع افتراضيًا إلى enabled (مُمكن))، أو قم باستدعاء FBSDKLoginManager
logInFromViewController:configuration:completion:
باستخدام تكوين يحدد أنه تم تمكين التتبع. وكن على علم بأنه عند القيام بذلك، يتم تتبع المستخدمين.
تحتاج إلى رمز وصول. لذا أعد استخدام طريقة تسجيل الدخول التقليدية (يتم تعيين التتبع افتراضيًا إلى enabled (ممكّن))، أو قم باستدعاء FBSDKLoginManager
logInFromViewController:configuration:completion:
باستخدام تكوين يحدد أنه تم تمكين التتبع. وسيسمح لك ذلك بالحصول على رمز وصول يمكن استخدامه لعمليات استدعاء واجهة Graph API. وكن على علم بأنه عند القيام بذلك، يتم تتبع المستخدمين.
When you use Limited Login to request user_friends
from a user, we provide you with a list of app scoped IDs (ASIDs) associated with the friends of the authorizing user, if the friends have also granted your app the user_friends
permission. Depending on how you have implemented Limited Login, some of the ASIDs on this list may represent other users that have connected to your app using Limited Login. To ensure that Limited Login safeguards are maintained for such users, do not make Graph API calls using their ASIDs. Instead, continue to rely on Limited Login for these users.
نعم. تمت إضافة خاصيتين عامتين وهما:
الخاصية loginTracking
التي يمكن استخدامها في الحصول على تفضيل التتبع المطلوب أو تعيينه لاستخدامه في محاولات تسجيل الدخول. ويتم تعيين القيمة الافتراضية إلى .enabled
.
الخاصية nonce
التي يمكن استخدامها في الحصول على رقم مؤقت اختياري أو تعيينه لاستخدامه في محاولات تسجيل الدخول. ويجب أن يكون الرقم المؤقت الصالح عبارة عن سلسلة غير فارغة بدون مسافات بيضاء. ملاحظة: لن يتم تعيين أي رقم مؤقت غير صالح. وبدلًا من ذلك، سيتم استخدام أرقام مؤقتة فريدة وافتراضية لمحاولات تسجيل الدخول.
لا يوجد تغيير من منظور المستخدم. وضمن الخيارات المتقدمة، سيتم تعيين قيم AuthenticationToken
وAccessToken
وProfile
الحالية إلى لا شيء.
تسجيل الدخول المحدود غير متاح لنظام tvOS في هذا الوقت.
لا، نحن لا نقوم بتطوير تسجيل الدخول المحدود لمجموعة SDK لإطار React Native بسبب إيقاف استخدامه في مجموعة SDK بالإصدار 9.0. ولمزيد من التفاصيل، راجع وثائق React Native.
سيظل المستخدمون الحاليون الذين تم تسجيل دخولهم مُعينين إلى وضع تسجيل الدخول التقليدي افتراضيًا. ويمكن تهيئة المستخدمين الجدد أو الذين تم تسجيل خروجهم فقط لوضع تسجيل الدخول المحدود.
لا، تكون علامة تسجيل الدخول المحدود خاصة بالجهاز.
يمكنك تسوية المستخدمين بالبريد الإلكتروني و/أو المعرف على مستوى التطبيق.
لا، لا يزال المعرف fb_login_id
مُعينًا في وضع تسجيل الدخول المحدود. ويُعد هذا رمز وصول المستخدم (كيان منفصل) يتم تبديله برمز OIDC في وضع تسجيل الدخول المحدود.
لن يدعم وضع تسجيل الدخول المحدود إلا الملف الشخصي الأساسي (الاسم والصورة) وأذونات البريد الإلكتروني. وإذا كان تطبيقك يطلب أذونات الأنشطة التجارية، فلا يمكنك استخدام تسجيل الدخول المحدود لطلبها. ومع ذلك، يمكن للمستخدمين لديك منح أذونات الأنشطة التجارية في وضع تسجيل الدخول التقليدي بالطرق التالية:
Yes, but this will require the use of an app access token to request the token_for_business
field on the User node. Limited Login safeguards are not supported in this context. For apps that are associated with your business by means of Business Manager, you can use the app-scoped ID (ASID) included in the OIDC token returned after a successful login to get a unique string for a user. Using your app's app access token, request the token_for_business
field on the User
node and pass in the user's app-scoped ID. This call returns a string which is the same for this user across all the apps managed by the same Business Manager.
GET /ASID?fields=token_for_business
This returns the values.
{ "id": "1234567890" "token_for_business": "weg23ro87gfewblwjef" }
Usage notes:
token_for_business
will also changetoken_for_business
field and the app is not associated with a Business Manager, the call returns an error.token_for_business
is a token, not an ID - it cannot be used directly against the Graph API to access a person's information. You should still store the ID in your database.