Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En este artículo se proporcionan comentarios adicionales a la documentación de referencia de esta API.
La XslCompiledTransform clase es un procesador XSLT que admite la sintaxis XSLT 1.0. Se trata de una nueva implementación e incluye mejoras de rendimiento en comparación con la clase obsoleta XslTransform . La estructura de la XslCompiledTransform clase es muy similar a la XslTransform clase . El Load método carga y compila la hoja de estilos, mientras que el Transform método ejecuta la transformación XSLT.
La compatibilidad con la función XSLT document()
y los bloques de script incrustados están deshabilitados de forma predeterminada. Estas características se pueden habilitar mediante la creación de un XsltSettings objeto y su paso al Load método .
Para obtener más información, vea Usar la clase XslCompiledTransform y Migrar desde la clase XslTransform.
Consideraciones de seguridad
Al crear una aplicación que use la XslCompiledTransform clase , debe tener en cuenta los siguientes elementos y sus implicaciones:
El script XSLT está deshabilitado de manera predeterminada. El scripting XSLT solo debe habilitarse si necesita compatibilidad con scripts y está trabajando en un entorno de plena confianza.
La función XSLT
document()
está deshabilitada de forma predeterminada. Si habilita ladocument()
función, restrinja los recursos a los que se puede acceder pasando un XmlSecureResolver objeto al Transform método .Los objetos de extensión están habilitados de forma predeterminada. Si se pasa un objeto XsltArgumentList que contiene objetos de extensión al método Transform, estos se utilizan.
Las hojas de estilos XSLT pueden incluir referencias a otros archivos y bloques de scripts incrustados. Un usuario malintencionado puede aprovechar esto proporcionando datos o hojas de estilos que, cuando se ejecuta, puede hacer que el sistema procese hasta que el equipo se quede sin recursos.
Las aplicaciones XSLT que se ejecutan en un entorno de confianza mixta pueden dar lugar a la suplantación de la hoja de estilos. Por ejemplo, un usuario malintencionado puede cargar un objeto con una hoja de estilos perjudicial y entregarlo a otro usuario que posteriormente llama al Transform método y ejecuta la transformación.
Estos problemas de seguridad se pueden mitigar no habilitando el scripting o la document()
función a menos que la hoja de estilos proceda de un origen de confianza y no acepte XslCompiledTransform objetos, hojas de estilos XSLT o datos de origen XML de un origen que no sea de confianza.