Foros del Web » Programando para Internet » PHP »

Autentificar con HTTP

Estas en el tema de Autentificar con HTTP en el foro de PHP en Foros del Web. Hola a todos. Resulta que, la autenticación con cookies se me ha vuelto media pesada, y quiero hacerla con HTTP y la función header(). Pues ...
  #1 (permalink)  
Antiguo 19/02/2004, 18:25
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.462
Antigüedad: 15 años, 4 meses
Puntos: 2099
Autentificar con HTTP

Hola a todos.

Resulta que, la autenticación con cookies se me ha vuelto media pesada, y quiero hacerla con HTTP y la función header().

Pues bueno, he mirado en php.net, y, no comprendí muy bien... He mirado otros ejemplos de otras webs, y sigo sin entenderlo. Algunas lo hacían con MySQL, pero... No entiendo dónde se 'dice al navegador' que se ha logeado correctamente. Uséase, con cookies se hace un setcookie() y ya está...

El ejemplo que viene en php.net es este:
Código PHP:
<?php
  
if (!isset($_SERVER['PHP_AUTH_USER'])) {
   
header('WWW-Authenticate: Basic realm="My Realm"');
   
header('HTTP/1.0 401 Unauthorized');
   echo 
'Text to send if user hits Cancel button';
   exit;
  } else {
   echo 
"<p>Hello {$_SERVER['PHP_AUTH_USER']}.</p>";
   echo 
"<p>You entered {$_SERVER['PHP_AUTH_PW']} as your password.</p>";
  }
?>
Gracias ;D.
__________________
Twitter: @zinhard

Tengo una web donde hago lo que quiero.
  #2 (permalink)  
Antiguo 19/02/2004, 22:38
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.462
Antigüedad: 15 años, 4 meses
Puntos: 2099
Nadie me puede responder? :|
__________________
Twitter: @zinhard

Tengo una web donde hago lo que quiero.
  #3 (permalink)  
Antiguo 19/02/2004, 23:58
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.462
Antigüedad: 15 años, 4 meses
Puntos: 2099
Pues vaya... Al final conseguí hacer esto que pongo aquí y funciona. Ya podrían explicarlo mejor en el manual ese. O advertir de que puede causar dolor de cabeza :D.

Código PHP:
<?
   
if (($PHP_AUTH_USER!="algo") || ($PHP_AUTH_PW!="algomas")) { 
      
header('WWW-Authenticate: Basic realm="Privado"'); 
      
header('HTTP/1.0 401 Unauthorized'); 
      echo 
'Authorization Required.'
      exit; 
   } 
?>
Por si a alguien le sirve ;P.

Saludos ;D.
__________________
Twitter: @zinhard

Tengo una web donde hago lo que quiero.
  #4 (permalink)  
Antiguo 20/02/2004, 07:28
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
El manual "ese" (supongo que te refieres al oficial de PHP ..) si lees bien su introducción te habla de que para la autentificación HTTP tienes dese PHP bajo esas variables .. esos datos sobre el usuario que está autentificandose por tu login .. Esto es lo de siempre, si no se lee la teoría .. nunca se veran claro los ejemplos que , si .. es cierto que el Manual oficial de REFERENCIA de PHP suelen ser escuetos o incluso no hay .. pero recuerda que no es un "tutorial" sino un manual de referencia: te dá la teoría y la sintax de la función/método junto con la configuración que pueda afectar para su uso de PHP ..

El resto lo puedes ver en el mismo manual oficial, en cada función abajo tienes los "comentarios de los usuarios" .. Justamente ese tema está lleno de ejemplos como el último que pusistes. En otros casos la gente pone ahí links hacia -tutoriales- ....

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:56.