كتبت اليوم نظامًا بسيطًا باستخدام SSH2 ووجدت مشكلة. يجب تسجيل نظامي بنجاح قبل إدخال الصفحة الرئيسية. ومع ذلك ، أدخلت مباشرة عنوان الصفحة الرئيسية في المتصفح ووجدت أنه يمكنني أيضًا الدخول. هذا بالتأكيد ليس جيدًا وليس له أمان على الإطلاق. بعد التحقق من المعلومات ، وجدت أنني بحاجة لتسجيل الدخول إلى المرشح. لقد جربته ووجدت أنه يمكن أن يتجنب بالفعل خطر الدخول إلى الصفحة الرئيسية دون تسجيل الدخول. فيما يلي الخطوات التفصيلية التي قمت بتجميعها:
1. اكتب أولاً فئة تصفية الإذن لتنفيذ واجهة التصفية
استيراد java.io.ioException ؛ استيراد javax.servlet.filter ؛ استيراد javax.servlet.filterchain ؛ استيراد javax.servlet.filterConfig ؛ استيراد javax.servlet.servletexception ؛ استيراد javax.servlet.servletrequest ؛ import javax.servlet.servletresponse ؛ javax.servlet.http.httpservletrequest ؛ استيراد javax.servlet.http.httpservletresponse ؛ import javax.servlet.http.httpsession Cub} Override public void dofilter (طلب servletRequest ، استجابة servletResponse ، سلسلة filterchain) يلقي ioException ، servletexception {// الحصول على الطلب ، استجابة ، كائن الجلسة لاستخدامها في الكود httpservletrequest servletrequest = (httpserverrequest) ؛ httpservletresponse servletResponse = (httpservletresponse) ؛ جلسة httpsession = servletRequest.getSession () ؛ // احصل على URI المطلوبة من قبل مسار سلسلة المستخدم = servletRequest.getRequesturi () ؛ //system.out.println(Path) ؛ // احصل على معلومات رقم عمل الموظف من Session String Empid = (String) Session.getAttribute ("Empid") ؛ /*قم بإنشاء Class Constants.java ، الذي يقول الصفحة دون تصفية (int i = 0 ؛ i <constants.nofilter_pages.length ؛ i ++) {if (path.indexof (constants.nofilter_pages [i])> -1) {chain.dofilter (servletrequest ، servletResponse) ؛ يعود؛ }}*/ // لا يوجد تصفية مطلوبة لصفحة تسجيل الدخول إذا (path.indexof ("/ login.jsp")> -1) {chain.dofilter (servletrequest ، servletResponse) ؛ يعود؛ }. } آخر {// login ، تابع سلسلة الطلبات هذه. dofilter (طلب ، استجابة) ؛ }} Override public void Dorner () {// todo method method method adct}}}}2. ثم قم بتكوين ملف JSP الذي يتطلب التحقق من إذن تسجيل الدخول في web.xml:
أ. إذا كان ملف JSP محدد (مثل A.JSP) ، فيجب عليك تسجيل الدخول والتحقق
<!-تكوين مرشح تسجيل الدخول-> <filter> <filter-name> تسجيل الدخول </filter-name> <ilter-class> com.jingxing.oa.filter.loginfilter </filter-class> </filter> <filter-mapping> <filter-name> login </filter-name>
ب. إذا كان دليلًا (مثل A/ Directory) ، فيجب تسجيل الملفات في الدليل بأكمله والتحقق منه:
<!-تكوين مرشح تسجيل الدخول-> <filter> <filter-name> تسجيل الدخول </filter-name> <lipter-class> com.jingxing.oa.filter.loginfilter </filter-class> </filter> <filter-mapping> <filter-name> login </filter-name>
ما ورد أعلاه هو تسجيل الدخول إلى مرشح الويب Java لمنع تسجيل الدخول من إدخال الواجهة التي قدمتها إليك. آمل أن يكون ذلك مفيدًا لك. إذا كان لديك أي أسئلة ، فيرجى ترك رسالة لي وسوف يرد المحرر إليك في الوقت المناسب. شكرا جزيلا لدعمكم لموقع wulin.com!