2010-12-13 20 views
27

Sto implementando un plug-in che è incorporabile in diversi siti (a la Meebo, Wibiya) e voglio utilizzare Facebook Connect. Il plug-in dovrebbe essere incorporato in siti con nomi di dominio diversi. Il problema è che Facebook Connect consente di registrare un solo dominio per ogni applicazione.Facebook Connect per un'applicazione con più domini?

La domanda è, come posso avere più domini per una singola applicazione Facebook, assumendo:

  1. Quando gli utenti "Consenti" l'applicazione su un sito, essi non dovranno "Consenti" si anche su altri siti.

  2. Preferibilmente, dopo il log-in iniziale, gli utenti non vedranno un'apertura a comparsa su ogni sito a cui si collegano (ad es. - preferirei non aprire un collegamento al mio dominio e fare il log -in processo da lì).

Esiste comunque?
In caso contrario, la mia unica opzione è gestire tutti i log-in da un singolo dominio e trasferire i cookie ai domini originali?
E se passo i cookie tra domini, come posso essere sicuro che Facebook non bloccherà questo tipo di comportamento in futuro?

Apprezzerei qualsiasi suggerimento, anche se preferirei una soluzione ufficiale sugli hack, se possibile.

+0

Ho lo stesso problema e ho creato una richiesta di funzionalità per questo, se vuoi unirti per favore clicca su subscribe e "Posso riprodurlo" su questo link: http://developers.facebook.com/bugs/261827430571426 Greetz, Simon – Simon

risposta

2

Suppongo che stai usando facebook.php di Naitik Shah? Il tuo widget dovrebbe essere presente in ogni pagina e includere lo async script connect-js. Attualmente sto sviluppando un'applicazione basata su login di Facebook.

Direi che la soluzione migliore è accedere al dominio e passare il cookie. La tua app/widget sarà l'unico con cui consentono di condividere informazioni. Nulla dovrebbe essere diverso nel funzionamento da una soluzione a singola pagina. Prevedo un plug-in PHP che esegue un login da un dominio esterno e passa attraverso il cookie al sito tramite il widget. restituisci i cookie in modo sicuro come desideri (tranne che per qualcosa di losco come archiviarlo in un div e recuperarlo ... o qualcosa che un hacker potrebbe provare a fare spoofing). il sito utilizzerà quindi i cookie per scopi di account e ID utente e il widget controllerà tutte le azioni di accesso e la ricerca della sessione utilizzando lo script asincrono (ma instradato attraverso un dominio diverso).

Mi dispiace, ma non posso essere più di aiuto, ma questa è l'unica soluzione che riesco a pensare, e sembra che tu abbia già fatto lo stesso.

In termini di mantenimento del controllo della sessione tra domini diversi, è necessario che il cookie di terze parti sia attivo. Una volta che la tua pagina è stata attivata per il tuo dominio, avrai già il cookie per quel dominio se non hai effettuato il logout o non è scaduto. Un vantaggio dell'utilizzo di un dominio di gestione esterno.

Sembra che questo sia anche il modo più affidabile rispetto a qualsiasi hack riuscito per più domini, perché vedrei fb e Oauth2.0 come ok con una condivisione approvata di parti (cookie) a un'altra parte approvata dal parte approvata. Ma .. Potrebbe essere problematico se pensano che l'utente avrà problemi di privacy, perché potresti potenzialmente condividere il cookie su qualsiasi sito senza il permesso dell'utente. Quindi devi stare attento a informare l'utente di tutti i siti a cui verranno automaticamente registrati e trattarli con rispetto.

Buona fortuna, spero che tu ci faccia sapere come va.

+0

Non proprio quello che speravo, ma alla fine abbiamo usato questo approccio ... – Ofirov

+0

Qualsiasi codice funzionante per questo @Ofirov? Sono bloccato in questo. Apprezzo la tua risposta :-) – Gogol

0

Esiste una tecnica semplice e pulita -> Single Sign On (SSO). Puoi cercare su di esso.

Problemi correlati