Foros del Web » Creando para Internet » Herramientas y Software »

Restinguir el acceso al Administrador

Estas en el tema de Restinguir el acceso al Administrador en el foro de Herramientas y Software en Foros del Web. Hola, buenas tardes, he visto que hay un post con un problema [URL="http://www.forosdelweb.com/f17/validacion-niveles-php-dreamweaver-833605/"]parecido[/URL] pero por más que hago y deshago... con los comportamientos de servidor, ...
  #1 (permalink)  
Antiguo 17/08/2010, 10:54
 
Fecha de Ingreso: julio-2010
Mensajes: 16
Antigüedad: 13 años, 9 meses
Puntos: 0
Pregunta Restinguir el acceso al Administrador

Hola, buenas tardes, he visto que hay un post con un problema [URL="http://www.forosdelweb.com/f17/validacion-niveles-php-dreamweaver-833605/"]parecido[/URL] pero por más que hago y deshago... con los comportamientos de servidor, no me sale. Uso dreamweaver MX 2004

El problema es el siguiente, quiero restringir el acceso al panel de administración a los administradores ( nivel de privilegio: A) y para ello tengo lo siguiente:

- usuarioTA.php--> página de logueo de administrador
esta pagina tiene el comportamiento de conectar usuario, y esta restringido por Nombre de usuario, Contraseña y Nivel de Acceso (PRIVILEGIO)


- BienvenidaAdmint.php --> página a la que se accede si el usuario esta correctamente logueado, y que es la que comprueba, que ese user es administrador. Aquí tengo puesto un comportamiento de restringir acceso, por nivel de privilegio A (administrador)




También he probado esta otra posibilidad, de poner sólo acceso a "A" quitando, la posibilidad, de que se pudiera ir por "U" (usuario) y tampoco va....



Pues bien, si me logueo con un usuario que no es administrador, me sigue entrando en el panel de administración. Es como si pasase, del tema de restringir el acceso por administrador...

¿a alguien se le ocurre qué estoy haciendo mal?

Muchas gracias de antemano, y perdón, si pongo un tema que es parecido a otro.
  #2 (permalink)  
Antiguo 17/08/2010, 14:01
Avatar de juaniquillo
Colaborador
 
Fecha de Ingreso: noviembre-2005
Ubicación: San Juan, Puerto Rico
Mensajes: 5.745
Antigüedad: 18 años, 5 meses
Puntos: 281
Respuesta: Restinguir el acceso al Administrador

La solución que buscas está en este post:

http://www.forosdelweb.com/f17/ident...iveles-730779/

Ahí verás que no puedes enviar el usuario a la página de administración, sino a otra página donde se ve cual es el nivel y se envía ala página correcta.
__________________
Por fin.. tengo algo parecido a un blog
Y por lo visto ya estoy escribiendo...
  #3 (permalink)  
Antiguo 18/08/2010, 03:58
 
Fecha de Ingreso: julio-2010
Mensajes: 16
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: Restinguir el acceso al Administrador

Gracias, pero es que no es exactamente lo que quiero hacer, lo mismo, es que lo debo hacer así, pero yo tenía en mente otra cosa, me explico:

- Tengo una página principal, en la cual:

-- botón de conectarse ---> usuario.php ---> Comportamiento de server conectar usuario --> en esta no se hace distinción entre usuario normal (U) y administrador.

-- botón de administración-->usuarioA.php--> Comportamiento de server Conectar Usuario, aquí si que hago restingir acceso por nombre, contraseña, y nivel de acceso (privilegio) ---> si esto es correcto que vaya a BienvenidaAdmin.php

-- página de bienvenida administrador --> BienvenidaAdmin.php--> aquí tengo el comportamiento restringir acceso por nombre de usurio, contraseña y nivel de acceso en el que sólo está puesto el nivel de acceso "A" no tengo puesto ni el "U"---> si todo esto es correcto que se vaya a la página del panel de administrador....

No sé lo que estoy haciendo mal... me podrías ayudar? puede que lo tenga que hacer como en el post, que me has mandado? hacer un logueo para todos?


