che serve contenuto web statico o dinamico basato sul gruppo di utenti

3

Ho bisogno di aiuto per capire un problema che ho, e che sicuramente anche altri hanno avuto.

Sto lavorando a un'applicazione web che consente agli utenti di interfacciarsi con un database. L'applicazione in generale ha più pagine con navigazione a schede, che visualizza e consente di modificare i contenuti più . Finora, funziona bene.

Devo limitare l'accesso a determinate pagine e disabilitare il contenuto dinamico (modificabile) dell'applicazione in base al gruppo (nel database) a cui l'utente appartiene, sembra semplice, forse lo è. Il problema però è che le pagine modificabili hanno input di pulsanti e testo che dovrebbero scomparire per un utente in un gruppo limitato. Inoltre, alcune selezioni di navigazione a schede non dovrebbero essere visualizzate per gli utenti di un gruppo limitato. A che punto della mia applicazione dovrei gestire questa logica?

L'utilizzo di javascript per questa logica sembra l'approccio sbagliato (utilizzando una libreria come underscore.js con modelli), ma è necessario nascondere o disabilitare più opzioni. Il mio altro pensiero era avere pagine web statiche e dinamiche e servire quelle basate sul gruppo User.

È chiaro che mi sto perdendo su questo argomento, e potrei usare un po 'di intuizione su come questo problema dovrebbe essere affrontato in un modo che sia sano di mente così il prossimo ragazzo dietro di me non dirà ... wtf.

Non sono sicuro che questa domanda sia più adatta allo stackoverflow o qui. Quindi spero che questo sia il posto giusto!

    
posta fbynite 11.01.2013 - 04:40
fonte

1 risposta

4

Questo tipo di cose viene solitamente gestito da uno script lato server: se un utente è loggato e ha il permesso di modificare la pagina, lo script inserisce controlli appropriati nell'output HTML. Inoltre, ogni volta che viene ricevuta una richiesta correlata alla modifica della pagina, il controllo deve essere ripetuto; se non lo è, è molto facile per gli utenti malintenzionati aggirare la protezione (supponendo che l'URL corretto sia tutto ciò che serve).

Fare questo sul lato client non è davvero un'opzione; lo script sul lato client può essere modificato dall'utente e non c'è assolutamente nulla che tu possa fare al riguardo. Puoi inserire i controlli di modifica lato client, ma il controllo delle autorizzazioni deve assolutamente avvenire sul server, altrimenti bypassarlo è semplice come cambiare un valore di variabile nella console javascript (o digitando un javascript: URL nella barra degli indirizzi se sei davvero vecchio-scuola).

    
risposta data 11.01.2013 - 09:07
fonte

Leggi altre domande sui tag