2013-03-16 2 views
5

Sto costruendo un nuovo progetto con backbone e mi chiedevo quale sia l'approccio migliore per gestire le autorizzazioni dell'utente con esso. per esempio. se voglio che per alcuni utenti non venga reso un controllo specifico. dove dovrebbe essere la logica? Stavo pensando di controllare questo sulla funzione di inizializzazione della vista e di avvolgere la funzione di rendering con essa. Cosa faresti?gestire le autorizzazioni con backbone

risposta

0

Tutte le attività di sicurezza come l'autorizzazione e l'autenticazione devono essere gestite dal server. È così facile aggirarli nel client, rendendo irrilevanti tutte le operazioni auth/acl nel client. Usa sessione e cookie per gestirlo tramite l'implementazione del server.

vedere il file userSession.js here

+0

Non sono sicuro che sia ciò di cui ho bisogno. il modo in cui viene utilizzato è if (! userSession.authenticated()) { App.Router.navigate ('login', {trigger: true}); } sembra che abbiamo un modello: userSession che contiene contrassegni sulle autorizzazioni dell'utente e se non ha un permesso reindirizziamo a un'altra pagina. Ho bisogno dell'autorizzazione a livello di controllo, non a livello di pagina – Tsahi

+0

controlla il file controller.js puoi scegliere cosa rendere in base alla proprietà "ruolo", ad esempio, per l'amministratore rendere questo e quello e per manager o utente regolare che si sceglie di renderà qualcos'altro, ma ancora una volta questo è molto facile da bypassare, dovresti servire via server il codice che vuoi eseguire in base all'accesso o ad altre credenziali – danikoren

1

Vi rimando al Large Scale Javascript carta di Addy Osmany. Descrive l'idea di Facade che è anche responsabile della gestione delle autorizzazioni.

Il progetto aura ha lo scopo di applicare questo concetto, ma per ora manca la funzionalità di autorizzazione, come per me.