2011-11-26 18 views
5

ho il seguente scenario:Devise forza di logout se disconnesso da Facebook

  1. utente accede a Facebook connect (ideare, omniauth)
  2. utente inizia la navigazione all'interno del sito
  3. utente si disconnette da Facebook
  4. L'utente può ancora navigare intorno. < - Come posso evitare che ciò accada?

Io fondamentalmente voglio reindirizzare l'utente alla pagina di accesso se è disconnesso da Facebook

sto usando Rails 3.1 con disposizione testamentaria, omniauth.

risposta

0

Penso che tu abbia un equivoco qui. Una volta che l'utente ha concesso i privilegi della tua app per accedere al profilo di Facebook - in virtù del fatto di essere connesso a Facebook in un'altra scheda del browser, o accedendo esplicitamente a Facebook quando viene reindirizzato - allora l'handshake di OAuth è fatto e l'utente è autenticato. Lo stato di autenticazione è ora mantenuto localmente con la tua app; presumibilmente hai un cookie di sessione con lo user_id, che Devise gestirà per te.

L'accesso di Facebook sul browser è necessario solo per accedere a, non per autenticare ogni singola richiesta.

Si potrebbe presumibilmente eseguire l'handshake OAuth su ogni singola richiesta, ma ciò comporterebbe un notevole sovraccarico delle prestazioni, e anche Facebook potrebbe limitarsi.

Qual è il business case per questo scenario? Perché pensi di volere questo?

Problemi correlati