ASP.NET 4.5 incorpora direttamente l'AntiXSS Library, una library creata da Microsoft e che consente di eseguire l'encoding di testo che arriva dall'utente, per gli usi più opportuni.
A differenza dell'implementazione predefinita, questa library è in grado di gestire le differenze di encoding presenti quando si vuole utilizzare un valore che proviene dall'utente in HTML, attributi HTML, CSS, JavaScript e così via.
Di default, per compatibilità con le versioni precedenti, il nuovo encoder non viene utilizzato direttamente nei progetti migrati alla nuova versione, ma è necessario modificare il web.config:
<httpRuntime encoderType="System.Web.Security.AntiXss.AntiXssEncoder, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
Questo attributo sfrutta la possibilità di cambiare il tipo di encoder utilizzato dai normali metodi a cui siamo abituati, come HttpUtility.HtmlEncode, senza dover cambiare il codice, sfruttando l'ormai noto provider model.
Quando viene attivata questa feature (disponibile in automatico con i nuovi progetti), ASP.NET 4.5 è in grado di incorporare in automatico le funzionalità di AntiXSS Library di seguito riportate:
- HtmlEncode, HtmlFormUrlEncode, and HtmlAttributeEncode
- XmlAttributeEncode and XmlEncode
- UrlEncode and UrlPathEncode
- CssEncode
Questa modifica consente di dare maggior sicurezza alle applicazioni, senza dover far altro che cambiare il tipo di encoder utilizzato.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Eseguire query per recuperare il padre di un record che sfrutta il tipo HierarchyID in Entity Framework
Utilizzare Copilot con Azure Cosmos DB
Fornire parametri ad un Web component HTML
Eliminare una project wiki di Azure DevOps
Recuperare l'ultima versione di una release di GitHub
Selettore CSS :has() e i suoi casi d'uso avanzati
Introduzione ai web component HTML
Testare l'invio dei messaggi con Event Hubs Data Explorer
Creare una libreria CSS universale - Rotazione degli elementi
Estrarre dati randomici da una lista di oggetti in C#
Utilizzare Azure Cosmos DB con i vettori
Paginare i risultati con QuickGrid in Blazor