Gracias de antemano.
  #4 (permalink)  
Antiguo 18/08/2010, 07:24
Avatar de juaniquillo
Colaborador
 
Fecha de Ingreso: noviembre-2005
Ubicación: San Juan, Puerto Rico
Mensajes: 5.745
Antigüedad: 18 años, 5 meses
Puntos: 281
Respuesta: Restinguir el acceso al Administrador

Ya vi. Me había confundido. ¿Podrías dejar el código de restricción de la página donde envías al administrador?
__________________
Por fin.. tengo algo parecido a un blog
Y por lo visto ya estoy escribiendo...
  #5 (permalink)  
Antiguo 18/08/2010, 09:54
 
Fecha de Ingreso: julio-2010
Mensajes: 16
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: Restinguir el acceso al Administrador

Claro!

mira este es el codigo de usuarioTA.php --> logueo para el admin.
Código PHP:
<?php require_once('Connections/WebSocial.php'); ?><?php
// *** Validate request to login to this site.
session_start();

$loginFormAction $_SERVER['PHP_SELF'];
if (isset(
$accesscheck)) {
  
$GLOBALS['PrevUrl'] = $accesscheck;
  
session_register('PrevUrl');
}

if (isset(
$_POST['USUARIO'])) {
  
$loginUsername=$_POST['USUARIO'];
  
$password=$_POST['PASSWORD'];
  
$MM_fldUserAuthorization "PRIVILEGIO";
  
$MM_redirectLoginSuccess "BienvenidaAdminT.php";
  
$MM_redirectLoginFailed "indexTrabajo.htm";
  
$MM_redirecttoReferrer false;
  
mysql_select_db($database_WebSocial$WebSocial);
      
  
$LoginRS__query=sprintf("SELECT USER, PASSWORD, PRIVILEGIO FROM trabajo WHERE USER='%s' AND PASSWORD='%s'",
  
get_magic_quotes_gpc() ? $loginUsername addslashes($loginUsername), get_magic_quotes_gpc() ? $password addslashes($password)); 
   
  
$LoginRS mysql_query($LoginRS__query$WebSocial) or die(mysql_error());
  
$loginFoundUser mysql_num_rows($LoginRS);
  if (
$loginFoundUser) {
    
    
$loginStrGroup  mysql_result($LoginRS,0,'PRIVILEGIO');
    
    
//declare two session variables and assign them
    
$GLOBALS['MM_Username'] = $loginUsername;
    
$GLOBALS['MM_UserGroup'] = $loginStrGroup;          

    
//register the session variables
    
session_register("MM_Username");
    
session_register("MM_UserGroup");

    if (isset(
$_SESSION['PrevUrl']) && false) {
      
$MM_redirectLoginSuccess $_SESSION['PrevUrl'];    
    }
    
header("Location: " $MM_redirectLoginSuccess );
  }
  else {
    
header("Location: "$MM_redirectLoginFailed );
  }
}
?>
-- este es el que "comprueba" lo del admin -->

Código PHP:
<?php
session_start
();
$MM_authorizedUsers "A";
$MM_donotCheckaccess "false";

// *** Restrict Access To Page: Grant or deny access to this page
function isAuthorized($strUsers$strGroups$UserName$UserGroup) { 
  
// For security, start by assuming the visitor is NOT authorized. 
  
$isValid False

  
// When a visitor has logged into this site, the Session variable MM_Username set equal to their username. 
  // Therefore, we know that a user is NOT logged in if that Session variable is blank. 
  
if (!empty($UserName)) { 
    
// Besides being logged in, you may restrict access to only certain users based on an ID established when they login. 
    // Parse the strings into arrays. 
    
$arrUsers Explode(","$strUsers); 
    
$arrGroups Explode(","$strGroups); 
    if (
in_array($UserName$arrUsers)) { 
      
$isValid true
    } 
    
// Or, you may restrict access to only certain users based on their username. 
    
if (in_array($UserGroup$arrGroups)) { 
      
$isValid true
    } 
    if ((
$strUsers == "") && false) { 
      
$isValid true
    } 
  } 
  return 
$isValid
}

