2 * ============LICENSE_START==========================================
4 * ===================================================================
5 * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
6 * ===================================================================
8 * Unless otherwise specified, all software contained herein is licensed
9 * under the Apache License, Version 2.0 (the "License");
10 * you may not use this software except in compliance with the License.
11 * You may obtain a copy of the License at
13 * http://www.apache.org/licenses/LICENSE-2.0
15 * Unless required by applicable law or agreed to in writing, software
16 * distributed under the License is distributed on an "AS IS" BASIS,
17 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18 * See the License for the specific language governing permissions and
19 * limitations under the License.
21 * Unless otherwise specified, all documentation contained herein is licensed
22 * under the Creative Commons License, Attribution 4.0 Intl. (the "License");
23 * you may not use this documentation except in compliance with the License.
24 * You may obtain a copy of the License at
26 * https://creativecommons.org/licenses/by/4.0/
28 * Unless required by applicable law or agreed to in writing, documentation
29 * distributed under the License is distributed on an "AS IS" BASIS,
30 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
31 * See the License for the specific language governing permissions and
32 * limitations under the License.
34 * ============LICENSE_END============================================
38 package org.onap.portalapp.util;
40 import javax.servlet.http.Cookie;
41 import javax.servlet.http.HttpServletRequest;
42 import javax.servlet.http.HttpServletResponse;
44 import org.onap.portalapp.portal.utils.EPCommonSystemProperties;
45 import org.onap.portalsdk.core.onboarding.util.CipherUtil;
46 import org.onap.portalsdk.core.onboarding.util.KeyConstants;
47 import org.onap.portalsdk.core.onboarding.util.KeyProperties;
49 public class SessionCookieUtil extends CommonSessionCookieUtil{
51 //private static final String JSESSIONID = "JSESSIONID";
52 private static final String USER_ID = "UserId";
54 public static void preSetUp(HttpServletRequest request,
55 HttpServletResponse response) {
56 initateSessionMgtHandler(request);
57 //set up EPService cookie
58 setUpEPServiceCookie(request, response);
61 public static void setUpEPServiceCookie(HttpServletRequest request,
62 HttpServletResponse response) {
63 String jSessionId = getJessionId(request);
64 Cookie cookie1 = new Cookie(EP_SERVICE, jSessionId);
65 cookie1.setSecure(true);
66 cookie1.setMaxAge(cookieMaxAge);
67 cookie1.setDomain(EPCommonSystemProperties.getProperty(EPCommonSystemProperties.COOKIE_DOMAIN));
69 response.addCookie(cookie1);
72 public static void setUpUserIdCookie(HttpServletRequest request,
73 HttpServletResponse response,String userId) throws Exception {
74 logger.info("************** session cookie util set up UserId cookie begins");
75 userId = CipherUtil.encrypt(userId,
76 KeyProperties.getProperty(KeyConstants.CIPHER_ENCRYPTION_KEY));
77 Cookie cookie1 = new Cookie(USER_ID, userId);
78 cookie1.setSecure(true);
79 cookie1.setMaxAge(cookieMaxAge);
80 cookie1.setDomain(EPCommonSystemProperties.getProperty(EPCommonSystemProperties.COOKIE_DOMAIN));
82 response.addCookie(cookie1);
83 logger.info("************** session cookie util set up EP cookie completed");
86 public static String getUserIdFromCookie(HttpServletRequest request,
87 HttpServletResponse response) throws Exception {
89 Cookie[] cookies = request.getCookies();
90 Cookie userIdcookie = null;
92 for (Cookie cookie : cookies)
93 if (cookie.getName().equals(USER_ID))
94 userIdcookie = cookie;
95 if(userIdcookie!=null){
96 userId = CipherUtil.decrypt(userIdcookie.getValue(),
97 KeyProperties.getProperty(KeyConstants.CIPHER_ENCRYPTION_KEY));
100 logger.info("************** session cookie util set up EP cookie completed");