User Authentification with perl/cgi
Gunnar Wolf
gwolf en campus.iztacala.unam.mx
Mar Ago 29 13:11:47 CDT 2000
> Andamos por acá haciendo un sistemilla con perl/cgi/postgress y
> para poder liberarlo a los usuarios necesitamos identificar al
> usuario mediante el esquema clásico de nombre y contraseña (todo
> por no decir login/password).
>
> Con getpwnam() podemos verificar el login, pero ¿cómo podemos
> verificar la contraseña? Usamos shadow y md5 y como es de
> esperarse el CGI corre como usuario normal (uid=gid)!=root.
>
> ¿Alguien sabe como verificar esto? ¿Dónde debemos leer? Estoy
> seguro que se debe poder (todo se puede en Perl) pero NPI de por
> dónde empezar.
Con getpwnam jalas la linea completa de /etc/passwd:
print join(':',getpwnam(gwolf));
me responde
gwolf:x:500:500:::Gunnar Wolf:/home/gwolf:/bin/bash
Claro, estoy utilizando shadow passwords, por lo que no aparece la
contrase&a. Estoy buscando en el CPAN, a ver si por encimita me aparece
algo que permita manejar pam... No, a primera mano no encontre
nada... Pero bueno, como sea, tener acceso a /etc/shadow requiere que seas
root... Si haces que parte de tu script corra como root, puedes leer de
ese archivo...
Salu!
-------------------------------------------------------------------
Gunnar Wolf gwolf en campus.iztacala.unam.mx
Universidad Nacional Autónoma de México, Campus Iztacala
Jefatura de Sección de Desarrollo y Admon. de Sistemas en Red
Area de Seguridad en Computo - DCI - DGSCA - UNAM
-------------------------------------------------------------------
Beginner thinks 1Kb == 1000 bytes. Master knows 1Km == 1024m
---------------------------------------------------------
para salir de la lista, enviar un mensaje con las palabras
"unsubscribe ayuda" en el cuerpo a majordomo en linux.org.mx
Más información sobre la lista de distribución Ayuda