![]() |
| |||||||
| Registrarse | Preguntas Frecuentes | Lista de Foreros | Calendario | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
| | LinkBack | Herramientas | Desplegado |
| |||
| Holas, Quiero hacer una web con el típico registro de usuarios que se confirma por email y luego quiero mantener un registro de permisos para determinadas acciones a determinados usuarios. Antes de ponerme a programar algo que seguramente está mil veces publicado, o copiar algun código que no sea demasiado bueno (teniendo en cuenta mi falta de experiencia seguro que acabo cogiendo el peor) ¿ alguien me puede recomendar alguna librería o clase o lo-que-sea ? Saludos :-) -Pedro- http://www.maicas.net/ e-mail en www.maicas.net |
| | ||||
| ||||
| |
| |||
| El Mon, 08 Jan 2007 11:51:22 +0100, Pedro Maicas <esta_no_es***jet.es> escribió: > Quiero hacer una web con el típico registro >de usuarios que se confirma por email y luego quiero >mantener un registro de permisos para determinadas >acciones a determinados usuarios. Tablas necesarias: usuarios permisos Tabla usuarios: id usuario clave activacion .... Tabla permisos: id idusuario permiso > Antes de ponerme a programar algo que seguramente >está mil veces publicado, o copiar algun código que >no sea demasiado bueno (teniendo en cuenta mi falta >de experiencia seguro que acabo cogiendo el peor) Claro que está implementado miles de veces.. pero ninguna librería específica para eso porque cada caso tiene algo característico que al final hay que tocar. >¿ alguien me puede recomendar alguna librería o clase >o lo-que-sea ? Para autenticar por email: 1.- Crear el usuario en la base de datos creando un token de activación al azar (un md5 de la fecha, la hora y un número al azar entre 0 y 1000000 podría bastar). 2.- Enviar un email con el enlace al script PHP que hará la validación enviando por GET dicho token. 3.- En el script PHP de validación recibimos el token, lo comprobamos con la base de datos y en caso de ser correcto marcamos el usuario como "autenticado". Para los permisos: 1.- Leemos todos los datos de la tabla permisos y los metemos en alguna variable superglobal para facilitar su posterior acceso o bien en una variable que luego definiremos como global en las funciones que hagan uso de ella. 2.- Comprobamos si está o no habilitado ese acceso para ese usuario comprobando la existencia del registro con isset. Ejemplo: // Leer los permisos: $query = mysql_query ('SELECT * FROM permisos WHERE idusuario='. $_SESSION['id']); while ($fetch = mysql_fetch_assoc ($linea)) { $_GLOBALS['permisos'][$fetch['permiso']] = true; } // Comprobar un permiso: if (isset ($_GLOBALS['permisos']['modificar'])) { // Podemos modificar lo que sea } else { // No tenemos permisos para modificar lo que sea } Si quieres que sea más completo puedes agregar en la tabla tanto los permisos permitidos como los denegados (y no sólo los permitidos como hago yo): Tabla permisos: id idusuario permiso valor Cambiando: // Leer los permisos: $query = mysql_query ('SELECT * FROM permisos WHERE idusuario='. $_SESSION['id']); while ($fetch = mysql_fetch_assoc ($linea)) { $_GLOBALS['permisos'][$fetch['permiso']] =$fetch['valor']; } // Comprobar un permiso: if ($_GLOBALS['permisos']['modificar'] == 'si') { // Podemos modificar lo que sea } else { // No tenemos permisos para modificar lo que sea } Un saludo. -- Óscar Javier García Baudet LinaresDigital http://redstar.linaresdigital.com/ |
| |||
| El Mon, 08 Jan 2007 11:51:22 +0100, Pedro Maicas <esta_no_es***jet.es> escribió: > Quiero hacer una web con el típico registro >de usuarios que se confirma por email y luego quiero >mantener un registro de permisos para determinadas >acciones a determinados usuarios. Tablas necesarias: usuarios permisos Tabla usuarios: id usuario clave activacion .... Tabla permisos: id idusuario permiso > Antes de ponerme a programar algo que seguramente >está mil veces publicado, o copiar algun código que >no sea demasiado bueno (teniendo en cuenta mi falta >de experiencia seguro que acabo cogiendo el peor) Claro que está implementado miles de veces.. pero ninguna librería específica para eso porque cada caso tiene algo característico que al final hay que tocar. >¿ alguien me puede recomendar alguna librería o clase >o lo-que-sea ? Para autenticar por email: 1.- Crear el usuario en la base de datos creando un token de activación al azar (un md5 de la fecha, la hora y un número al azar entre 0 y 1000000 podría bastar). 2.- Enviar un email con el enlace al script PHP que hará la validación enviando por GET dicho token. 3.- En el script PHP de validación recibimos el token, lo comprobamos con la base de datos y en caso de ser correcto marcamos el usuario como "autenticado". Para los permisos: 1.- Leemos todos los datos de la tabla permisos y los metemos en alguna variable superglobal para facilitar su posterior acceso o bien en una variable que luego definiremos como global en las funciones que hagan uso de ella. 2.- Comprobamos si está o no habilitado ese acceso para ese usuario comprobando la existencia del registro con isset. Ejemplo: // Leer los permisos: $query = mysql_query ('SELECT * FROM permisos WHERE idusuario='. $_SESSION['id']); while ($fetch = mysql_fetch_assoc ($linea)) { $_GLOBALS['permisos'][$fetch['permiso']] = true; } // Comprobar un permiso: if (isset ($_GLOBALS['permisos']['modificar'])) { // Podemos modificar lo que sea } else { // No tenemos permisos para modificar lo que sea } Si quieres que sea más completo puedes agregar en la tabla tanto los permisos permitidos como los denegados (y no sólo los permitidos como hago yo): Tabla permisos: id idusuario permiso valor Cambiando: // Leer los permisos: $query = mysql_query ('SELECT * FROM permisos WHERE idusuario='. $_SESSION['id']); while ($fetch = mysql_fetch_assoc ($linea)) { $_GLOBALS['permisos'][$fetch['permiso']] =$fetch['valor']; } // Comprobar un permiso: if ($_GLOBALS['permisos']['modificar'] == 'si') { // Podemos modificar lo que sea } else { // No tenemos permisos para modificar lo que sea } Un saludo. -- Óscar Javier García Baudet LinaresDigital http://redstar.linaresdigital.com/ |
| |||
| El Mon, 08 Jan 2007 11:51:22 +0100, Pedro Maicas <esta_no_es***jet.es> escribió: > Quiero hacer una web con el típico registro >de usuarios que se confirma por email y luego quiero >mantener un registro de permisos para determinadas >acciones a determinados usuarios. Tablas necesarias: usuarios permisos Tabla usuarios: id usuario clave activacion .... Tabla permisos: id idusuario permiso > Antes de ponerme a programar algo que seguramente >está mil veces publicado, o copiar algun código que >no sea demasiado bueno (teniendo en cuenta mi falta >de experiencia seguro que acabo cogiendo el peor) Claro que está implementado miles de veces.. pero ninguna librería específica para eso porque cada caso tiene algo característico que al final hay que tocar. >¿ alguien me puede recomendar alguna librería o clase >o lo-que-sea ? Para autenticar por email: 1.- Crear el usuario en la base de datos creando un token de activación al azar (un md5 de la fecha, la hora y un número al azar entre 0 y 1000000 podría bastar). 2.- Enviar un email con el enlace al script PHP que hará la validación enviando por GET dicho token. 3.- En el script PHP de validación recibimos el token, lo comprobamos con la base de datos y en caso de ser correcto marcamos el usuario como "autenticado". Para los permisos: 1.- Leemos todos los datos de la tabla permisos y los metemos en alguna variable superglobal para facilitar su posterior acceso o bien en una variable que luego definiremos como global en las funciones que hagan uso de ella. 2.- Comprobamos si está o no habilitado ese acceso para ese usuario comprobando la existencia del registro con isset. Ejemplo: // Leer los permisos: $query = mysql_query ('SELECT * FROM permisos WHERE idusuario='. $_SESSION['id']); while ($fetch = mysql_fetch_assoc ($linea)) { $_GLOBALS['permisos'][$fetch['permiso']] = true; } // Comprobar un permiso: if (isset ($_GLOBALS['permisos']['modificar'])) { // Podemos modificar lo que sea } else { // No tenemos permisos para modificar lo que sea } Si quieres que sea más completo puedes agregar en la tabla tanto los permisos permitidos como los denegados (y no sólo los permitidos como hago yo): Tabla permisos: id idusuario permiso valor Cambiando: // Leer los permisos: $query = mysql_query ('SELECT * FROM permisos WHERE idusuario='. $_SESSION['id']); while ($fetch = mysql_fetch_assoc ($linea)) { $_GLOBALS['permisos'][$fetch['permiso']] =$fetch['valor']; } // Comprobar un permiso: if ($_GLOBALS['permisos']['modificar'] == 'si') { // Podemos modificar lo que sea } else { // No tenemos permisos para modificar lo que sea } Un saludo. -- Óscar Javier García Baudet LinaresDigital http://redstar.linaresdigital.com/ |
| |||
| El Mon, 08 Jan 2007 11:51:22 +0100, Pedro Maicas <esta_no_es***jet.es> escribió: > Quiero hacer una web con el típico registro >de usuarios que se confirma por email y luego quiero >mantener un registro de permisos para determinadas >acciones a determinados usuarios. Tablas necesarias: usuarios permisos Tabla usuarios: id usuario clave activacion .... Tabla permisos: id idusuario permiso > Antes de ponerme a programar algo que seguramente >está mil veces publicado, o copiar algun código que >no sea demasiado bueno (teniendo en cuenta mi falta >de experiencia seguro que acabo cogiendo el peor) Claro que está implementado miles de veces.. pero ninguna librería específica para eso porque cada caso tiene algo característico que al final hay que tocar. >¿ alguien me puede recomendar alguna librería o clase >o lo-que-sea ? Para autenticar por email: 1.- Crear el usuario en la base de datos creando un token de activación al azar (un md5 de la fecha, la hora y un número al azar entre 0 y 1000000 podría bastar). 2.- Enviar un email con el enlace al script PHP que hará la validación enviando por GET dicho token. 3.- En el script PHP de validación recibimos el token, lo comprobamos con la base de datos y en caso de ser correcto marcamos el usuario como "autenticado". Para los permisos: 1.- Leemos todos los datos de la tabla permisos y los metemos en alguna variable superglobal para facilitar su posterior acceso o bien en una variable que luego definiremos como global en las funciones que hagan uso de ella. 2.- Comprobamos si está o no habilitado ese acceso para ese usuario comprobando la existencia del registro con isset. Ejemplo: // Leer los permisos: $query = mysql_query ('SELECT * FROM permisos WHERE idusuario='. $_SESSION['id']); while ($fetch = mysql_fetch_assoc ($linea)) { $_GLOBALS['permisos'][$fetch['permiso']] = true; } // Comprobar un permiso: if (isset ($_GLOBALS['permisos']['modificar'])) { // Podemos modificar lo que sea } else { // No tenemos permisos para modificar lo que sea } Si quieres que sea más completo puedes agregar en la tabla tanto los permisos permitidos como los denegados (y no sólo los permitidos como hago yo): Tabla permisos: id idusuario permiso valor Cambiando: // Leer los permisos: $query = mysql_query ('SELECT * FROM permisos WHERE idusuario='. $_SESSION['id']); while ($fetch = mysql_fetch_assoc ($linea)) { $_GLOBALS['permisos'][$fetch['permiso']] =$fetch['valor']; } // Comprobar un permiso: if ($_GLOBALS['permisos']['modificar'] == 'si') { // Podemos modificar lo que sea } else { // No tenemos permisos para modificar lo que sea } Un saludo. -- Óscar Javier García Baudet LinaresDigital http://redstar.linaresdigital.com/ |
| |||
| El Mon, 08 Jan 2007 11:51:22 +0100, Pedro Maicas <esta_no_es***jet.es> escribió: > Quiero hacer una web con el típico registro >de usuarios que se confirma por email y luego quiero >mantener un registro de permisos para determinadas >acciones a determinados usuarios. Tablas necesarias: usuarios permisos Tabla usuarios: id usuario clave activacion .... Tabla permisos: id idusuario permiso > Antes de ponerme a programar algo que seguramente >está mil veces publicado, o copiar algun código que >no sea demasiado bueno (teniendo en cuenta mi falta >de experiencia seguro que acabo cogiendo el peor) Claro que está implementado miles de veces.. pero ninguna librería específica para eso porque cada caso tiene algo característico que al final hay que tocar. >¿ alguien me puede recomendar alguna librería o clase >o lo-que-sea ? Para autenticar por email: 1.- Crear el usuario en la base de datos creando un token de activación al azar (un md5 de la fecha, la hora y un número al azar entre 0 y 1000000 podría bastar). 2.- Enviar un email con el enlace al script PHP que hará la validación enviando por GET dicho token. 3.- En el script PHP de validación recibimos el token, lo comprobamos con la base de datos y en caso de ser correcto marcamos el usuario como "autenticado". Para los permisos: 1.- Leemos todos los datos de la tabla permisos y los metemos en alguna variable superglobal para facilitar su posterior acceso o bien en una variable que luego definiremos como global en las funciones que hagan uso de ella. 2.- Comprobamos si está o no habilitado ese acceso para ese usuario comprobando la existencia del registro con isset. Ejemplo: // Leer los permisos: $query = mysql_query ('SELECT * FROM permisos WHERE idusuario='. $_SESSION['id']); while ($fetch = mysql_fetch_assoc ($linea)) { $_GLOBALS['permisos'][$fetch['permiso']] = true; } // Comprobar un permiso: if (isset ($_GLOBALS['permisos']['modificar'])) { // Podemos modificar lo que sea } else { // No tenemos permisos para modificar lo que sea } Si quieres que sea más completo puedes agregar en la tabla tanto los permisos permitidos como los denegados (y no sólo los permitidos como hago yo): Tabla permisos: id idusuario permiso valor Cambiando: // Leer los permisos: $query = mysql_query ('SELECT * FROM permisos WHERE idusuario='. $_SESSION['id']); while ($fetch = mysql_fetch_assoc ($linea)) { $_GLOBALS['permisos'][$fetch['permiso']] =$fetch['valor']; } // Comprobar un permiso: if ($_GLOBALS['permisos']['modificar'] == 'si') { // Podemos modificar lo que sea } else { // No tenemos permisos para modificar lo que sea } Un saludo. -- Óscar Javier García Baudet LinaresDigital http://redstar.linaresdigital.com/ |
| |||
| El Mon, 08 Jan 2007 11:51:22 +0100, Pedro Maicas <esta_no_es***jet.es> escribió: > Quiero hacer una web con el típico registro >de usuarios que se confirma por email y luego quiero >mantener un registro de permisos para determinadas >acciones a determinados usuarios. Tablas necesarias: usuarios permisos Tabla usuarios: id usuario clave activacion .... Tabla permisos: id idusuario permiso > Antes de ponerme a programar algo que seguramente >está mil veces publicado, o copiar algun código que >no sea demasiado bueno (teniendo en cuenta mi falta >de experiencia seguro que acabo cogiendo el peor) Claro que está implementado miles de veces.. pero ninguna librería específica para eso porque cada caso tiene algo característico que al final hay que tocar. >¿ alguien me puede recomendar alguna librería o clase >o lo-que-sea ? Para autenticar por email: 1.- Crear el usuario en la base de datos creando un token de activación al azar (un md5 de la fecha, la hora y un número al azar entre 0 y 1000000 podría bastar). 2.- Enviar un email con el enlace al script PHP que hará la validación enviando por GET dicho token. 3.- En el script PHP de validación recibimos el token, lo comprobamos con la base de datos y en caso de ser correcto marcamos el usuario como "autenticado". Para los permisos: 1.- Leemos todos los datos de la tabla permisos y los metemos en alguna variable superglobal para facilitar su posterior acceso o bien en una variable que luego definiremos como global en las funciones que hagan uso de ella. 2.- Comprobamos si está o no habilitado ese acceso para ese usuario comprobando la existencia del registro con isset. Ejemplo: // Leer los permisos: $query = mysql_query ('SELECT * FROM permisos WHERE idusuario='. $_SESSION['id']); while ($fetch = mysql_fetch_assoc ($linea)) { $_GLOBALS['permisos'][$fetch['permiso']] = true; } // Comprobar un permiso: if (isset ($_GLOBALS['permisos']['modificar'])) { // Podemos modificar lo que sea } else { // No tenemos permisos para modificar lo que sea } Si quieres que sea más completo puedes agregar en la tabla tanto los permisos permitidos como los denegados (y no sólo los permitidos como hago yo): Tabla permisos: id idusuario permiso valor Cambiando: // Leer los permisos: $query = mysql_query ('SELECT * FROM permisos WHERE idusuario='. $_SESSION['id']); while ($fetch = mysql_fetch_assoc ($linea)) { $_GLOBALS['permisos'][$fetch['permiso']] =$fetch['valor']; } // Comprobar un permiso: if ($_GLOBALS['permisos']['modificar'] == 'si') { // Podemos modificar lo que sea } else { // No tenemos permisos para modificar lo que sea } Un saludo. -- Óscar Javier García Baudet LinaresDigital http://redstar.linaresdigital.com/ |
| |||
| On Mon, 08 Jan 2007 13:07:22 +0100, Oscar Garcia <redstarQUITARSPAM23***terra.es> wrote: >Claro que está implementado miles de veces.. pero ninguna librería >específica para eso porque cada caso tiene algo característico que al >final hay que tocar. Gracias, Poco más o menos ya tenía pensado cómo hacerlo, la pregunta era por si había algún codigo listo para fusilar. Pero si hay que hacerlo, se hace ;-) Saludos :-) -Pedro- http://www.maicas.net/ e-mail en www.maicas.net |
| |
| |
| |||
| On Mon, 08 Jan 2007 13:07:22 +0100, Oscar Garcia <redstarQUITARSPAM23***terra.es> wrote: >Claro que está implementado miles de veces.. pero ninguna librería >específica para eso porque cada caso tiene algo característico que al >final hay que tocar. Gracias, Poco más o menos ya tenía pensado cómo hacerlo, la pregunta era por si había algún codigo listo para fusilar. Pero si hay que hacerlo, se hace ;-) Saludos :-) -Pedro- http://www.maicas.net/ e-mail en www.maicas.net |
| |||
| On Mon, 08 Jan 2007 13:07:22 +0100, Oscar Garcia <redstarQUITARSPAM23***terra.es> wrote: >Claro que está implementado miles de veces.. pero ninguna librería >específica para eso porque cada caso tiene algo característico que al >final hay que tocar. Gracias, Poco más o menos ya tenía pensado cómo hacerlo, la pregunta era por si había algún codigo listo para fusilar. Pero si hay que hacerlo, se hace ;-) Saludos :-) -Pedro- http://www.maicas.net/ e-mail en www.maicas.net |
![]() |
| Herramientas | |
| Desplegado | |
| |
Temas Similares | ||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| como compartir con permisos para usuarios de red NO usuarios locales! | gabriel494@gmail.com | Newsgroup microsoft.public.es.windowsxp.seguridad | 4 | 30-03-2008 20:46:31 |
| usuarios de Spectrum vs usuarios de otros retro-sistemas | Landoq@landoq.com | Newsgroup es.comp.sistemas.sinclair | 9 | 13-12-2007 15:33:56 |
| Gestion de usuarios | Tuareg | Newsgroup es.comp.lenguajes.php | 0 | 06-07-2007 15:26:49 |
| Gestión | Abantos | Newsgroup es.rec.deportes.aventura | 21 | 25-01-2007 10:23:21 |
| sobre seguridad y gestión de usuarios | Antonio Núñez Rodríguez | Newsgroup microsoft.public.es.seguridad | 9 | 31-10-2006 19:25:01 |