Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- HttpServletRequest#isUserInRole
- @WebServlet("/Debug")
- public class DebugServlet extends HttpServlet
- {
- /**
- * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
- */
- protected void doGet(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, IOException
- {
- // TODO Auto-generated method stub
- Gson gson = new Gson();
- response.getWriter().append(gson.toJson(request.getUserPrincipal()));
- response.getWriter().append(" ");
- response.getWriter().append(gson.toJson(request.isUserInRole("sysAdmin")));
- response.getWriter().append(" ");
- response.getWriter().append(gson.toJson(request.isUserInRole("role1")));
- response.getWriter().append(" ");
- response.getWriter().append(gson.toJson(request.isUserInRole("role2")));
- }
- }
- @WebServlet("/Debug2")
- @RolesAllowed({"sysAdmin"})
- @DeclareRoles({"sysAdmin", "role1", "role2"})
- public class Debug2 extends ServletBase
- {
- /**
- * Default constructor.
- */
- public Debug2()
- {
- // TODO Auto-generated constructor stub
- }
- /**
- * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
- */
- protected void doGet(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, IOException
- {
- request.setAttribute("isRole1", request.isUserInRole("role1"));
- request.setAttribute("isRole2", request.isUserInRole("role2"));
- request.setAttribute("isSysAdmin", request.isUserInRole("sysAdmin"));
- request.getRequestDispatcher("/WEB-INF/debug/index.jsp").forward(request, response);
- }
- }
- @WebServlet("/Debug2")
- @RolesAllowed({"sysAdmin"})
- @DeclareRoles({"sysAdmin", "role1", "role2"})
- public class Debug2 extends ServletBase
- {
- /**
- * Default constructor.
- */
- public Debug2()
- {
- // TODO Auto-generated constructor stub
- }
- /**
- * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
- */
- protected void doGet(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, IOException
- {
- request.setAttribute("isRole1", request.isUserInRole("role1"));
- request.setAttribute("isRole2", request.isUserInRole("role2"));
- request.setAttribute("isSysAdmin", request.isUserInRole("sysAdmin"));
- request.getRequestDispatcher("/WEB-INF/debug/index.jsp").forward(request, response);
- }
- }
- <body>
- <table>
- <tr>
- <td>Role 1</td>
- <td><c:choose>
- <c:when test="${request.isUserInRole('role1') == true }">Yes</c:when>
- <c:otherwise>No</c:otherwise>
- </c:choose></td>
- <td><c:choose>
- <c:when test="${isRole1== true }">Yes</c:when>
- <c:otherwise>No</c:otherwise>
- </c:choose></td>
- <td>${request.isUserInRole('role1') }</td>
- <td>${isRole1 }</td>
- </tr>
- <tr>
- <td>Role 2</td>
- <td><c:choose>
- <c:when
- test="${request.isUserInRole('role2')== true }">Yes</c:when>
- <c:otherwise>No</c:otherwise>
- </c:choose></td>
- <td><c:choose>
- <c:when test="${isRole2 == true}">Yes</c:when>
- <c:otherwise>No</c:otherwise>
- </c:choose></td>
- <td>${request.isUserInRole('role2') }</td>
- <td>${isRole2 }</td>
- </tr>
- <tr>
- <td>System Administrator</td>
- <td><c:choose>
- <c:when test="${request.isUserInRole('sysAdmin')== true }">Yes</c:when>
- <c:otherwise>No</c:otherwise>
- </c:choose></td>
- <td><c:choose>
- <c:when test="${isSysAdmin == true}">Yes</c:when>
- <c:otherwise>No</c:otherwise>
- </c:choose></td>
- <td>${request.isUserInRole('sysAdmin') }</td>
- <td>${isSysAdmin }</td>
- </tr>
- </table>
- </body>
- <glassfish-web-app>
- <context-root>/slam-web</context-root>
- <security-role-mapping>
- <role-name>role2</role-name> <!-- GlassFish Name -->
- <group-name>Role 2</group-name> <!-- DB Name -->
- </security-role-mapping>
- <security-role-mapping>
- <role-name>role1</role-name> <!-- GlassFish Name -->
- <group-name>Role 1</group-name> <!-- DB Name -->
- </security-role-mapping>
- <security-role-mapping>
- <role-name>sysAdmin</role-name> <!-- GlassFish Name -->
- <group-name>System Administrator</group-name> <!-- DB Name -->
- </security-role-mapping>
- </glassfish-web-app>
- <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" metadata-complete="false" version="3.1">
- <display-name>app-web</display-name>
- <welcome-file-list>
- <welcome-file>Debug</welcome-file>
- </welcome-file-list>
- <login-config>
- <auth-method>FORM</auth-method>
- <realm-name>app-secure</realm-name>
- <form-login-config>
- <form-login-page>/Login</form-login-page>
- <form-error-page>/401.jsp</form-error-page>
- </form-login-config>
- </login-config>
- <security-role>
- <role-name>role1</role-name>
- </security-role>
- <security-role>
- <role-name>role2</role-name>
- </security-role>
- <security-role>
- <role-name>sysAdmin</role-name>
- </security-role>
- <security-constraint>
- <display-name>Everyone</display-name>
- <web-resource-collection>
- <web-resource-name>resources</web-resource-name>
- <description></description>
- <url-pattern>/</url-pattern>
- </web-resource-collection>
- <auth-constraint>
- <role-name>role1</role-name>
- <role-name>role2</role-name>
- <role-name>sysAdmin</role-name>
- </auth-constraint>
- <user-data-constraint>
- <transport-guarantee>NONE</transport-guarantee>
- </user-data-constraint>
- </security-constraint>
- <security-constraint>
- <display-name>Allow JS and CSS</display-name>
- <web-resource-collection>
- <web-resource-name>resources</web-resource-name>
- <description></description>
- <url-pattern>/Debug</url-pattern>
- <url-pattern>/Logout</url-pattern>
- <url-pattern>/Login</url-pattern>
- <url-pattern>*.js</url-pattern>
- <url-pattern>*.css</url-pattern>
- <url-pattern>*.png</url-pattern>
- </web-resource-collection>
- </security-constraint>
- <error-page>
- <error-code>403</error-code>
- <location>/WEB-INF/public/403.jsp</location>
- </error-page>
- </web-app>
Add Comment
Please, Sign In to add comment