Foros del Web » Programación para mayores de 30 ;) » Java »

mas sesiones

Estas en el tema de mas sesiones en el foro de Java en Foros del Web. Mi problema es el siguiente estoy trabajando con dos tipos de usuarios el administrador y el usuario comun despues de identificarse con el login y ...
  #1 (permalink)  
Antiguo 19/09/2005, 15:44
(Desactivado)
 
Fecha de Ingreso: septiembre-2005
Mensajes: 11
Antigüedad: 19 años, 2 meses
Puntos: 0
Exclamación mas sesiones

Mi problema es el siguiente estoy trabajando con dos tipos de usuarios el administrador y el usuario comun despues de identificarse con el login y la contraseña van a diferentes paginas:
administrador->bienvenidoadmin.jsp
usuario->bienvenidouser.jsp
dentro de bienvenidoadmin.jsp existe un link a modificar.jsp privilegio que solo tiene el que se loguea como administrador; pero tengo un problema si me logueo como usuario y copio la url de modificar.jsp quedo como administrador; si abro el iexplorer y meto la url de modificar.jsp ovbiamente me redirecciona a la pagina de acceso negado. pero en el primer caso existe un error de seguridad; el codigo que coloco a continuacion es para un .class que funciona perfectamente y es para autorizar al usuario y me redirecciona segun el tipo de usuario por medio del dispacher. La segunda parte de codigo son las primeras lineas de modificar.jsp el cual es el que valida las sesiones para mi esta correcto pero no se porque no valida si es usuario o admin correctamente, cosa que necesito para poder solucionar el problema comentado... espero pronta ayuda... gracias...
__________________________________________________
PRIMERA PARTE: AutorizarUsuarioTrionix.java
__________________________________________________
package trionix;

import java.io.*;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.sql.*;

public class AutorizarUsuarioTrionix extends HttpServlet {

public void doPost(HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException {

//Definición de variables necesarias
String login = request.getParameter("log");
String password = request.getParameter("pass");
request.setAttribute("URI", request.getRequestURI()); // Salva la URI en caso de necesitarse posteriormente

//Página redirigida si el password y/o login es incorrecto
RequestDispatcher dispatcher1 = getServletContext().getRequestDispatcher("/trionix/error.jsp?message=INGRESO_INVALIDO");

//Página redirigida si el usuario es administrador
RequestDispatcher dispatcher2 = getServletContext().getRequestDispatcher("/trionix/bienvenidoadmin.jsp");

//Página redirigida si el usuario es usuario
RequestDispatcher dispatcher3 = getServletContext().getRequestDispatcher("/trionix/bienvenidouser.jsp");

response.setContentType("text/html");
PrintWriter out = response.getWriter();

UsuarioTrionix user = new UsuarioTrionix();
//Integer coduser = new Integer(user.validarUsuario(login, password));
String coduser = user.validarUsuario(login, password);

if (!coduser.equals("")) {

String rol = user.getTipousuario();

String log = user.getLogin();


if (rol.equals("usuar"))
{

HttpSession sesion = request.getSession(true);
sesion.setAttribute("Codusuario", coduser);
sesion.setAttribute("Rol", rol);
sesion.setAttribute("Log",log);

dispatcher3.forward(request,response);

}
else
{
HttpSession sesion = request.getSession(true);
sesion.setAttribute("Codusuario", coduser);
sesion.setAttribute("Rol", rol);
sesion.setAttribute("Log",log);

dispatcher2.forward(request,response);
}

}//end if
else {
dispatcher1.forward(request,response);
}//end else


}// end doPost()


public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws IOException,ServletException
{

doPost(request, response);
}

}//end servlet
__________________________________________________
SEGUNDA PARTE: Modificar.jsp
__________________________________________________
<%@ page contentType="text/html; charset=iso-8859-1" language="java" import="java.sql.*" errorPage="" %>
<% HttpSession sesion = request.getSession(true);//asi le coloque true or false me da el mismo resultado
Object lo= session.getAttribute("Log");
Object ti= session.getAttribute("Rol");
//funciona bien
if (lo==null){
response.sendRedirect("nologin.jsp?message=VIOLACI ON DE ACCESO");
}
//aqui empieza el problema parece que nunca pasara por aca
if (ti=="usuar"){
response.sendRedirect("noadmin.jsp?message=VIOLACI ON DE ACCESO");
}
%>

<%=session.getAttribute("Log")%>
<%=session.getAttribute("Rol")%>
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 13:47.