diff --git a/TugasBesar2_2017/IdentityService/src/main/java/com/adaapa/identityservice/servlets/LoginServlet.java b/TugasBesar2_2017/IdentityService/src/main/java/com/adaapa/identityservice/servlets/LoginServlet.java index d7344157451a0eebbcd8f2b6dd25059b81442db3..7d32ca7f386d5cc7e334048dbc6bf0396a30cf98 100644 --- a/TugasBesar2_2017/IdentityService/src/main/java/com/adaapa/identityservice/servlets/LoginServlet.java +++ b/TugasBesar2_2017/IdentityService/src/main/java/com/adaapa/identityservice/servlets/LoginServlet.java @@ -26,6 +26,8 @@ public class LoginServlet extends HttpServlet { TokenService tokenService = new TokenService(); String username = req.getParameter("username"); String password = req.getParameter("password"); + String userAgent = req.getParameter("user_agent"); + String ipAddress = req.getParameter("ip_address"); PrintWriter out = resp.getWriter(); Gson gson = new Gson(); UserModel userModel = new UserModel(); @@ -34,7 +36,7 @@ public class LoginServlet extends HttpServlet { if (user != null) { //Call Generate token here, then save it to database via usermodel; responseUser.username = user.username; - String access_token = tokenService.generateToken(); + String access_token = tokenService.generateToken() + "#" + userAgent + "#" + ipAddress; userModel.saveToken(user.id, access_token); out.println(gson.toJson(new LoginResponseBean("accepted", access_token, LoginResponseBean.TOKEN_AGE_DEFAULT, responseUser))); } else { diff --git a/TugasBesar2_2017/SharedLibrary/src/main/java/com/adaapa/bean/LoginRequestBean.java b/TugasBesar2_2017/SharedLibrary/src/main/java/com/adaapa/bean/LoginRequestBean.java index 7f56c222d83af460f4d88cb531fefc817cd59d1b..cf51f9efca2d0b128c7b2dc3a7ae7ceca36ea8cd 100644 --- a/TugasBesar2_2017/SharedLibrary/src/main/java/com/adaapa/bean/LoginRequestBean.java +++ b/TugasBesar2_2017/SharedLibrary/src/main/java/com/adaapa/bean/LoginRequestBean.java @@ -7,17 +7,23 @@ import java.net.URLEncoder; public class LoginRequestBean implements Serializable { private String username; private String password; + private String userAgent; + private String ipAddress; - public LoginRequestBean(String username, String password) { + public LoginRequestBean(String username, String password, String userAgent, String ipAddress) { this.username = username; this.password = password; + this.userAgent = userAgent; + this.ipAddress = ipAddress; } public String getURLParameter() throws UnsupportedEncodingException { return String.format( - "username=%s&password=%s", + "username=%s&password=%s&user_agent=%s&ip_address=%s", URLEncoder.encode(username, "UTF-8"), - URLEncoder.encode(password, "UTF-8") + URLEncoder.encode(password, "UTF-8"), + URLEncoder.encode(userAgent, "UTF-8"), + URLEncoder.encode(ipAddress, "UTF-8") ); } } diff --git a/TugasBesar2_2017/WebApp/src/main/java/com/adaapa/adaojek/servlets/LoginServlet.java b/TugasBesar2_2017/WebApp/src/main/java/com/adaapa/adaojek/servlets/LoginServlet.java index 2596b2437c09aa80e1148c7e08a7c473efee4b6b..59a6f7469fb4c2e32252f887c1d06b7de5f8d667 100644 --- a/TugasBesar2_2017/WebApp/src/main/java/com/adaapa/adaojek/servlets/LoginServlet.java +++ b/TugasBesar2_2017/WebApp/src/main/java/com/adaapa/adaojek/servlets/LoginServlet.java @@ -41,7 +41,9 @@ public class LoginServlet extends HttpServlet { PrintWriter out = resp.getWriter(); String username = req.getParameter("username"); String password = req.getParameter("password"); - LoginRequestBean loginBean = new LoginRequestBean(username, password); + String userAgent = req.getHeader("User-Agent"); + String ipAddress = req.getRemoteAddr(); + LoginRequestBean loginBean = new LoginRequestBean(username, password, userAgent, ipAddress); LoginResponseBean loginResponse = gson.fromJson(RequestSender.sendRequest(domain.getISDomain() + LOGIN_URL, "POST", "application/x-www-form-urlencoded", loginBean.getURLParameter()), LoginResponseBean.class);