¿Cuáles son la integridad y la crossorigin atributos?

Bootstrapcdn cambiado recientemente sus enlaces. Ahora se parece a esto:

<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css" 
rel="stylesheet" 
integrity="sha256-MfvZlkHCEqatNoGiOXveE8FIwMzZg4W85qfrfIFBfYc= sha512-dTfge/zgoMYpP7QbHy4gWMEGsbsdZeCXz7irItjcC3sPUFtf0kuFbDz/ixG7ArTxmDjLXDmezHubeNikyKGVyQ==" 
crossorigin="anonymous">

¿Qué hacen los integrity y crossorigin atributos decir? ¿Cómo pueden afectar a la carga de la hoja de estilos?

InformationsquelleAutor New user | 2015-08-16

2 Kommentare

  1. 221

    Ambos atributos se han añadido a Bootstrap CDN para implementar Subresource Integridad.

    Subresource Integridad define un mecanismo por el cual los agentes de usuario puede comprobar que un exagerado de recursos, se ha entregado sin la manipulación inesperada Referencia

    Integridad atributo es para permitir que el navegador para comprobar el archivo de origen para garantizar que el código nunca se carga si la fuente ha sido manipulado.

    Crossorigin atributo está presente cuando una solicitud es cargado usando «CORS», que es ahora un requisito de SRI comprobación cuando no se cargan desde el mismo origen».
    Más info en crossorigin

    Más detalles sobre Bootstrap Cdn aplicación

    • Sólo se utiliza w3c html validator y recibió este mensaje cuando se utiliza la «integridad» atributo: Attribute integrity not allowed on element link at this point.
    • Creo que se puede asumir con seguridad que el w3c herramienta no ha sido actualizado para incluir SRI apoyo todavía
    • Sí CSP todavía es muy nuevo, sólo Chrome beta soporta esta protección ahora con el Firefox que viene muy pronto. No hay ningún explorador se cae con desconocidos atributos, que yo sepa; por lo que el validador de W3C debe ser sólo una guía más que la verdad.
    • FYI: Presentó un error con el validador demasiado: github.com/validator/validator/issues/151
    • Mantenedor de la W3C HTML Corrector (también conocido como validador) aquí. Sí, lo siento, el corrector no sabe nada acerca de la integrity atributo. Pero voy a añadir soporte para pronto, como se pidió en la github.com/validator/validator/issues/151. Si lo desea, puede suscribirse a la edición para recibir una notificación cuando las tierras.
    • OnlineWebCheck.com apoya el integrity atributo (yo soy el responsable de que el corrector).
    • ¿Qué sucede si usted elige no incluir esos?
    • La falta de medidas de seguridad mencionadas anteriormente.
    • Quién hace el control? Bootstrap JavaScript? Si sólo estoy usando zapatos del archivo css y no su archivo JavaScript hacer los atributos de hacer nada?
    • Que los navegadores actualmente honor ‘integridad’ haciendo el cálculo y negarse a cargar no válido los recursos? El enlace de arriba para la «integridad» de los estados que aún no está implementado en un navegador, pero que archivo es de varios años.
    • Respondiendo a mi propia pregunta, la página de developer.mozilla.org/en-US/docs/Web/Security/… indica que todos los navegadores excepto Internet Explorer (por supuesto) implementar la «integridad».

  2. 81

    integridad – define el valor hash de un recurso (como una suma de comprobación) que deben cumplirse para hacer que el navegador ejecute. El hash se asegura de que el archivo fue sin modificar y contiene datos esperados. De esta manera el navegador no carga diferentes (por ejemplo, malicioso) de los recursos. Imaginar la situación en la que los archivos JavaScript fueron objeto de la CDN, y no había forma de saberlo. Integridad atributo impide que la carga de contenido que no coincidan.

    No válido SRI será bloqueado (Chrome developer tools), independientemente de la cruz-origen. A continuación NO CORS caso cuando integridad atributo no coinciden:

    ¿Cuáles son la integridad y la crossorigin atributos?

    Integridad puede ser calculado uso: https://www.srihash.org/
    O escribir en la consola (enlace):

    openssl dgst -sha384 -binary FILENAME.js | openssl base64 -A

    crossorigin – define las opciones que se utilizan cuando se carga el recurso de un servidor de origen diferente. (Ver CORS (Cross-Origin Resource Sharing) aquí: https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS). Efectivamente los cambios petición HTTP enviada por el navegador. Si «crossorigin» atributo se añade – es resultado de la adición de origen: <ORIGEN> par clave-valor en la petición HTTP como se muestra a continuación.

    ¿Cuáles son la integridad y la crossorigin atributos?

    crossorigin se puede establecer: «anónimo» o «de uso de credenciales». Ambos serán el resultado de la adición de origen: en la solicitud. La última, sin embargo, se asegurará de que las credenciales se comprueban. No crossorigin atributo en la etiqueta resultará en el envío de la solicitud sin origen: par clave-valor.

    Aquí es un caso cuando se solicita «se usa credenciales» de la CDN:

    <script 
            src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.6/js/bootstrap.min.js"
            integrity="sha384-vBWWzlZJ8ea9aCX4pEW3rVHjgjt7zpkNpZk+02D9phzyeVkE+jo0ieGizqPLForn" 
            crossorigin="use-credentials"></script>

    Un navegador puede cancelar el pedido si crossorigin configurado incorrectamente.

    ¿Cuáles son la integridad y la crossorigin atributos?

    Enlaces

    https://www.w3.org/TR/cors/

    https://tools.ietf.org/html/rfc6454

    https://developer.mozilla.org/en-US/docs/Web/HTML/Element/link

    Blogs

    https://frederik-braun.com/using-subresource-integrity.html

    https://web-security.guru/en/web-security/subresource-integrity

    • Muy útil la respuesta!
    • Gracias por tu respuesta. Me encanta los detalles técnicos!
    • Se necesita la url para calcular el SRI, gracias!

Kommentieren Sie den Artikel

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein

Pruebas en línea