Domanda

Ho un rotaie 2.3.5 applicazione con un'API voglio proteggere.

Non c'è nessun utente - è un app per webservice stile app (più come un servizio di Amazon di facebook), e così vorrei attuarlo utilizzando un approccio OAuth a due vie

.

Ho cercato di utilizzare l'implementazione di server OAuth-plug come un inizio:

http://github.com/pelle/oauth-plugin

... ma è costruito in attesa a tre zampe (web flusso di reindirizzamento) OAuth.

Prima di scavare più in profondità apportare modifiche ad esso per sostenere due gambe, volevo vedere se ci fosse un modo più semplice, o se qualcuno ha avuto un approccio migliore per un'applicazione Rails per implementare essere un fornitore di OAuth a due gambe.

È stato utile?

Soluzione

In precedenza, l'unica buona risposta era di incidere circa nel OAuth-plugin per ottenere questo sottoinsieme dell'interazione OAuth. Da allora, l'OAuth-plugin è stato riscritta, e ora è possibile utilizzare verso l'alto, semplicemente aggiungendo il giusto tipo di filtro di autenticazione al controller:

class ApiController < ApplicationController

    include OAuth::Controllers::ApplicationControllerMethods

    oauthenticate :strategies => :two_legged, :interactive => false

    # ...

end

Altri suggerimenti

io non sono a conoscenza di eventuali alternative a OAuth-plug in questo momento, anche se è sicuramente sempre lungo nel dente e maturo per una sostituzione. La mia raccomandazione è quello di generare il server OAuth da oauth-plugin, quindi estrarre le dipendenze dal plugin (che sono solo un valore di moduli paio di metodi) e cestinare il plugin. Poi modificare tutto per le vostre esigenze. OAuth 2 gambe non dovrebbe essere un grosso problema dal momento che è più semplice che in ogni caso 3 zampe, e la mia sensazione è che OAuth-plugin non è utilizzabile in questi giorni, senza modifiche significative in ogni caso.

La carne di OAuth è da tempo stato estratto nella gemma base di OAuth in ogni caso, in modo che l'OAuth-plugin è una sorta di in un limbo. L'architettura fa alcune ipotesi mano pesante su quale sistema di autenticazione che si sta utilizzando, e il codice generato è datato. Quindi, per me, OAuth-plugin serve più come un esempio di come filo tutto in su, piuttosto che qualcosa che la maggior parte dei siti vorrebbe usare fuori dalla scatola.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top