System.Web.Security.AntiXss.AntiXssEncoder vs Microsoft.Security.Application.AntiXssEncoder

В ASP.NET 4.5 есть новое пространство имен System.Web.Security.AntiXss, которое включает в себя процедуры кодирования из версии 4.0 AntiXssLibrary (http://www.asp.net/aspnet/overview/aspnet-45/whats-new#_Toc318097382).

Последняя версия AntiXssLibrary - 4.2.1.

Я довольно смущен тем, какой тип я должен использовать для кодирования вывода HTML в моем новом проекте: встроенный System.Web.Security.AntiXss.AntiXssEncoder или Microsoft.Security.Application.AntiXssEncoder из AntiXssLibrary. Может ли кто-нибудь сказать мне, какой тип предпочтительнее использовать и почему?

Ответ 1

Тот, что находится в пространстве имен System.Web. *, является клоном того пространства имен Microsoft.Security. *, но система System.Web слегка изменена для улучшения характеристик производительности. Мы рекомендуем System.Web идти вперёд.

Если вы установите параметр <httpRuntime encoderType>, как описано в http://www.asp.net/aspnet/overview/aspnet-45/whats-new#_Toc318097382, вы можете просто использовать встроенные подпрограммы кодирования, такие как HttpUtility.HtmlEncode, и реализация будет предоставлена ​​библиотеками Anti-XSS.