【发布时间】:2017-07-31 07:49:16
【问题描述】:
ResultSet rs;
System.out.println("rs");
try
{
rs = j.getData("select ulevel from user where ulevel='"+eid+"'");
System.out.println("try");
//until this point it works properly. But after this point it doesn't work as I thought even though I logged in as a user whose user level (ulevel) is not admin.
if(rs.next())
{
System.out.println("rs.next");
if(rs.getString(2).equals("Admin"))
{
System.out.println("if admin");
home.setEnabled(true);
job.setEnabled(true);
employee.setEnabled(true);
user.setEnabled(true);
machine.setEnabled(true);
branch.setEnabled(true);
}
else if(rs.getString(2).equals("user"))
{
System.out.println("else if");
home.setEnabled(true);
machine.setEnabled(true);
System.out.println("user can't see");
}
else
{
System.out.println("else");
}
}
}
catch (Exception ex)
{
Logger.getLogger(Home_Page.class.getName()).log(Level.SEVERE, null, ex);
}
}
从上面的代码中,我尝试限制用户级别(ulevel)为用户的普通用户可以看到的页面数。我试过了
jbutton_name.setvisible(false);
jbutton_name.setEnabled(false)
也一样。但是它们都不能有效地为普通用户禁用这些按钮。
有人可以帮我吗???提前致谢。
【问题讨论】:
-
不要扔或抓
Exception。查找“SQL注入攻击”。