Domanda

L'altro momento in cui ho letto un articolo su OAuth.Ha descritto in particolare il token essere scambiati tra client e provider di servizi nel corso di una serie di richieste.

L'articolo ha anche detto che OAuth guadagni significativi popolarità in RESTful Api come strato di autorizzazione.Come ho capito, il RESTO dovrebbe essere tenuto completamente stateless.

Domanda:Non è questo il ripetuto lo scambio di token siluro RESTO del "essendo apolide" principio?IMHO il token può essere visto come una sorta di ID di sessione, no?

È stato utile?

Soluzione

I token OAuth sono esplicitamente un identificatore di sessione, l'interazione non è senza stato tra le richieste del token OAuth protocollo di negoziazione, come le richieste devono essere eseguite in una sequenza specifica, che esige di memorizzazione di ogni client sul server di cui hai bisogno per tenere traccia cose come quando sono stati rilasciati. Quindi sì, OAuth non viola i principi rigorosi di un'architettura RESTful.

Purtroppo c'è il mondo reale TM fare i conti con cui dobbiamo fare le cose come consentono alle applicazioni di autenticarsi sul conto di persone fisiche senza richiedere la propria password, che OAuth fa abbastanza bene. Sarebbe impossibile per implementare uno schema di autenticazione simile sicura senza questo tipo di stato. In effetti, una delle modifiche richieste dalla OAuth (1.0a) è stato quello di aggiungere più Stato al protocollo di negoziazione token per mitigare un rischio per la sicurezza.

Quindi, vuol siluro principio senza stato di REST? Sì. È importante? A meno che non si vive in una torre d'avorio: -)

Altri suggerimenti

L'autenticazione è uno stato che deve essere tracciata in qualche modo quando si tratta di web farmacologiche.In definitiva, se la tua app è tranquillo o no, il server deve essere in grado di tenere traccia di ogni utenti "autenticato stato" e, purtroppo, che richiede un certo tipo di elusione del sottostante natura apolide, del HTTP e di eventuali ulteriori trasporti/tecniche (come il RESTO) su di esso.

Di conseguenza, per lo sviluppo di qualsiasi tipo di autenticate app, un principio di stato deve essere scarpa cornuto in qualche parte, e se questo avviene in modo da OAuth sulla cima del RESTO, è così che deve essere!

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