Más contenido relacionado Similar a Mengamankan Aplikasi Java EE 6 (20) Mengamankan Aplikasi Java EE 61. Mengamankan Aplikasi Java EE 6 Bowo Prasetyo Mengamankan Komponen Web dengan Otentikasi Berbasis Form 7 Nopember 2011 http://www.scribd.com/prazjp http://www.slideshare.net/bowoprasetyo 14. index.jsp yang menampilkan “Hello World!“ mempunyai 1 link ke logout.jsp dan mengakses security context . 15. Security context me- redirect ke login.jsp yang berisi form login kalau pengguna belum login, atau ke error.jsp kalau pengguna gagal login. 19. setCredential : kalau data otentikasi valid, security context mengeset data credential pengguna di session, atau 20. showError : kalau tidak valid, me-redirect ke error.jsp . Kembali ke no 3 selama data otentikasi belum valid. 22. checkAuthorization : security context mengecek pengguna punya otorisasi mengakses url atau tidak. 23. buildHtml : kalau pengguna punya otorisasi, security context me- redirect ke index.jsp untuk menampilkan HTML, atau 33. Beri nama “ form ” ← direktori yang akan diamankan. 34. Copy file “ index.jsp ” ke dalam direktori “ form ”. 37. Komponen Teramankan “ index.jsp ” <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Otentikasi Berbasis Form untuk JSP</title> </head> <body> <h1>Hello <%= username %>!</h1> <a href="../logout.jsp">Logout</a> </body> </html> 39. Buat login.jsp , logout.jsp dan error.jsp di luar direktori form . 46. Form Login Dengan login.jsp <%@page contentType="text/html" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Halaman Login</title> </head> <body> <h1>Halaman Login</h1> 47. Form Login Dengan login.jsp <form method="POST" action="j_security_check"> <ul> <li>Username: <input type="text" name="j_username" /></li> <li>Password: <input type="password" name="j_password" /></li> </ul> <input type="submit" value="Login" /> </form> </body> </html> 51. Halaman Logout logout.jsp <%@page contentType="text/html" pageEncoding="UTF-8"%> <% session.invalidate(); %> <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Halaman Logout</title> </head> <body> <h1>Anda telah logout!</h1> <a href="index.jsp">Kembali ke halaman depan</a> </body> </html> 52. Halaman Error error.jsp <%@page contentType="text/html" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Halaman Kesalahan Login</title> </head> <body> <h1>Ada kesalahan login!</h1> <a href="index.jsp">Kembali ke halaman depan</a> </body> </html> 54. Di Projects Explorer , buka node Web Pages -> WEB-INF 60. Di Projects Explorer , buka node Web Pages -> WEB-INF 67. Di Projects Explorer , buka node Web Pages -> WEB-INF 70. Di folder “ Security Constraints ” klik “ Add Security Constraints ” 80. Di Projects Explorer , buka node Web Pages -> WEB-INF 81. Buka file “ glassfish-web.xml ”, klik tab “ Security” 82. Buka node FormRole , klik “ Add Principal... ” 83. Isi Principal Name : username pengguna GlassFish (mis. praz.form ) 91. Pada tutorial ini, dibuat username: 'praz.form' dan dipetakan hanya ke peran 'FormRole' yang diberi akses hanya ke direktori /form . 93. Username 'praz.basic' harus dapat mengakses direktori /basic tapi tidak dapat mengakses direktori /form . 94. Username 'praz.form' harus dapat mengakses direktori /form tapi tidak dapat mengakses direktori /basic .