$MM_restrictGoTo "indexTrabajo.htm";
if (!((isset(
$_SESSION['MM_Username'])) && (isAuthorized("",$MM_authorizedUsers$_SESSION['MM_Username'], $_SESSION['MM_UserGroup'])))) {   
  
$MM_qsChar "?";
  
$MM_referrer $_SERVER['PHP_SELF'];
  if (
strpos($MM_restrictGoTo"?")) $MM_qsChar "&";
  if (isset(
$QUERY_STRING) && strlen($QUERY_STRING) > 0
  
$MM_referrer .= "?" $QUERY_STRING;
  
$MM_restrictGoTo $MM_restrictGoTo$MM_qsChar "accesscheck=" urlencode($MM_referrer);
  
header("Location: "$MM_restrictGoTo); 
  exit;
}
?>
  #6 (permalink)  
Antiguo 19/08/2010, 12:01
 
Fecha de Ingreso: julio-2010
Mensajes: 16
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: Restinguir el acceso al Administrador

¿qué opinas juaniquillo?
  #7 (permalink)  
Antiguo 20/08/2010, 08:11
Avatar de juaniquillo
Colaborador
 
Fecha de Ingreso: noviembre-2005
Ubicación: San Juan, Puerto Rico
Mensajes: 5.745
Antigüedad: 18 años, 5 meses
Puntos: 281
Respuesta: Restinguir el acceso al Administrador

Hasta donde vi el código lo veo bien. Lo primer oque hay que ver es si la sesión "MM_UserGroup" está llegando a la página de admin. Puedes verificarlo si le das un "echo" a la sesión en la página de admin. Después "session_start();" pon lo siguiente:

Código PHP:
Ver original
  1. echo $_SESSION['MM_Username'];

osea:

Código PHP:
Ver original
  1. echo $_SESSION['MM_Username'];

Esto escribirá lo que se envía en la sesión del grupo.
__________________
Por fin.. tengo algo parecido a un blog
Y por lo visto ya estoy escribiendo...
  #8 (permalink)  
Antiguo 23/08/2010, 13:51
 
Fecha de Ingreso: julio-2010
Mensajes: 16
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: Restinguir el acceso al Administrador

Voy a probarlo.



Nop es como si no llegase nada a la sesion, de comprobar el registro de la señal.
  #9 (permalink)  
Antiguo 24/08/2010, 08:18
Avatar de juaniquillo
Colaborador
 
Fecha de Ingreso: noviembre-2005
Ubicación: San Juan, Puerto Rico
Mensajes: 5.745
Antigüedad: 18 años, 5 meses
Puntos: 281
Respuesta: Restinguir el acceso al Administrador

no entendí. ¿Lo probaste?
__________________
Por fin.. tengo algo parecido a un blog
Y por lo visto ya estoy escribiendo...
  #10 (permalink)  
Antiguo 24/08/2010, 09:21
 
Fecha de Ingreso: julio-2010
Mensajes: 16
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: Restinguir el acceso al Administrador

si, sí lo probé pero no sale nada en pantalla...
  #11 (permalink)  
Antiguo 25/08/2010, 07:36
Avatar de juaniquillo
Colaborador
 
Fecha de Ingreso: noviembre-2005
Ubicación: San Juan, Puerto Rico
Mensajes: 5.745
Antigüedad: 18 años, 5 meses
Puntos: 281
Respuesta: Restinguir el acceso al Administrador

Parece que por alguna razón no se están asignando las variables en la página del formulario. Deja recrear tu situación y te digo.
__________________
Por fin.. tengo algo parecido a un blog
Y por lo visto ya estoy escribiendo...
  #12 (permalink)  
Antiguo 27/08/2010, 03:31
 
Fecha de Ingreso: julio-2010
Mensajes: 16
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: Restinguir el acceso al Administrador

Ok muchas gracias juaniquillo

Etiquetas: editores-web
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 04:46.