Roberto Sánchez
2013-12-19 4362922ba00a22d9177df1731673b5fb4db03fb5
securis/src/main/java/net/curisit/securis/AuthFilter.java
....@@ -14,9 +14,14 @@
1414 import javax.servlet.http.HttpServletRequest;
1515 import javax.servlet.http.HttpServletRequestWrapper;
1616
17
+import org.slf4j.Logger;
18
+import org.slf4j.LoggerFactory;
19
+
1720 @Singleton
1821 @WebFilter(urlPatterns = "/*")
1922 public class AuthFilter implements Filter {
23
+
24
+ private static final Logger log = LoggerFactory.getLogger(AuthFilter.class);
2025
2126 @Override
2227 public void init(FilterConfig fc) throws ServletException {
....@@ -27,9 +32,14 @@
2732 HttpServletRequest req = (HttpServletRequest) sr;
2833
2934 // System.out.println("filter: " + req.getRequestURI() + " user: " + sr.getParameter("user"));
30
- if (sr.getParameter("user") != null) {
35
+ if (sr.getParameter("user") != null || req.getSession().getAttribute("user") != null) {
36
+ String username = sr.getParameter("user");
37
+ if (username == null)
38
+ username = (String) req.getSession().getAttribute("user");
39
+ String role = username.equals("advance") ? "advance" : "normal";
3140 // ResteasyProviderFactory.pushContext(User.class, new User(sr.getParameter("user")));
32
- fc.doFilter(new UserRoleRequestWrapper("user", sr.getParameter("user"), req), sr1);
41
+ log.info("Role for user: {} = {}", username, role);
42
+ fc.doFilter(new UserRoleRequestWrapper(role, sr.getParameter("user"), req), sr1);
3343 } else {
3444 fc.doFilter(req, sr1);
3545 }
....@@ -53,6 +63,7 @@
5363
5464 @Override
5565 public boolean isUserInRole(String role) {
66
+ log.info("isUserRole METHOD: {}, {}", role, this.role);
5667 if (this.role == null) {
5768 return super.isUserInRole(role);
5869 }