logo
small logo
  • Producto
  • Comprar
  • Ayuda
  • About
  • Consola de usarios Ayuda
    • en
    • de
    • JP
    • ZH
  • Página principal
  • /
  • Blogs
  • /
  • Seguridad del script del informe
  • Cómo construir biblioteca libgdiplus desde la fuente

    2 de octubre de 2020

    Al usar las bibliotecas FastReport .NET (Core), FastReport Open Source y FastReport Mono en el

    read more
  • Paquetes FastReport .NET y .NET 5.0

    17 de diciembre de 2020

    UPD: Se aplica a las versiones de FastReport. NET anteriores a 2022.2. Los paquetes de

    read more
  • Cómo migrar proyectos de FastReport Open Source a FastReport Core

    9 de marzo de 2019

    FastReport Open Source acaba de aparecer, pero ya puedo anticipar algunas de las preguntas de

    read more
  • Informes y documentos PDF en Blazor

    5 de abril de 2021

    Microsoft ha lanzado recientemente una plataforma web llamada Blazor. Este marco permite crear una interfaz

    read more
  • Cómo conectarse a Elasticsearch

    10 de noviembre de 2021

    Ahora los productos FastReport .NET, Core, Mono y OpenSource permiten conectarse a Elasticsearch. Elasticsearch es

    read more

Seguridad del script del informe

7 de septiembre de 2020

FastReport .NET soporta el cálculo de expresiones para mostrar valores en la forma deseada o cualquier condición de presentación del objeto. También es posible procesar eventos para cada objeto del informe, por ejemplo, antes de imprimirlo. Los elementos de control de eventos se colocan en un script de informe que soporta los lenguajes C # y VB.NET. Además de procesar eventos, el script puede contener casi cualquier cálculo o acción que pueda generar los datos necesarios o cambiar el comportamiento del informe, según lo requiera el desarrollador de la plantilla del informe.

Antes de construir el programa en el lenguaje de secuencia de comandos del informe, el generador de informes tiene en cuenta todas las expresiones, funciones y llamadas a los parámetros del informe. Luego, el programa se combina con el script que había escrito el desarrollador de la plantilla de informe. El script resultante se compila y carga como una biblioteca en la aplicación que trabaja con el generador de informes.

Report script security

Cuando ejecuta informes en aplicaciones web, puede editarlos con el diseñador en línea. La edición se realiza mediante un navegador, el informe editado se envía al servidor y luego se puede construir allí.

Si bien los informes son editados por desarrolladores confiables y se ejecutan en un entorno aislado, la capacidad de usar scripts en informes le brinda libertad y posibilidades casi ilimitadas para el procesamiento y visualización de datos. La edición y ejecución están bajo control. Tan pronto como aparece la posibilidad de acceso general a la edición de informes a través del navegador y diseñador en línea, surge la cuestión de la seguridad de crear informes en el servidor. Es posible inyectar código malicioso en el script y las expresiones del informe.

Informe de seguridad del script

Para evitar la ejecución de un código malicioso en el script y las expresiones de informes cuando se trabaja en la web, se han agregado características de seguridad especiales en FastReport .NET 2020.3.22. Los cambios se refieren a FastReport .NET, FastReport .NET Core, FastReport Mono y FastReport Open Source.

Las funciones de seguridad están activas de forma predeterminada, pero los desarrolladores pueden cambiarlas o deshabilitarlas según sea necesario en sus aplicaciones.

Nuevos métodos y propiedades:

bool FastReport.Utils.Config.EnableScriptSecurity: habilita o deshabilita la verificación del script del informe. Funciona solo cuando los informes se ejecutan en aplicaciones web
(FastReport.Utils.Config.WebMode == verdadero). Esta propiedad se establece en True de forma predeterminada (habilitada).

event FastReport.Utils.Config.OnEnableScriptSecurityChanged: el evento se activa cuando se cambia EnableScriptSecurity. Se puede utilizar para controles de seguridad adicionales.

FastReport.Web.WebReport.SetScriptSecurity (IScriptChecker scriptChecker): instala una implementación personalizada de un método de verificación que anula los controles de seguridad integrados.

ScriptSecurityProperties FastReport.Utils.Config.ScriptSecurityProps: parámetros para configurar la verificación de seguridad del script. Se establece en NULL si se está ejecutando una aplicación que no es web. (FastReport.Utils.Config.WebMode == falso).

bool FastReport.Utils.Config.ScriptSecurityProps.AddStubClasses: habilita o deshabilita la adición de clases de código auxiliar para el script. Esta propiedad se establece en True de forma predeterminada (habilitada). No se anula configurando su propio controlador SetScriptSecurity (ver arriba).

event FastReport.Utils.Config.ScriptSecurityProps.OnStopListChanged: el evento se llama cuando se cambia StopList. Se puede utilizar para controles de seguridad adicionales.

string [] FastReport.Utils.Config.ScriptSecurityProps.StopList: una lista de palabras clave que no deben usarse en el script del informe. Contiene una lista predeterminada de palabras.

FastReport.Utils.Config.ScriptSecurityProps.SetDefaultStopList (): establece el valor predeterminado de StopList (descarta los cambios).

El complejo de protección de scripts de informes desarrollado permite minimizar la amenaza de inyección de código malicioso y su ejecución en el lado del servidor.

Report script security

Es necesario recordar que incluso el uso de elementos de control de seguridad de scripts de informes integrados no proporciona una protección del cien por cien contra la inyección de código malicioso en las plantillas guardadas. Por lo tanto, recomendamos encarecidamente mantener registros de acceso en las aplicaciones web y permitir que un número limitado de usuarios privilegiados editen las plantillas de informes.

about product comprar
avatar
Aleksandr Fediashov
Fast Reports Team: Aleksandr Fediashov - Team Lead at Fast Reports
.NET Core Open Source Script

Add comment
logo
  • 800-985-8986 (English, US)
  • +4930568373928 (German)
  • +55 19 98147-8148 (Portuguese)
  • info@fast-report.com
  • 901 N Pitt Str #325 Alexandria VA 22314
  • Comprar
  • Descargar
  • Documentación
  • Opiniones de usuarios
  • Cómo desinstalar nuestros productos
  • FAQ
  • Toturial en vídeo
  • Foro
  • Documentación técnica
  • Nuestras noticias
  • Quiénes somos
  • Socios
  • Extended licensing
  • Contactos

© 1998-2023 by Fast Reports Inc.

  • Privacidad