1
+ /*
2
+ * Copyright (c) 2015 Espark And ©Adarsh Development Services @copyright All rights reserved.
3
+ *
4
+ * Redistribution and use in source and binary forms, with or without
5
+ * modification, are permitted provided that the following conditions
6
+ * are met:
7
+ *
8
+ * - Redistributions of source code must retain the above copyright
9
+ * notice, this list of conditions and the following disclaimer.
10
+ *
11
+ * - Redistributions in binary form must reproduce the above copyright
12
+ * notice, this list of conditions and the following disclaimer in the
13
+ * documentation and/or other materials provided with the distribution.
14
+ *
15
+ * - Neither the name of Espark nor the names of its
16
+ * contributors may be used to endorse or promote products derived
17
+ * from this software without specific prior written permission.
18
+ *
19
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
20
+ * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
21
+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
22
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
23
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
24
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
25
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
26
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
27
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
28
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
29
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30
+ */
31
+ package com .espark .adarsh .configuration .security ;
32
+
33
+ import org .springframework .context .annotation .Configuration ;
34
+ import org .springframework .security .config .annotation .authentication .builders .AuthenticationManagerBuilder ;
35
+ import org .springframework .security .config .annotation .authentication .configurers .GlobalAuthenticationConfigurerAdapter ;
36
+ import org .springframework .security .config .annotation .web .builders .HttpSecurity ;
37
+ import org .springframework .security .config .annotation .web .builders .WebSecurity ;
38
+ import org .springframework .security .config .annotation .web .configuration .EnableWebSecurity ;
39
+ import org .springframework .security .config .annotation .web .configuration .WebSecurityConfigurerAdapter ;
40
+ import org .springframework .security .web .util .matcher .AntPathRequestMatcher ;
41
+
42
+
43
+ /**
44
+ * @author Adarsh Kumar
45
+ * @author $LastChangedBy: Adarsh Kumar$
46
+ * @version $Revision: 0001 $, $Date:: 1/1/10 0:00 AM#$
47
+ * @Espark @copyright all right reserve
48
+ */
49
+ @ Configuration
50
+ @ EnableWebSecurity
51
+ public class SecurityConfiguration extends WebSecurityConfigurerAdapter {
52
+
53
+ @ Override
54
+ public void configure (WebSecurity webSecurity ) throws Exception {
55
+ webSecurity .ignoring ()
56
+ .antMatchers ("/css/**" )
57
+ .antMatchers ("/js/**" )
58
+ .antMatchers ("/font/**" );
59
+ }
60
+
61
+ @ Override
62
+ protected void configure (HttpSecurity httpSecurity ) throws Exception {
63
+
64
+ httpSecurity
65
+ .authorizeRequests ()
66
+ .antMatchers ("/" , "/esparkHome" ).permitAll ()
67
+ .anyRequest ().authenticated ()
68
+ .and ()
69
+ .formLogin ()
70
+ .loginPage ("/esparkLoginPage" )
71
+ .defaultSuccessUrl ("/esparkUserPage" )
72
+ .permitAll ()
73
+ .and ()
74
+ .csrf ().disable ()
75
+ .logout ().logoutRequestMatcher (new AntPathRequestMatcher ("/logout" ))
76
+ .logoutSuccessUrl ("/esparkHome" )
77
+ .permitAll ();
78
+
79
+ }
80
+
81
+
82
+ @ Configuration
83
+ protected static class AuthenticationConfiguration extends
84
+ GlobalAuthenticationConfigurerAdapter {
85
+
86
+ @ Override
87
+ public void init (AuthenticationManagerBuilder auth ) throws Exception {
88
+ auth
89
+ .ldapAuthentication ()
90
+ .userDnPatterns ("uid={0},ou=people" )
91
+ .groupSearchBase ("ou=groups" )
92
+ .contextSource ().ldif ("classpath:espark.ldif" );
93
+
94
+ }
95
+ }
96
+
97
+ }
0 commit comments