[asp.net 2.0 vb][Sicurezza]Impedire il cambio di valore del Querystrin...

giovedì 24 giugno 2010 - 15.13

fab11 Profilo | Newbie

Buongiorno a tutti!
come da titolo come faccio a impedire che un utente cambiando l'id del querystring vada alla pagina di quell'id
es "www.blabla.aspx?id=5"
che cosa devo scrivere nello script Page_Load per impedire che un utente cambiando il 5 con un 6 ad esempio vada alla pagina dell'articolo 6?
premetto che già controllo id dell'utente con HttpContext.Current.User.Identity.Name

GRAZIE

Gluck74 Profilo | Guru

he he, non puoi.

O meglio, non senza una policy.
Voglio dire che se l'utente ha accesso agli articoli, e la pagina seleziona l'articolo dal querystring, qualsiasi numero che metti (in automatico o a mano), la pagina presenterà quell'articolo.
Una policy sugli utenti prevede di associare gli articoli agli utenti che lo possono vedere, o a gruppi di utenti. In questo modo l'utente vede solo l'articolo al quale è associato, o se l'articolo è associato al gruppo di appartenenza

Un altro modo che può funzionare, ma non garantisce l'esclusione dalla lettura (causa altri trucchetti), è di mettere l'ID dell'articolo non in querystring ma passandolo con una POST.

Altro metodo, anche questo non garantisce l'esclusione dalla lettura, ed è più difficile da implementare e prevede alcune conoscenze tecniche, è di utilizzare l' "URL Rewriting"
http://weblogs.asp.net/scottgu/archive/2007/02/26/tip-trick-url-rewriting-with-asp-net.aspx
http://msdn.microsoft.com/en-us/library/ms972974.aspx
http://www.simple-talk.com/dotnet/asp.net/a-complete-url-rewriting-solution-for-asp.net-2.0/


ciao e buon lavoro

____________
Ricordati di utilizzare il tasto "Accetta" se i nostri consigli ti sono serviti a risolvere il problema.
È il modo per ringraziare chi ti ha aiutato.

Amin86a Profilo | Newbie

utilizza le variabili session...cosi nessun puo modificarle... oppure usa sempre una variabile session ma come memoria del dato selezionato....e fai controllare tramite c# o vb se la variabile e effettivamente la stessa di quella selezionata....ma penso che cmq tanto valga utilizzare solo la session
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5