Saltar al contenido principal

Encabezado de Política de Seguridad de Contenidos (CSP)

Encabezados de Política de Seguridad de Contenidos (CSP) con MTCaptcha

A continuación se muestran dos ejemplos de cómo habilitar MTCaptcha con encabezados HTTP de Content Security Policy (CSP):

Encabezados CSP Simples (Menos Seguros)

La forma más sencilla es configurar los siguientes encabezados, aunque esto proporciona seguridad débil ya que requiere unsafe-inline.

Content-Security-Policy: script-src 'self' 'unsafe-inline' https://service.mtcaptcha.com https://service2.mtcaptcha.com;
Content-Security-Policy: frame-src https://service.mtcaptcha.com https://service2.mtcaptcha.com;

Encabezados CSP Seguros

Para una configuración CSP más segura sin usar dynamic nonce o unsafe-inline:

  1. Crea un nuevo archivo mtcaptcha-integration.js y coloca en él el código de inicialización e importación de MTCaptcha.
    Para ver la configuración completa de inicialización e importación de MTCaptcha, consulta el Generador de Código de MTCaptcha y la Guía de Desarrolladores de MTCaptcha.
// This code should be placed in a file called mtcaptcha-integration.js
var mtcaptchaConfig = {
"sitekey": "<YOUR SITE KEY>"
...
};
(function(){var mt_service = document.createElement('script');mt_service.async = true;mt_service.src = 'https://service.mtcaptcha.com/mtcv1/client/mtcaptcha.min.js';(document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(mt_service);
var mt_service2 = document.createElement('script');mt_service2.async = true;mt_service2.src = 'https://service2.mtcaptcha.com/mtcv1/client/mtcaptcha2.min.js';(document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(mt_service2);}) ();
  1. Importa el archivo mtcaptcha-integration.js en la página web usando la siguiente etiqueta de script:

<script src="mtcaptcha-integration.js" ></script>

  1. Agrega los siguientes encabezados CSP:
Content-Security-Policy: script-src 'self'  https://service.mtcaptcha.com https://service2.mtcaptcha.com;  
Content-Security-Policy: frame-src https://service.mtcaptcha.com https://service2.mtcaptcha.com;