0
FACULTAD DE INGENIERÍA Escuela Profesional de Ingeniería Informática y de Sistemas
SEGURIDAD EN PHP USO DE SESIONES
Introducción Qué son las sesiones? Las sesiones son un mecanismo basado en cookies que permiten identificar a los usuarios...
Empezar una Sesión <ul><li>Para empezar a trabajar una sesión en PHP lo primero es iniciarla la sesión, para ello tenemos ...
Empezar una Sesión –  session_start() <ul><li>Usaremos como ejemplo para iniciar una sesión con  la función  session_start...
Empezar una Sesión –  session_start() SID (Session ID) PHP para identificar una sesión, lo realiza a través de un número S...
ID de una Sesión –  session_id() Se usa para proporcionar (leer) el número ID de sesión que se ha inicializado. También se...
Almacenar Información –  $_SESSION Es un arreglo (matriz) asociativa que contiene las variables de sesión disponibles en l...
Función:  session_unset Elimina todas la variables de la sesión.
Función:  session_destroy Destruir la sesión
Ejemplo:  01
Ejemplo:  01- index.php <?php session_start(); ?> <p>BIENVENIDOS</p> <form name=&quot;form1&quot; method=&quot;post&quot; ...
Ejemplo:  01 – pagina2.html <?php session_start(); if ($_SESSION[&quot;ESTADO&quot;] != &quot;OK&quot;)   header(&quot;Loc...
Ejemplo:  02 – index.php
Ejemplo:  02 – index.php <form action=&quot;control.php&quot; method=&quot;POST&quot;> <tr> <td colspan=&quot;2&quot; alig...
Ejemplo:  02 – control.php <?PHP session_start(); //vemos si el usuario y contraseña es válido if ($_POST[&quot;usuario&qu...
Ejemplo:  02 – aplicacion.php <?PHP include (&quot; seguridad.php &quot;);?> <html> <head> <title>Aplicación segura</title...
Ejemplo:  02 – seguridad.php <?PHP //Inicio la sesión session_start(); //COMPRUEBA QUE EL USUARIO ESTA AUTENTIFICADO if  (...
Ejemplo:  02 – otra.php <?PHP include (&quot; seguridad.php &quot;);?> <html> <head> <title>Empresa XYZ</title> </head> <b...
Ejemplo:  02 – salir.php <?PHP session_start(); session_destroy(); ?> <html> <head>  <title>Fin de Sesión</title>  </head>...
Ejemplo:  02 Home Page index.php control.php salir.php otra.php aplicacion.php seguridad.php Ingreso de Datos Validar Dato...
FUNCIONES HEADER() INCLUDE()
Redireccionar –  header() header (&quot; Location:  http://www.php.net&quot;);  exit; Cabecera &quot;Location:&quot;  head...
Reutilizar Código –  include() Permite reutilizar porciones de código (script, o simple html) cuantas veces quieras. Es de...
ALGORITMOS
Algoritmo –  01 index.php < form  method=&quot;post&quot; action=&quot; comprobar.php &quot;> <p>Leer  <input name=&quot;t...
Algoritmo –  01 comprobar.php <?php // Comprueba un Campo Ej. Nombre // Ambito: Solo String y Longitud 2..20 function   co...
Algoritmo –  01 ereg (&quot;^[ a-zA-Z -_ ]{2,20} $ &quot;,  $nombre_usuario ) Función EREG : ejecuta el matching de una ex...
Upcoming SlideShare
Loading in...5
×

Sesiones en-php1536

963

Published on

Published in: Technology
1 Comment
0 Likes
Statistics
Notes
  • ¡Pero que necesidad de escribir estos códigos tan terribles!
    NO VUELVO A ESTE PORTAL
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Be the first to like this

No Downloads
Views
Total Views
963
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
50
Comments
1
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Sesiones en-php1536"

  1. 1. FACULTAD DE INGENIERÍA Escuela Profesional de Ingeniería Informática y de Sistemas
  2. 2. SEGURIDAD EN PHP USO DE SESIONES
  3. 3. Introducción Qué son las sesiones? Las sesiones son un mecanismo basado en cookies que permiten identificar a los usuarios que acceden a un sitio Web, de esta manera almacenar información referente a sus transacciones.
  4. 4. Empezar una Sesión <ul><li>Para empezar a trabajar una sesión en PHP lo primero es iniciarla la sesión, para ello tenemos dos caminos: </li></ul><ul><ul><li>session_start() </li></ul></ul><ul><ul><li>session_register(‘mi_var’) </li></ul></ul>
  5. 5. Empezar una Sesión – session_start() <ul><li>Usaremos como ejemplo para iniciar una sesión con la función session_start() , esta función debe estar ANTES de cualquier otro código. </li></ul><ul><ul><ul><ul><ul><li><?php </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>session_start(); </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>sentencias PHP; </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>… </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>?> </li></ul></ul></ul></ul></ul>- Esta función en caso de que el visitante no tenga una sesión la crea y si ya tiene una sesión continúa en ella.
  6. 6. Empezar una Sesión – session_start() SID (Session ID) PHP para identificar una sesión, lo realiza a través de un número SID. Esto se le proporciona al cliente para identificarse de forma exclusiva. Este SID siempre se crea al usar la función session_start(). Si se usa session_register(). El valor del SID se almacena en la variable global PHPSESSID.
  7. 7. ID de una Sesión – session_id() Se usa para proporcionar (leer) el número ID de sesión que se ha inicializado. También se usa esta función para cambiar el ID de la sesión actual. echo (&quot;TU ID: &quot;. session_id() );
  8. 8. Almacenar Información – $_SESSION Es un arreglo (matriz) asociativa que contiene las variables de sesión disponibles en la aplicación web actual. $_SESSION [“autorizado&quot;] = &quot;OK&quot;
  9. 9. Función: session_unset Elimina todas la variables de la sesión.
  10. 10. Función: session_destroy Destruir la sesión
  11. 11. Ejemplo: 01
  12. 12. Ejemplo: 01- index.php <?php session_start(); ?> <p>BIENVENIDOS</p> <form name=&quot;form1&quot; method=&quot;post&quot; action=&quot;pagina2.php&quot;> <p>Nombre <input name=&quot;txt_nombre&quot; type=&quot;text&quot; id=&quot;txt_nombre&quot;> <?php $_SESSION[&quot;ESTADO&quot;] = &quot;OK&quot; ?> </p> <p> <input type=&quot;submit&quot; name=&quot;Submit&quot; value=&quot;Enviar&quot;> </p> </form> Crear Sesión Crear Variable de Sesión
  13. 13. Ejemplo: 01 – pagina2.html <?php session_start(); if ($_SESSION[&quot;ESTADO&quot;] != &quot;OK&quot;) header(&quot;Location: index.php &quot;); ?> <?php echo (&quot;Hola &quot;.$_POST[&quot;txt_nombre&quot;]); ?>
  14. 14. Ejemplo: 02 – index.php
  15. 15. Ejemplo: 02 – index.php <form action=&quot;control.php&quot; method=&quot;POST&quot;> <tr> <td colspan=&quot;2&quot; align=&quot;center&quot; <?PHP if ($_GET[&quot;errorusuario&quot;]==&quot;si&quot;){?> bgcolor=red><span style=&quot;color:ffffff&quot;><b>Datos incorrectos</b></span> <?PHP }else{?> bgcolor=#cccccc>Introduce tu clave de acceso <?PHP }?> </td> </tr><br> <tr> <td align=&quot;right&quot;>Usuario:</td> <td><input type=&quot;Text&quot; name=&quot; usuario &quot; size=&quot;8&quot; maxlength=&quot;50&quot;></td> </tr><br> <tr> <td align=&quot;right&quot;>Clave:</td> <td><input type=&quot;password&quot; name=&quot; contrasena &quot; size=&quot;8&quot; maxlength=&quot;50&quot;></td> </tr><br> <tr> <td> <input type=&quot;Submit“ value=&quot;ENTRAR&quot;></td> </tr> </form>
  16. 16. Ejemplo: 02 – control.php <?PHP session_start(); //vemos si el usuario y contraseña es válido if ($_POST[&quot;usuario&quot;]==“coquito&quot; && $_POST[&quot;contrasena&quot;]==&quot;123&quot;){ //usuario y contraseña válidos //Crear variable para la sesión $_SESSION[&quot;autentificado&quot;]= “1&quot;; $_SESSION[&quot;user&quot;]= $_POST[&quot;usuario&quot;]; $_SESSION[&quot;pass&quot;]= $_POST[&quot;contrasena&quot;]; header (&quot;Location: aplicacion.php &quot;); }else { //si no existe, ir a la Página de Inicio header(&quot;Location: index.php?errorusuario=si &quot;); } ?>
  17. 17. Ejemplo: 02 – aplicacion.php <?PHP include (&quot; seguridad.php &quot;);?> <html> <head> <title>Aplicación segura</title> </head> <body> <h1>Bienvenido <?PHP echo $_SESSION[&quot;user&quot;];?> </h1> <br> ---- <br> Usuario: <?PHP echo $_SESSION[&quot;user&quot;];?> <br> ---- <br><br> <a href=&quot; otra.php &quot;>Continuar</a> </body> </html>
  18. 18. Ejemplo: 02 – seguridad.php <?PHP //Inicio la sesión session_start(); //COMPRUEBA QUE EL USUARIO ESTA AUTENTIFICADO if ($_SESSION[&quot;autentificado&quot;] != “1&quot; ) { //si no existe, se dirige a la Página de Inicio header(&quot;Location: index.php &quot;); //salimos del script exit(); } ?>
  19. 19. Ejemplo: 02 – otra.php <?PHP include (&quot; seguridad.php &quot;);?> <html> <head> <title>Empresa XYZ</title> </head> <body> <h1>Bienvenido <?PHP echo $_SESSION[&quot;user&quot;];?> </h1> <br><hr> Sistema de la Empresa XYZ<hr> <br> <br><br> <a href=&quot; salir.php &quot;>Salir</a> </body> </html>
  20. 20. Ejemplo: 02 – salir.php <?PHP session_start(); session_destroy(); ?> <html> <head> <title>Fin de Sesión</title> </head> <body> Gracias por tu acceso… <br><br> <a href=&quot; index.php &quot;>Ir a la Página de Inicio</a> </body> </html>
  21. 21. Ejemplo: 02 Home Page index.php control.php salir.php otra.php aplicacion.php seguridad.php Ingreso de Datos Validar Datos y Crear Variables de Sesion Datos Erróneos Datos OK Página Segura Página Segura
  22. 22. FUNCIONES HEADER() INCLUDE()
  23. 23. Redireccionar – header() header (&quot; Location: http://www.php.net&quot;); exit; Cabecera &quot;Location:&quot; header (&quot; Location: index.php?error=1&quot;);
  24. 24. Reutilizar Código – include() Permite reutilizar porciones de código (script, o simple html) cuantas veces quieras. Es decir pega el código en donde es llamado.
  25. 25. ALGORITMOS
  26. 26. Algoritmo – 01 index.php < form method=&quot;post&quot; action=&quot; comprobar.php &quot;> <p>Leer <input name=&quot;txt_x&quot; type=&quot;text&quot; > </p> <p> <input type=&quot;submit&quot; value=&quot;Enviar&quot;> </p> </form>
  27. 27. Algoritmo – 01 comprobar.php <?php // Comprueba un Campo Ej. Nombre // Ambito: Solo String y Longitud 2..20 function comprobar_cadena_limite ($nombre_usuario ) { if ( ereg (&quot;^[a-zA-Z-_]{2,20}$&quot;, $nombre_usuario )) { return true; } else { return false; } } $vX = $_POST[&quot;txt_x&quot;]; if ( comprobar_cadena_limite($vX) ) echo (&quot;OK&quot;); else echo (&quot;Error&quot;); ?>
  28. 28. Algoritmo – 01 ereg (&quot;^[ a-zA-Z -_ ]{2,20} $ &quot;, $nombre_usuario ) Función EREG : ejecuta el matching de una expresión regular. Termino de Cadena Variable a Evualar Rango 2..20 de caracteres permitidos Permitir estos caracteres especiales Permitir solo letras &quot;^[a-zA-Z0-9-_]{2,20}$&quot;
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×