auth-method.jsp 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. <%@page contentType="text/html;charset=UTF-8"%>
  2. <%@page import="java.util.List"%>
  3. <%@page import="java.util.Map"%>
  4. <%@page import="org.springframework.context.ApplicationContext"%>
  5. <%@page import="org.springframework.web.context.support.WebApplicationContextUtils"%>
  6. <%@page import="org.springframework.security.access.ConfigAttribute"%>
  7. <%@page import="org.springframework.security.access.method.MethodSecurityMetadataSource"%>
  8. <%@page import="org.springframework.security.access.method.DelegatingMethodSecurityMetadataSource"%>
  9. <%@page import="com.mossle.core.util.ReflectUtils"%>
  10. <%
  11. ApplicationContext ctx = WebApplicationContextUtils.getWebApplicationContext(application);
  12. DelegatingMethodSecurityMetadataSource delegatingMethodSecurityMetadataSource =
  13. (DelegatingMethodSecurityMetadataSource) ctx.getBean("org.springframework.security.access.method.DelegatingMethodSecurityMetadataSource#0");
  14. List<MethodSecurityMetadataSource> methodSecurityMetadataSources = delegatingMethodSecurityMetadataSource.getMethodSecurityMetadataSources();
  15. %>
  16. <html>
  17. <head>
  18. <meta charset="utf-8">
  19. <title>auth-method</title>
  20. <style>
  21. tbody tr:nth-child(odd) td,
  22. tbody tr:nth-child(odd) th {
  23. background-color: #f9f9f9;
  24. }
  25. </style>
  26. </head>
  27. <body>
  28. <table border="1" width="100%">
  29. <thead>
  30. <tr>
  31. <th>url</th>
  32. <th>perm</th>
  33. </tr>
  34. </thead>
  35. <tbody>
  36. <%
  37. for (MethodSecurityMetadataSource methodSecurityMetadataSource : methodSecurityMetadataSources) {
  38. pageContext.setAttribute("methodSecurityMetadataSource", methodSecurityMetadataSource);
  39. Map<Object, List<ConfigAttribute>> map =
  40. (Map<Object, List<ConfigAttribute>>) ReflectUtils.getFieldValue(methodSecurityMetadataSource, "methodMap");
  41. for (Map.Entry<Object, List<ConfigAttribute>> entry : map.entrySet()) {
  42. pageContext.setAttribute("entry", entry);
  43. %>
  44. <tr>
  45. <td>${entry.key}</td>
  46. <td>${entry.value}</td>
  47. </tr>
  48. <%
  49. }
  50. }
  51. %>
  52. </tbody>
  53. </table>
  54. </body>
  55. </html>