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.
Hệ thống sẽ xác thực người dùng của bạn và điền phiên bản mã xác thực được chia sẻ. Thông tin bổ sung từ lệnh gọi xác thực sẽ được dùng để điền phiên bản Trang cá nhân của người dùng được chia sẻ với các trường thông tin cơ bản.
Bạn sẽ không thực hiện được yêu cầu đồ thị vì không có mã truy cập. Để lấy mã truy cập, hãy dùng lại phương thức đăng nhập cũ (bật tính năng theo dõi theo mặc định) hoặc gọi FBSDKLoginManager
logInFromViewController:configuration:completion:
thông qua cấu hình chỉ định bật tính năng theo dõi đó. Hãy nhớ rằng khi bạn làm điều này, người dùng sẽ được theo dõi.
Bạn cần có mã truy cập. Dùng lại phương thức đăng nhập cũ (bật tính năng theo dõi theo mặc định) hoặc gọi FBSDKLoginManager
logInFromViewController:configuration:completion:
thông qua cấu hình chỉ định bật tính năng theo dõi đó. Khi đó, bạn có thể nhận Mã truy cập dùng để thực hiện lệnh gọi API Đồ thị. Hãy nhớ rằng khi bạn làm điều này, người dùng sẽ được theo dõi.
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.
Có. Chúng tôi đã thêm 2 thuộc tính công khai sau đây:
loginTracking
có thể dùng để lấy hoặc đặt tùy chọn theo dõi mong muốn cho các lần đăng nhập. Thuộc tính này được đặt mặc định thành .enabled
.
nonce
có thể dùng để lấy hoặc đặt số ngẫu nhiên không bắt buộc cho các lần đăng nhập. Một số ngẫu nhiên hợp lệ phải là chuỗi không trống và không có khoảng trắng. Lưu ý: Số ngẫu nhiên không hợp lệ sẽ không được đặt. Thay vào đó, hệ thống sẽ sử dụng số ngẫu nhiên riêng biệt cho các lần đăng nhập.
Không có thay đổi gì xét trên phương diện người dùng. Về cơ bản, hoạt động này sẽ đặt AuthenticationToken
, AccessToken
và Profile
hiện tại về 0.
Chế độ Giới hạn đăng nhập hiện không dùng được cho tvOS.
Không. Chúng tôi không phát triển chế độ Giới hạn đăng nhập cho React Native SDK do React Native đã ngừng hoạt động trong SDK phiên bản 9.0. Hãy xem tài liệu về React Native để biết thêm thông tin chi tiết.
Theo mặc định, những người dùng này sẽ vẫn được đối ghép với chế độ Đăng nhập cũ. Bạn chỉ có thể bắt đầu chế độ Giới hạn đăng nhập cho những người dùng mới hoặc đã đăng xuất.
Không. Cờ Giới hạn đăng nhập dành riêng cho từng thiết bị.
Bạn có thể hợp nhất người dùng bằng email và/hoặc ASID.
Không. fb_login_id
vẫn còn khi ở chế độ Giới hạn đăng nhập. Đây là mã truy cập của người dùng (thực thể riêng biệt) được hoán đổi với mã OIDC khi ở chế độ Giới hạn đăng nhập.
Chế độ Giới hạn đăng nhập chỉ hỗ trợ các quyền cơ bản đối với trang cá nhân (tên và ảnh) và email. Nếu ứng dụng của bạn cần các quyền đối với trang kinh doanh, bạn không thể yêu cầu các quyền đó khi ở chế độ Giới hạn đăng nhập. Tuy nhiên, người dùng của bạn có thể cấp các quyền đối với trang kinh doanh ở chế độ Đăng nhập cũ bằng những cách sau đây:
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.