katsap
Сообщений: 6
Оценки: 0
Присоединился: 2010-12-31 06:34:53.056666
|
Здрасти всем нужна помощь по защите Iweb'a создал как видите в коде Третье поле под названием: "otvet" теперь хочу реализовать так чтобы когда вводишь в поле ответ то правильное слово брало из какого нибудь другого файла а не из того где логин и пароль находятся в файле…*loginlist.txt* кто знает как доработать буду признателен quote:
<%@page contentType="text/HТМL; charset=UTF-8"%> <%@page import="jаvа.io.*"%> <%@page import="jаvа.util.*"%> <% boolean showTag = false; if (request.getSession().getAttribute("username")!=null) showTag = true; boolean Proc = false; if (request.getParameter("password")!=null) Proc = true; if (request.getParameter("otvet")!=null) Proc = true; if (showTag) Proc = false; if(Proc) { String username = request.getParameter("username"); String password = request.getParameter("password"); String otvet = request.getParameter("otvet"); String loginrecord = null; int separatorIndex = 0; String recordUsername = null; String recordPassword = null; String recordotvet = null; int recordLength = 0; boolean matchTag = false; try{ FileReader fr = new FileReader("/usr/local/jakarta-tomcat-5.5.9/webapps/iweb/violence/loginlist.txt"); BufferedReader br = new BufferedReader(fr); loginrecord = new String(); while((loginrecord=br.readLine())!=null && !matchTag){ recordLength = loginrecord.length(); separatorIndex = loginrecord.indexOf(":"); recordUsername = loginrecord.substring(0, separatorIndex); recordPassword = loginrecord.substring(separatorIndex+1,recordLength); recordotvet = loginrecord.substring(separatorIndex+1,recordLength); if(recordUsername.compareTo(username)==0){ if((recordPassword.compareTo(password)==0)) if((recordotvet.compareTo(otvet)==0)) matchTag = true; } } if(matchTag){ FileWriter fw = new FileWriter("/opt/jakarta-tomcat-5.5.9/webapps/iweb/violence/login.log",true); BufferedWriter bw = new BufferedWriter(fw); Date dateToday = new Date(); String logStr = recordUsername+":login:"+dateToday; bw.write(logStr); bw.newLine(); bw.close(); bw = null; fw = null; } fr = null; br = null; }catch(Exception e){ out.println("Error!"+e.getMessage()); } if(matchTag){ request.getSession().setAttribute("username", username); response.sendRedirect("index.jsp"); } else { response.sendRedirect("loginform.jsp?err=1"); } } else { %> <HТМL> <head> <%@include file="include/head.jsp"%> </head> <bоdу> <table width="96%" border="0" cellpadding="0" cellspacing="0"> <tr align="center"><td><img src="/iweb/images/pw-header.jpg"></img></td></tr> </table> <table width="100%" border="0" cellpadding="0" cellspacing="0"> <% if(showTag) {%> <tr><td colspan="3" class="ver_12_black_b"> Вы уже авторизованны!</td></tr> <% } else { String strErr = ""; if(request.getParameter("err")!=null && request.getParameter("err").equals("1")) strErr = "Неверный логин,пароль или ответ на секретный вопрос";%> <tr><td colspan="3" class="ver_12_black_b"> Введите логин пароль и ответ на секретный вопрос:</td></tr> <tr><td colspan="3"> </td></tr> <tr> <td width="5%"></td> <td width="95%"> <form name="login" action="loginform.jsp"> <table width="100%" border="0" cellspacing="0" cellpadding="2"> <% if(!strErr.equals("")){ %> <tr bgcolor="#FFFFFF"><td colspan="2" class="ver_10_red"><%=strErr%></td></tr><%}%> <tr><td width="10%" class="ver_10_black">Пользователь:</td> <td width="90%"><input type="text" name="username" value=""></td> </tr> <tr><td class="ver_10_black">Пароль:</td> <td><input type="password" name="password" value=""></td> </tr> <tr><td class="ver_10_black">Ответ на секретный вопрос для входа:</td><td><input type="text" name="otvet" value=""></td></tr> <tr> <td></td> <td> <input type="submit" value="Войти" class="button"> <input type="reset" value="Отклонить" class="button"> </td> </tr> </table> </form> </td> </tr> <tr><td colspan="2"> </td></tr> <tr><td colspan="2"> </td></tr><% }%> </table> <%@include file="../include/footer.jsp"%> </bоdу> </HТМL><% }%>
|