2014-09-10 5 views
10

Quando tento di accedere al mio sito con il mio account di Facebook, ricevo un messaggio di avviso, che è imprecisa:di Facebook è vago e inutile

Submit for Login Review 
Some of the permissions below have not been approved for use by Facebook. 

Le autorizzazioni a cui si riferiscono sono elencati di seguito questo messaggio :

****** will receive the following info: your public profile, email address, 
birthday, website and personal description. 

Queste ultime autorizzazioni non mappano le autorizzazioni nell'elenco delle autorizzazioni Facebook App che deve essere approvato per:

  • manage_notifications
  • read_insights
  • publish_actions
  • read_friendlists
  • manage_pages

non posso per la vita di me scoprire che i permessi dovrei richiedere l'approvazione per. Tutto quello che voglio fare è usare Facebook come meccanismo di accesso per il nostro sito ... è così. La mia comprensione è che ciò non richiede alcuna approvazione, ma chiaramente lo fa, altrimenti non avrei ricevuto il messaggio "Invia per la revisione del login".

risposta

16

non sono sicuro che la documentazione si sta guardando, ma per le versioni API 2.0 o superiore, le uniche autorizzazioni è possibile richiedere presso gli utilizzatori finali senza presentando il loro utilizzo su Facebook per la revisione sono:

  • public_profile
  • user_friends
  • email

in caso di autorizzazioni nel scope parametro della finestra di dialogo Oauth/Login diverso dai tre elencati sopra, gli utenti che non sono amministratori/sviluppatori/tester dell'app non saranno sollecitati a concederli (finché non saranno approvati)

La lista può richiedere senza l'approvazione è menzionato nel seguente documentazione:

https://developers.facebook.com/docs/apps/review/login

https://developers.facebook.com/docs/facebook-login/permissions/v2.1#categories

+1

ho intenzione di accettare questa come la risposta, perché è informativo e indica esattamente la documentazione richiesta per comprendere il problema.Si scopre che l'applicazione in cui sto lavorando (sono una nuova assunzione qui e sto ancora imparando la base di codice) in realtà vuole il permesso di pubblicare le autorizzazioni. Mi era stato detto dal programmatore precedente che avevamo solo bisogno di un permesso di accesso, ma è risultato inaccurato. Quando ho trovato il codice di connessione di Facebook, sono stato in grado di confermare che stiamo effettivamente chiedendo più autorizzazioni di quanto pensassi. Grazie mille per la tua risposta. – Rjak

+1

Le autorizzazioni che hai elencato nella tua domanda originale sono considerate 'estese' - queste sono mostrate su una seconda [o terza] pagina della finestra di dialogo e garantiscono un accesso significativo per agire per conto di un utente, ma per la maggior parte degli sviluppatori, a partire dalla versione 2.0 la distinzione tra "autorizzazioni utente" e "autorizzazioni estese" non è importante quanto la distinzione tra "revisionabile" e "consentito per impostazione predefinita" – Igy

2

Quando si chiama l'API FB si ha la possibilità di impostare una cosa chiamata "scope". Ecco un esempio di come questo può apparire:

'Facebook' => array ( 
            "enabled" => true, 
            "keys" => 
             array (
              "id" => "762xxxxxxxxxxxxx", 
              "secret" => "b1831068a1xxxxxxxxxxxxxx" 
             ), 
            "scope" => "email, user_about_me, user_birthday, user_hometown, manage_notifications , read_insights, publish_actions, read_friendlists, manage_pages" 
      ), 

se si richiede più di:

public_profile 
user_friends 
email 

Sarà necessario avere la vostra applicazione verificato.

La soluzione al vostro problema è quello di limitare la portata delle informazioni che si desidera l'accesso a, quindi questo risolverebbe il problema:

'Facebook' => array ( 
            "enabled" => true, 
            "keys" => 
             array (
              "id" => "762xxxxxxxxxxxxx", 
              "secret" => "b1831068a1xxxxxxxxxxxxxx" 
             ), 
            "scope" => "email, public_profile, user_friends" 
      ),