blob: 15cd4c537c49802579a65ab3ce2ae102db6e5601 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
|
package org.openecomp.sdc.securityutil.filters;
import org.openecomp.sdc.securityutil.ISessionValidationFilterConfiguration;
import javax.servlet.http.Cookie;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class SampleFilter extends SessionValidationFilter {
private static class Configuration implements ISessionValidationFilterConfiguration {
private static Configuration instance;
private String securityKey;
private long maxSessionTimeOut;
private long sessionIdleTimeOut;
private String redirectURL;
private List<String> excludedUrls;
private String cookieName;
private String cookieDomain;
private String cookiePath;
private boolean isCookieHttpOnly;
private Configuration() {
//security key should be exactly 16 characters long clear text and then encoded to base64
this.securityKey = "AGLDdG4D04BKm2IxIWEr8o==";
this.maxSessionTimeOut = 24*60*60*1000;
this.sessionIdleTimeOut = 60*60*1000;
this.redirectURL = "https://www.e-access.att.com/ecomp_portal_ist/ecompportal/process_csp";
this.excludedUrls = new ArrayList<>(Arrays.asList("/config","/configmgr","/rest","/kibanaProxy","/healthcheck","/upload.*"));
this.cookieName = "kuku";
this.cookieDomain = "";
this.cookiePath = "/";
this.isCookieHttpOnly = true;
}
public void setSecurityKey(String securityKey) {
this.securityKey = securityKey;
}
public void setMaxSessionTimeOut(long maxSessionTimeOut) {
this.maxSessionTimeOut = maxSessionTimeOut;
}
public void setCookieName(String cookieName) {
this.cookieName = cookieName;
}
public void setRedirectURL(String redirectURL) {
this.redirectURL = redirectURL;
}
public void setExcludedUrls(List<String> excludedUrls) {
this.excludedUrls = excludedUrls;
}
public static Configuration getInstance(){
if (instance == null ){
instance = new Configuration();
}
return instance;
}
@Override
public String getSecurityKey() {
return securityKey;
}
@Override
public long getMaxSessionTimeOut() {
return maxSessionTimeOut;
}
@Override
public long getSessionIdleTimeOut() {
return sessionIdleTimeOut;
}
@Override
public String getCookieName() {
return cookieName;
}
@Override
public String getCookieDomain() {
return cookieDomain;
}
@Override
public String getCookiePath() {
return cookiePath;
}
@Override
public boolean isCookieHttpOnly() {
return isCookieHttpOnly;
}
@Override
public String getRedirectURL() {
return redirectURL;
}
@Override
public List<String> getExcludedUrls() {
return excludedUrls;
}
}
@Override
public ISessionValidationFilterConfiguration getFilterConfiguration() {
return Configuration.getInstance();
}
@Override
protected Cookie addRoleToCookie(Cookie updatedCookie) {
return updatedCookie;
}
@Override
protected boolean isRoleValid(Cookie cookie) {
return true;
}
}
|