Directiva de seguridad de contenido (CSP)

Para mitigar una gran clase de posibles problemas de scripting entre sitios, el sistema de extensiones de Microsoft Edge ha incorporado la directiva de seguridad de contenido (CSP). Esto presenta algunas directivas estrictas que hacen que las extensiones sean más seguras de forma predeterminada y le proporciona la capacidad de crear y aplicar reglas que rigen los tipos de contenido que pueden cargar y ejecutar las extensiones y las aplicaciones.

En general, CSP funciona como un mecanismo de inclusión en bloques o permitidos para los recursos cargados o ejecutados por las extensiones. La definición de una directiva razonable para la extensión le permite tener en cuenta cuidadosamente los recursos que necesita la extensión y pedir al explorador que se asegure de que esos son los únicos recursos a los que la extensión tiene acceso. Las directivas proporcionan seguridad sobre los permisos de host que solicita la extensión; son una capa adicional de protección, no un reemplazo.

En la web, dicha directiva se define a través de un encabezado o meta elemento HTTP. Dentro del sistema de extensiones de Microsoft Edge, ninguno de los dos es un mecanismo adecuado. En su lugar, una directiva de extensión se define mediante el manifest.json archivo para la extensión de la siguiente manera:

{
    ...,
    "content_security_policy": "[POLICY STRING GOES HERE]"
    ...
}

Para obtener detalles completos sobre la sintaxis de CSP, eche un vistazo a la especificación de la directiva de seguridad de contenido de W3C y a Una introducción a la directiva de seguridad de contenido en HTML5Rocks.

Restricciones de directiva predeterminadas

Los paquetes que no definen un manifest_version no tienen una directiva de seguridad de contenido predeterminada.

Los paquetes que usan manifest_version tienen la siguiente directiva de seguridad de contenido predeterminada:

script-src 'self'; object-src 'self'