Advertisement
Guest User

Untitled

a guest
Jun 19th, 2016
112
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.05 KB | None | 0 0
  1. <security:http pattern="/eklienci/**"
  2. authentication-manager-ref="authenticationManager" entry-point-ref="restAuthenticationEntryPoint"
  3. create-session="stateless">
  4. <security:intercept-url pattern="/eklienci/**"
  5. access="hasAnyAuthority('ADMIN','USER','VIEWER')" />
  6. <form-login
  7. authentication-success-handler-ref="mySuccessHandler"
  8. authentication-failure-handler-ref="myFailureHandler"
  9. />
  10. <security:custom-filter ref="restServicesFilter"
  11. before="PRE_AUTH_FILTER" />
  12. </security:http>
  13. <!-- other stuff --!>
  14. <beans:bean id="restAuthenticationEntryPoint"
  15. class="pl.aemon.smom.config.RestAuthenticationEntryPoint" />
  16. <!-- Filter for REST services. -->
  17. <beans:bean id="restServicesFilter"
  18. class="pl.aemon.smom.config.RestUsernamePasswordAuthenticationFilter">
  19. <beans:property name="postOnly" value="true" />
  20. <beans:property name="authenticationManager" ref="authenticationManager" />
  21. <beans:property name="authenticationSuccessHandler" ref="mySuccessHandler" />
  22. </beans:bean>
  23.  
  24. public class RestUsernamePasswordAuthenticationFilter extends UsernamePasswordAuthenticationFilter
  25. {
  26.  
  27. @Autowired
  28. private CustomAuthenticationProvider authenticationProvider;
  29.  
  30.  
  31. @Override
  32. public Authentication attemptAuthentication(HttpServletRequest request, HttpServletResponse response) throws AuthenticationException {
  33.  
  34. Enumeration<String> names = request.getHeaderNames();
  35. while(names.hasMoreElements())
  36. {
  37. System.out.println(names.nextElement());
  38. }
  39. String username = obtainUsername(request);
  40. String password = obtainPassword(request);
  41. System.out.println("Username " + username + " password: " + password);
  42. if(username!=null)
  43. {
  44. username = username.trim();
  45. }
  46.  
  47. UsernamePasswordAuthenticationToken authRequest = new UsernamePasswordAuthenticationToken(username, password);
  48.  
  49. // Allow subclasses to set the "details" property
  50. setDetails(request, authRequest);
  51. return authenticationProvider.authenticateRest(authRequest);
  52.  
  53. // System.out.println(auth.toString());
  54. // return auth;
  55. }
  56.  
  57.  
  58.  
  59. @Override
  60. protected String obtainPassword(HttpServletRequest request) {
  61. return request.getHeader("password");
  62. }
  63.  
  64. @Override
  65. protected String obtainUsername(HttpServletRequest request) {
  66. return request.getHeader("username");
  67. }
  68.  
  69. @Override
  70. public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException,
  71. ServletException {
  72.  
  73. HttpServletRequest httpRequest = (HttpServletRequest) request;
  74. HttpServletResponse httpResponse = (HttpServletResponse) response;
  75.  
  76. Authentication auth = attemptAuthentication(httpRequest, httpResponse);
  77. SecurityContextHolder.getContext().setAuthentication(auth);
  78.  
  79. chain.doFilter(request, response);
  80.  
  81. }
  82. }
  83.  
  84. @RestController
  85. @RequestMapping("/eklienci")
  86. public class EklientRestController
  87. {
  88. @RequestMapping(value="/get/{eklientid}")
  89. public Eklient get(@PathVariable String eklientid)
  90. {
  91. return userService.findById(eklientid);
  92. }
  93.  
  94. @RequestMapping(value = "/add", method = RequestMethod.POST, produces="application/json", consumes="application/json")
  95. @ResponseBody
  96. public String add(@RequestBody String json)
  97. {
  98. System.out.println(json);
  99. Eklient pj = new Eklient();
  100. ObjectMapper mapper = new ObjectMapper();
  101. try
  102. {
  103. pj = mapper.readValue(json, Eklient.class);
  104. return mapper.writeValueAsString(pj);
  105. } catch (JsonParseException e)
  106. {
  107. // TODO Auto-generated catch block
  108. e.printStackTrace();
  109. } catch (JsonMappingException e)
  110. {
  111. // TODO Auto-generated catch block
  112. e.printStackTrace();
  113. } catch (IOException e)
  114. {
  115. // TODO Auto-generated catch block
  116. e.printStackTrace();
  117. }
  118.  
  119. return "Error";
  120. }
  121. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement