jump to navigation

Protegiendo la página en JavaScript Diciembre 4, 2006

Publicado por lineadecodigo en : JavaScript , trackback

La verdad es que JavaScript no es el lenguaje que deberíamos de utilizar para proteger nuestras páginas web. Ya que es altamente vulnerable. Pero para, al menos, hacer que nuestras páginas no sean leidas por curiosos, puede sernos de gran ayuda. Y todo de una manera muy sencilla.

La idea es proteger mediante una contraseña nuestra página y que solo los propietarios de dicha contraseña sean capaces de acceder al contenido de la misma.

Lo primero que deberemos de hacer es crear una función JavaScript, la cual pondremos en la cabecera de nuestra página HTML, que nos solicite una password. A esta función la llamaremos "validarPassword". La línea de código será la siguiente:

function validarPassword(){...}

En dicha función lo primero que tenemos que hacer es pedir una contraseña y almacenarla en una variable para su posterior analisis. Para pedir los datos nos apoyamos en la función prompt. Dicha función viene con el core del lenguaje. Y lo que nos ayudará será a mostrar una ventana con un input text y el texto que le pasemos como parámetro.

Quedandonos lo siguiente:

texto = prompt("Para ver la página introduzca su contraseña");

Ahora que tenemos en la variable texto la contraseña que ha introduccido el usuario por pantalla habría que validarla. En el caso que la contraseña no coincida con lo que esperamos (en nuestro ejemplo esperamos que se haya tecleado "lineadecodigo"), deberemos de volver a pedirla la contraseña al usuario. Es por ello que nos apoyaremos en un bucle while.

while(texto!="lineadecodigo"){
  alert("Password incorrecta");
  texto = prompt("Para ver la página introduzca su contraseña");
}

En el medio hemos utilizado el alert para mostrarle un mensaje al usuario indicandole que la contraseña no es válida.

En el caso que el texto introducido y lo esperado coincidan, el programa se saldrá del bucle. Entonces le mostraremos al usuaro un mensaje indicandole que la contraseña es válida. Es decir, que nos apoyaremos nuevamente en la función alert.

El código entero de la función será el siguiente:

<script>
  function validarPassword(){
    texto = prompt("Para ver la página introduzca su contraseña");
    while(texto!="lineadecodigo"){
      alert("Password incorrecta");
      texto = prompt("Para ver la página introduzca su contraseña");
    }
    alert("Password Correcta");
  }
</script>

Hay que tener en cuenta que este código es lo primero que se tiene que ejecutar en la página. Es por ello que pondremos una llamada a la función justo despues de la etiqueta <BODY> de nuestra página HTML.

El código será el siguiente:

<BODY>
<SCRIPT>validarPassword();</SCRIPT>

Hay que indicar que para llamar a la función simplemente se invoca mediante su nombre.

Al ser lo primero que se ejcuta antes de cargar la página, si el usuario no sabe la contraseña, nunca se cargará el resto de la página. Es decir, lo que vaya debajo de estas líneas, nunca se verá.

La página HTML entera quedará de la siguiente forma:

<html>
<head>
<title>Pagina con Password</title>

<script>
  function validarPassword(){
    texto = prompt("Para ver la página introduzca su contraseña");
    while(texto!="lineadecodigo"){
      alert("Password incorrecta");
      texto = prompt("Para ver la página introduzca su contraseña");
    }
    alert("Password Correcta");
  }
</script>
</head>

<body>
<script>validarPassword();</script>
Contenido secreto
</body>
</hmtl>

Para finalizar recordar que este código JavaScript no hace que nuestra página sea segura 100%. Solo nos sirve para poder parar a curiosos sin conocimiento técnicos. Pero menos es nada.

De hecho, podéis probar a ver que pasa si ejecutáis la página con el JavaScript del navegador desactivado... ¿Dónde está nuestra seguridad?

Si se quiere tener un control sobre la seguridad del contenido deberemos de delegar dicha seguridad al servidor. Consecuentemente deberemos de saber como se implementa mediante los diferentes lenguajes de servidor: ASP, JSP, Java Servlets,...

Articulos Similares:

Enviar entrada por email Enviar entrada por email | Imprimir Imprimir | 6613 visitas

1 Star2 Stars3 Stars4 Stars5 Stars (1 votos, media: 4.00 de 5)
Loading ... Loading ...

Comentarios»

1. JOSE - Septiembre 9, 2007

HOLA
CUANDO ESCRIVO LA CONTRASENA SE VE LA CONTRASENA Y QUIERO Q SE VEA ****** Ó ……..
EN SCRIPT
PORFA

2. rodrigo - Octubre 1, 2007

hola quiero q se vea la contrasena asi ******* Gracias

3. Miquel - Diciembre 14, 2007

Muchisimas gracias era la solucion
que estaba buscando.
¡salud!

4. TooR - Enero 2, 2008

Las funciones prompt()(javascript) e inputbox()(vbscript) no tienen la propiedad de los asteriscos para password(*****).

5. DAIhenka - Enero 31, 2008

como puedo hacer para que la linea donde pongo la contraseña se vea con asteriscos [********] y no se vean las letras?
Gracias!

6. Golon - Febrero 14, 2008

mucas gracias lo que necesitaba

7. Salvador - Marzo 29, 2008

hola, quisisera saber como agregar mas de una contraseña, es decir, generar una para cada usuario

8. marco amado - Abril 1, 2008

como podria hacer para que no se vea la contraseña osea el texto y en lugar de eso se vean ****

gracias

9. diego - Julio 1, 2008

funcion para que salga en el campo puro * por favor urgente gracias

10. carlos - Julio 30, 2008

necesito que no se vean los digitos, necesito que se vean asteriscos
necesito ayuda urgente (Es para un proyecto de la Universidad) por favor.

11. Damaris - Agosto 17, 2008

Hola!!
Tengo un problema!!

Me olvide mi contraseña, como hago para volver a entrar a mi e-mail???

12. diana - Diciembre 3, 2008

Necesito que la contraseña se vea con asteriscos please


Imagen CAPTCHA CAPTCHA Audio
Refrescar imagen