ASP.NET regola l'accesso all'Url richiesto utilizzando un particolare HttpModule chiamato UrlAuthorizationModule, il quale ricava le regole applicate dalla sezione authorization del web.config.
È possibile impostare l'autorizzazione con il livello di granularità richiesto dalla nostra applicazione, utilizzando l'elemento location del web.config, prendendo ad esempio il seguente frammento:
<location path="OnlyForAdmin.txt" >
<system.web>
<authorization>
<allow verbs="PUT" roles="Admin"/>
<deny users="*"/>
</authorization>
</system.web>
</location>
<location path="OnlyForCommunityManager.txt" >
<system.web>
<authorization>
<allow verbs="GET" roles="CommunityManager"/>
<deny users="*" />
</authorization>
</system.web>
</location> L'accesso ai due file di testo è stato limitato, mappando correttamente le estensioni in IIS questi saranno serviti solo ai ruoli specificati.
Al fine di impedire letture o scritture accidentali attraverso le classi di IO, come System.IO.File, è possibile utilizzare il metodo statico CheckUrlAccessForPrincipal della classe UrlAuthorizationModule.
if (UrlAuthorizationModule.CheckUrlAccessForPrincipal("/MyWebSite/OnlyForAdmin.txt", User, "PUT"))
{
InfoLabel.Text = "Posso accedere al file OnlyForAdmin.Txt";
//operazioni sul file...
}Il metodo accetta tre parametri, che sono il percorso relativo del file, un oggetto che implementi l'interfaccia IPrincipal, come ad esempio l'oggetto restituito dalla proprietà User della classe Page, ed infine una stringa che rappresenta l'accesso in sola lettura (GET, POST, HEAD) o scrittura (tutti gli altri).
- Trovare il Page not Found...
- #935 - Sfruttare l'evento LoadComplete della pagina
- ASPItalia.com Future Web Conference: 15 gennaio 2008, L'Aquila
- #947 - La direttiva OutputCache con ASP.NET 2.0 e 3.5
- Introduzione ad ASP.NET 3.5: novità e caratteristiche
- #923 - Caricare dinamicamente un HttpModule
- #948 - Recuperare l'ID del controllo che ha scatenato l'AsyncPostBack con ASP.NET AJAX
- #924 - Evitare problemi di path canonicalization con ASP.NET
- Nuova build per ASP.NET MVC: Preview 5
- Galleria fotografica dinamica con ASP.NET AJAX
- Realizzare un controllo custom in ASP.NET AJAX - Seconda parte
Esprimi il tuo giudizio su questo script:
Per procedere devi essere autenticato.
Aggiungi un nuovo commento »»»
Per inserire un commento, devi registrarti alla nostra community.







Stampa
Snippet
Download 


10annidi.ASPItalia.com: iscriviti alla competizione e vinci fantastici premi ogni mese!