CodeCharge Studio
search Register Login  

Web Reporting

Visually create Web Reports in PHP, ASP, .NET, Java, Perl and ColdFusion.
CodeCharge.com

YesSoftware Forums -> CodeCharge Studio -> Español

 Acceso a usuarios personalizado

Print topic Send  topic

Author Message
metallivan

Posts: 17
Posted: 08/29/2008, 10:59 PM

Hola, que tal a todos!....pues continuando con mi proyecto me surgió otra duda. Ojalá pudieran orientarme un poco en como personalizar el acceso a usuarios a ciertas páginas. Al registrarse un nuevo equipo en el sistema, éste como siguiente paso pide crear una cuenta con la cual al logearse podrán editar la información de su equipo y dar de alta jugadores para el mismo. Para identificar que usuario corresponde a cada equipo agregué el campo Id_equipo en la tabla de usuarios. Todos los usuarios pueden ver la lista de equipos que se han registrado (de hecho no se necesita estar logeado ya que esa página no tiene restricción) y al dar click en el link de un equipo pide logearse ya que la página para editar la información de éste esta restringida. Pero la duda me surge en como permitir que los usuarios editen la información únicamente de su equipo, ya que al tener todos éstos el mismo nivel de privilegios pueden editar la información de cualquiera. La idea es comparar el Id de equipo del usuario que está logeado con el Id del equipo al que se desea tener acceso y solo si éstos coinciden permita el ingreso a la página.

Les agradecería mucho de nuevo cualquier aporte en el que pudiera apoyarme, de verdad que para un principiante como yo todo es valioso. Sin mas por el momento no me queda mas que agradecerles su tiempo, saludos!!
View profile  Send private message
gcastillo

Posts: 45
Posted: 08/30/2008, 3:19 AM

Hola,

Ok lo que yo haría es grabar el id-equipo como una variable de sesion junto con las variables de userid, groupid.

En cada programa restringido de edicion de datos del equipo en el evento "after initialize" de la página traería el valor de la variable de session y la compararía con el campo id_equipo de la talba que se va a modificar (que normalmente sería un parámetro en la URL) y si no coinciden reenviaria a una pagina de Acceso Denegado.

Espero te sirva

Saludos coriales
_________________
Giovanni
View profile  Send private message
metallivan

Posts: 17
Posted: 09/28/2008, 11:19 PM

Hola gcastillo...mil gracias por tu ayuda, me ha servido para orientarme pero sigo teniendo problemas con el código porque me reenvía a la página de Acceso Denegado a cualquier usuario que no tenga todos los permisos. Aquí les pongo el código que he armado y ojalá pudieran echarme la mano en encontrar el problema.

Tengo 2 niveles de usuario:
IDGroup = 0 (Administrador, con todos los permisos)
IDGroup = 1 (Usuario, con permisos limitados)

En el evento "After Initialize" agregué el código:

//Custom Code @41-2A29BDB7
$db = new clsDBConnection1();
global $Redirect;

if(CCGetGroupID() == 1){
if(CCGetFromGet("Id_equipo", NULL) != CCSetSession("UsuarioId_equipo", CCDLookUp("Id_equipo","usuarios","Id_usuario=".$db->ToSQL(CCGetUserID(),ccsInteger), $db)))
{
$Redirect = 'AccesoDenegado.php';
}
}
//End Custom Code

Es todo, sin mas por el momento, espero puedan ayudarme y gracias por su tiempo...Saludos!!
View profile  Send private message
gcastillo

Posts: 45
Posted: 09/29/2008, 8:45 AM

Hola Metallivan

Ok entiendo que este código lo estas poniendo en todas las páginas restringidas.

1. La variable de sesión que estás creando, yo la crearía en la página de Login. Cuando el usuario es admitido (porque es válido) crear la variable de sesión con base en los datos de dicho usuario, en este caso el id_equipo.

2. En el after_inizialice de todas las páginas restringidas traería el valor de la variable de sesión que almacené anteriormente.

3. Compararía la variable de sesión contra el campo de id_equipo del equipo que seleccionó el usuario para modificar y si no concuerda entonces se va a la página de acceso denegado.

Espero esto te sea de utilidad.

Saludos


_________________
Giovanni
View profile  Send private message
metallivan

Posts: 17
Posted: 09/30/2008, 1:22 PM

Muchísimas gracias gcastillo, me funcionó perfecto!!! ;-) ....te agradezco la ayuda
View profile  Send private message
gcastillo

Posts: 45
Posted: 09/30/2008, 2:45 PM

Que bien que te sirvió.

Saludos
_________________
Giovanni
View profile  Send private message

Add new topic Subscribe to topic   


These are Community Forums for users to exchange information.
If you would like to obtain technical product help please visit http://support.yessoftware.com.

Internet Database

Visually create Web enabled database applications in minutes.
CodeCharge.com

Home   |    Search   |    Members   |    Register   |    Login


Powered by UltraApps Forum created with CodeCharge Studio
Copyright © 2003-2004 by UltraApps.com  and YesSoftware, Inc.