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.
Questa operazione autenticherà il tuo utente e popolerà un'istanza condivisa di un token di autenticazione. Le informazioni aggiuntive dalla chiamata di autenticazione verranno utilizzate per popolare l'istanza del profilo utente condivisa con i campi di base.
Una richiesta Graph non andrà a buon fine perché non è presente alcun token d'accesso. Per ottenere un token d'accesso, riutilizzare il metodo di accesso classico (monitoraggio per impostazione predefinita su abilitato) o chiamare FBSDKLoginManager
logInFromViewController:configuration:completion:
con una configurazione che specifica che il monitoraggio è abilitato. Tieni presente che quando esegui questa azione, gli utenti vengono monitorati.
Hai bisogno di un token d'accesso. Riutilizza il metodo di accesos classico (per impostazione predefinita il monitoraggio è abilitato) oppure chiama FBSDKLoginManager
logInFromViewController:configuration:completion:
con una configurazione che specifica che il monitoraggio è abilitato. Ciò consentirà di ottenere un token d'accesso che può essere utilizzato per le chiamate API Graph. Tieni presente che quando esegui questa azione, gli utenti vengono monitorati.
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.
Sì. Sono state aggiunte due proprietà pubbliche:
loginTracking
, che può essere utilizzato per ottenere o impostare la preferenza di monitoraggio desiderata da utilizzare per i tentativi di accesso. Per impostazione predefinita, è .enabled
.
nonce
, che può essere utilizzato per ottenere o impostare un nonce opzionale da utilizzare per i tentativi di accesso. Un nonce valido deve essere una stringa non vuota senza spazi bianchi. Nota: un nonce non valido non verrà impostato. Invece, per i tentativi di accesso verranno utilizzate nonce univoci predefiniti.
Nessuna modifica dal punto di vista dell'utente. In background, gli attuali AuthenticationToken
, AccessToken
e Profile
verranno impostati su zero.
Al momento Limited Login non è disponibile per tvOS.
No. Stiamo sviluppando Limited Login per l'SDK React Native poiché è stato dichiarato obsoleto nell'SDK v9.0. Consulta la documentazione su React Native per maggiori dettagli.
Gli utenti esistenti che hanno effettuato l'accesso rimarranno associati alla modalità di accesso classico per impostazione predefinita. Solo gli utenti nuovi o disconnessi possono essere inizializzati per la modalità Limited Login.
No. Il flag Limited Login è specifico per dispositivo.
No. fb_login_id
continua a essere presente in modalità Limited Login. È il token d'accesso utente (entità separata) che viene scambiato con un token OIDC in modalità Limited Login.
La modalità Limited Login supporta solo il profilo di base (nome e foto) e le autorizzazioni e-mail. Se la tua app ha bisogno di autorizzazioni aziendali, non puoi usare Limited Login per richiederle. Tuttavia, gli utenti possono concedere autorizzazioni aziendali nella modalità di accesso classico nei seguenti modi:
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.