Foros del Web » Programando para Internet » PHP »

Autentificacion HTTP

Estas en el tema de Autentificacion HTTP en el foro de PHP en Foros del Web. Trate de hacer correr el ejemplo de al documentacion: <?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 ...
  #1 (permalink)  
Antiguo 29/07/2004, 13:09
 
Fecha de Ingreso: febrero-2004
Ubicación: Resistencia - Argentina
Mensajes: 299
Antigüedad: 20 años, 1 mes
Puntos: 0
Autentificacion HTTP

Trate de hacer correr el ejemplo de al documentacion:

<?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>";
}
?>

pero no puedo hacerlo andar, estoy haciendolo en Dreamwaver y al poner $_SERVER no aparecen las variables 'PHP_AUTH_USER' y 'PHP_AUTH_PW'

Si alguien sabe como hacerlo estaria agradecido.-
  #2 (permalink)  
Antiguo 29/07/2004, 13:50
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Cita:
estoy haciendolo en Dreamwaver
Eso es lo de menos .. es decir, el editor de código que uses.

Lo que manda aquí en el tema de autentificación HTTP es que debes usar servidor HTTP: Apache y PHP instalado sobre el como módulo no como CGI. Además por el uso de los arrays superglobales ($_SERVER ..) que hace debes usar PHP 4.1.0 o superior.

Un saludo,
  #3 (permalink)  
Antiguo 29/07/2004, 14:27
 
Fecha de Ingreso: febrero-2004
Ubicación: Resistencia - Argentina
Mensajes: 299
Antigüedad: 20 años, 1 mes
Puntos: 0
Como hago para saber si está instalado como modulo o como CGI?
  #4 (permalink)  
Antiguo 29/07/2004, 16:31
 
Fecha de Ingreso: febrero-2004
Ubicación: Resistencia - Argentina
Mensajes: 299
Antigüedad: 20 años, 1 mes
Puntos: 0
Estuve viendo tu atutenficador/gestion de usuarios y lo que me parecio muy bueno es tenr un nivel de acceso y no solo puede/nopuede, por lo que mi pregunta es:
Que tipo de autenticacion es mejor, hacerlo con un script como el tuyo o hacerlo con la autenticacion basica que trae PHP??.-
  #5 (permalink)  
Antiguo 29/07/2004, 16:47
Avatar de Gerald  
Fecha de Ingreso: julio-2003
Mensajes: 1.356
Antigüedad: 20 años, 9 meses
Puntos: 2
La mejor en mi caso es la de Cluster :)
__________________
Solo por Hoy: Trataré de fortalecer mi mente. Estudiaré y aprenderé algo útil
Hoteldipity
Arte Caracol
  #6 (permalink)  
Antiguo 29/07/2004, 20:22
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Roly .. la autentificación básica de PHP que mencionas no es própia de PHP sino de Apache (servidor HTTP) .. pero, desde PHP "puedes" acceder a esos datos que gestiona el serivodr HTTP siempre y cuando esté PHP instalado bajo Apache como módulo.

La instalación (tipo) de PHP lo puedes ver haciendo un:
<?
phpinfo();
?>

Ahí veras en el primer bloque de información un apartado que dice "Server API:" y dirá .. CGI (o FastCGI y similares) o bien "Apache". Si es "Apache" .. PHP está instalado como módulo y en teoría podrías disfrutar de la autentificación HTTP. (también veras la versión de PHP por si no la conoces).

Las diferencias de una autentificación HTTP y vía "PHP" con seguimiento por sesiones o cookies se diferencian básicamente en:

HTTP:
* Pro's:
- No requiere modificación alguna de ninguna página del dierectorio que protejas. Así que quedarían "protegidas" otros tipos de archivos como imagenes y .html en general. (en combinación con .httacces y .htpassword)
* Contra's:
- Requiere de instalación de PHP como módulo de Apache.
- Sólo sirve para el hecho de "autentificar" .. no para adjuntar datos a esa sesión (que sería cosa de usar sesiones o cookies)
- Problemas con los cambios de usuarios sin salir de la aplicación. (logout)

PHP (sesiones /cookies):
* Pro's
- El formulario de "login" puede ser de cualquier tipo: un formulario HTML común, uno en flash .. etc.
- Puedes asociar más datos a la sesión/cookie en curso (sobre todo así es la filosofía de la sesión). Tan sólo creas una variable en ella (ejemplo: nombre usuario) y desde ahí sólo validas la existencia de esta (en sesiones .. en cookies cambia un poco la validación por seguridad).
* Contra's
- Requiere que toda "pagina" a proteger sea .php para que puedas insertar el código de validación PHP de la existencia de esa cookie/sesión.
- Quedarían "accesibles" otros tipos de achivos (imagenes, etc) (salvo que los protejas por otros médios a nivel de config de servidor HTTP: .htacces o similares).

Un saludo,
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 10:22.