Atributo de integridad HTML <script>

El atributo de integridad se usa para otorgar permiso al navegador para verificar el script obtenido y asegurarse de que el código fuente nunca se cargue. Se utiliza para comprobar si el tercero ha alterado el recurso o no. 

Subresource Integrity (SRI) es una función de seguridad desarrollada por w3comsortium que se utiliza para otorgar permiso a un navegador para verificar todos los scripts externos que se buscarían. Da seguridad de que los guiones no son alterados por terceros. 

El proceso de trabajo de SRI va a seguir los siguientes pasos: 

  • La página web contiene el valor hash y, por otro lado, el servidor contiene el archivo .js.
  • Ahora, el navegador coincide con el valor hash del atributo de integridad
  • Al final, si el valor de hash coincide, el archivo se usa; de lo contrario, el archivo se bloquea.

Sintaxis 

<script integrity="filehash">

 Valores de atributos: 

  • filehash: Indica el valor hash del archivo script externo.

Ejemplo 1:   

HTML

<!DOCTYPE html>
<html>
 
<head>
    <title>
        HTML script integrity Attribute
    </title>
</head>
 
<body style="text-align:center;">
    <h1>
        GeeksForGeeks
    </h1>
 
    <h2>
        HTML script integrity Attribute
    </h2>
 
    <script id="myGeeks" type="text/javascript"
        src="my_script.js"
        integrity=
"sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo">
    </script>
    <br>
 
    <button>Submit</button>
</body>
 
</html>

Producción:

Ejemplo 2: 

HTML

<!DOCTYPE html>
<html>
 
<head>
    <title>
        script tag
    </title>
 
    <style>
        body {
 
            text-align: center;
        }
 
        h1 {
            color: green;
        }
    </style>
</head>
 
<body>
    <h1>GeeksforGeeks</h1>
 
    <h2>
        HTML integrity Attribute in <script> Element
    </h2>
    <p id="Geeks"></p>
 
 
 
    <script charset="UTF-8" integrity=
"e0d123e5f316bef78bfdf5a008837577OOo_2.0.1_LinuxIntel_install.tar.gz">
 
        document.getElementById("Geeks")
            .innerHTML = "Hello GeeksforGeeks!";
    </script>
</body>
 
</html>

Producción:

Navegadores compatibles: 

  • Google Chrome 45.0 y superior
  • Borde 17.0 y superior
  • Firefox 43.0 y superior
  • Safari de Apple 11.1 y superior
  • Ópera

Publicación traducida automáticamente

Artículo escrito por ManasChhabra2 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *