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 script pre e post esecuzione di un workflow di GitHub
Conoscere il rendering Server o WebAssembly a runtime in Blazor
Popolare una classe a partire dal testo, con Semantic Kernel e ASP.NET Core Web API
Proteggere le risorse Azure con private link e private endpoints
Utilizzare gRPC su App Service di Azure
Rinnovare il token di una GitHub App durante l'esecuzione di un workflow
Migliorare l'organizzazione delle risorse con Azure Policy
Eseguire query manipolando liste di tipi semplici con Entity Framework Core
Migliorare la sicurezza dei prompt con Azure AI Studio
Gestire la cancellazione di una richiesta in streaming da Blazor
Disabilitare automaticamente un workflow di GitHub
Cancellare una run di un workflow di GitHub