Ravi Nori has uploaded a new change for review. Change subject: aaa: Modify welcome screen to show user name and options as menu ......................................................................
aaa: Modify welcome screen to show user name and options as menu Adds menu to welcome screen. Will be merged to patch #2 until intial review Change-Id: I0227778d53f4c63867aa2887580539efab8fa7c8 Bug-Url: https://bugzilla.redhat.com/1092744 Signed-off-by: Ravi Nori <rn...@redhat.com> --- M backend/manager/modules/aaa/src/main/java/org/ovirt/engine/core/aaa/filters/FiltersHelper.java M backend/manager/modules/aaa/src/main/java/org/ovirt/engine/core/aaa/filters/SSOLoginFilter.java M backend/manager/modules/aaa/src/main/java/org/ovirt/engine/core/aaa/filters/SSORestApiLoginFilter.java M backend/manager/modules/aaa/src/main/java/org/ovirt/engine/core/aaa/servlet/SSOPostLoginServlet.java M backend/manager/modules/aaa/src/main/modules/org/ovirt/engine/core/aaa/main/module.xml M backend/manager/modules/welcome/pom.xml M backend/manager/modules/welcome/src/main/java/org/ovirt/engine/core/WelcomeServlet.java M backend/manager/modules/welcome/src/main/webapp/WEB-INF/error.jsp M backend/manager/modules/welcome/src/main/webapp/WEB-INF/ovirt-engine.jsp M backend/manager/modules/welcome/src/main/webapp/WEB-INF/web.xml M backend/manager/modules/welcome/src/test/java/org/ovirt/engine/core/WelcomeServletTest.java M packaging/services/ovirt-engine/ovirt-engine.conf.in 12 files changed, 198 insertions(+), 61 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/72/40672/1 diff --git a/backend/manager/modules/aaa/src/main/java/org/ovirt/engine/core/aaa/filters/FiltersHelper.java b/backend/manager/modules/aaa/src/main/java/org/ovirt/engine/core/aaa/filters/FiltersHelper.java index 7e5fd14..37a079e 100644 --- a/backend/manager/modules/aaa/src/main/java/org/ovirt/engine/core/aaa/filters/FiltersHelper.java +++ b/backend/manager/modules/aaa/src/main/java/org/ovirt/engine/core/aaa/filters/FiltersHelper.java @@ -8,6 +8,8 @@ import java.security.GeneralSecurityException; import java.security.KeyStore; import java.util.Enumeration; +import java.util.HashMap; +import java.util.Map; import javax.naming.Context; import javax.naming.InitialContext; @@ -18,6 +20,8 @@ import org.apache.commons.lang.StringUtils; import org.apache.http.HeaderElement; import org.apache.http.message.BasicHeaderValueParser; +import org.codehaus.jackson.map.DeserializationConfig; +import org.codehaus.jackson.map.ObjectMapper; import org.ovirt.engine.core.aaa.SSOQueryServiceUtils; import org.ovirt.engine.core.common.constants.SessionConstants; import org.ovirt.engine.core.common.interfaces.BackendLocal; @@ -77,20 +81,37 @@ } } - public static boolean isSessionValid(HttpServletRequest req) throws NamingException { - String sessionId = (String) req.getSession(true).getAttribute(SessionConstants.SSO_TOKEN_KEY); + public static boolean isSessionValid(HttpServletRequest req) { + return isSessionValid(req, (String) req.getSession(true).getAttribute(SessionConstants.SSO_TOKEN_KEY)); + } + + public static boolean isSessionValid(HttpServletRequest req, String token) { boolean isValid = false; - if (StringUtils.isNotEmpty(sessionId)) { + if (StringUtils.isNotEmpty(token)) { try { - SSOQueryServiceUtils.getFromSsoQueryService(req, "command=sso-token-validate&sso_token=%s", sessionId); + SSOQueryServiceUtils.getFromSsoQueryService(req, "command=sso-token-validate&sso_token=%s", token); isValid = true; } catch (Exception e) { - log.error("Session not valid session id = " + sessionId, e.getMessage()); + log.error("Session not valid session id = " + token, e.getMessage()); } } return isValid; } + public static String getCurrentSsoSessionUser(HttpServletRequest req, String token) { + String username = "Not Logged In"; + try { + String userInfoJson = SSOQueryServiceUtils.getFromSsoQueryService(req, "command=sso-token-query&sso_token=%s", token); + ObjectMapper mapper = new ObjectMapper().configure(DeserializationConfig.Feature.FAIL_ON_UNKNOWN_PROPERTIES, false) + .enableDefaultTyping(ObjectMapper.DefaultTyping.OBJECT_AND_NON_CONCRETE); + Map<String, String> userInfoMap = mapper.readValue(userInfoJson, HashMap.class); + username = userInfoMap.get("userName") + "@" + userInfoMap.get("profile"); + } catch (Exception e) { + log.error("Unable to query sso for current user", e.getMessage()); + } + return username; + } + public static HttpURLConnection create(URL url) throws IOException, GeneralSecurityException { return new HttpURLConnectionBuilder(url).setHttpsProtocol("TLSv1") .setReadTimeout(0) diff --git a/backend/manager/modules/aaa/src/main/java/org/ovirt/engine/core/aaa/filters/SSOLoginFilter.java b/backend/manager/modules/aaa/src/main/java/org/ovirt/engine/core/aaa/filters/SSOLoginFilter.java index 04820d8..cae47be 100644 --- a/backend/manager/modules/aaa/src/main/java/org/ovirt/engine/core/aaa/filters/SSOLoginFilter.java +++ b/backend/manager/modules/aaa/src/main/java/org/ovirt/engine/core/aaa/filters/SSOLoginFilter.java @@ -5,7 +5,6 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import javax.naming.NamingException; import javax.servlet.Filter; import javax.servlet.FilterChain; import javax.servlet.FilterConfig; @@ -33,20 +32,16 @@ public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { HttpServletRequest req = (HttpServletRequest) request; - String queryString = req.getQueryString(); - String requestUri = req.getRequestURI() + (StringUtils.isEmpty(queryString) ? "" : "?" + queryString); - - try { - if (!FiltersHelper.isAuthenticated(req) || !FiltersHelper.isSessionValid((HttpServletRequest) request)) { - ((HttpServletResponse) response).sendRedirect(String.format("%s%s&app_url=%s", req.getServletContext().getContextPath(), loginUrl, ((HttpServletResponse) response).encodeURL(requestUri))); - } else { - ((HttpServletResponse) response).addHeader("OVIRT-SSO-TOKEN", - (String) (((HttpServletRequest)request).getSession(true)).getAttribute(SessionConstants.HTTP_SESSION_ENGINE_SESSION_ID_KEY)); - chain.doFilter(request, response); - } - } catch (NamingException ex) { - log.error("Unable to get reference to backend bean.", ex); - throw new RuntimeException(ex); + StringBuffer requestURL = req.getRequestURL(); + if (StringUtils.isNotEmpty(req.getQueryString())) { + requestURL.append("?").append(req.getQueryString()); + } + if (!FiltersHelper.isAuthenticated(req) || !FiltersHelper.isSessionValid((HttpServletRequest) request)) { + ((HttpServletResponse) response).sendRedirect(String.format("%s%s&app_url=%s", req.getServletContext().getContextPath(), loginUrl, ((HttpServletResponse) response).encodeURL(requestURL.toString()))); + } else { + ((HttpServletResponse) response).addHeader("OVIRT-SSO-TOKEN", + (String) (((HttpServletRequest) request).getSession(true)).getAttribute(SessionConstants.HTTP_SESSION_ENGINE_SESSION_ID_KEY)); + chain.doFilter(request, response); } } diff --git a/backend/manager/modules/aaa/src/main/java/org/ovirt/engine/core/aaa/filters/SSORestApiLoginFilter.java b/backend/manager/modules/aaa/src/main/java/org/ovirt/engine/core/aaa/filters/SSORestApiLoginFilter.java index 4f7fa24..4bfc318 100644 --- a/backend/manager/modules/aaa/src/main/java/org/ovirt/engine/core/aaa/filters/SSORestApiLoginFilter.java +++ b/backend/manager/modules/aaa/src/main/java/org/ovirt/engine/core/aaa/filters/SSORestApiLoginFilter.java @@ -38,15 +38,10 @@ public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { HttpServletRequest req = (HttpServletRequest) request; - try { - if (!FiltersHelper.isAuthenticated(req) || !FiltersHelper.isSessionValid((HttpServletRequest) request)) { - authenticateWithSSO(req); - } - chain.doFilter(request, response); - } catch (NamingException ex) { - log.error("Unable to get reference to backend bean {}", ex); - throw new RuntimeException(ex); + if (!FiltersHelper.isAuthenticated(req) || !FiltersHelper.isSessionValid((HttpServletRequest) request)) { + authenticateWithSSO(req); } + chain.doFilter(request, response); } private void authenticateWithSSO(HttpServletRequest req) throws ServletException { diff --git a/backend/manager/modules/aaa/src/main/java/org/ovirt/engine/core/aaa/servlet/SSOPostLoginServlet.java b/backend/manager/modules/aaa/src/main/java/org/ovirt/engine/core/aaa/servlet/SSOPostLoginServlet.java index c29454d..a72270f 100644 --- a/backend/manager/modules/aaa/src/main/java/org/ovirt/engine/core/aaa/servlet/SSOPostLoginServlet.java +++ b/backend/manager/modules/aaa/src/main/java/org/ovirt/engine/core/aaa/servlet/SSOPostLoginServlet.java @@ -21,6 +21,7 @@ import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import java.io.IOException; +import java.net.URL; import java.util.HashMap; import java.util.Map; @@ -63,6 +64,11 @@ (ExtMap) payload.get("principalRecord"), loginAsAdmin)); if (!queryRetVal.getSucceeded()) { + URL url = new URL(request.getServletContext().getContextPath() + EngineLocalConfig.getInstance().getProperty("SSO_WELCOME_URL")); + String welcomeUrl = url.toString() + "?"; + String switchUserUrl = EngineLocalConfig.getInstance().getProperty("SSO_SWITCH_USER_URL") + "?"; + request.setAttribute("sso_user", username); + request.setAttribute("sso_switch_user_url", String.format("%s?post_action_url=%s&version=%s&invalidate=1&external=0", switchUserUrl, response.encodeURL(welcomeUrl), "0")); String msg = String.format("The user %s is not authorized to perform login", username); log.error(msg); response.sendRedirect(String.format("%s?msg=%s", EngineLocalConfig.getInstance().getProperty("ERROR_PAGE"), response.encodeURL(msg))); diff --git a/backend/manager/modules/aaa/src/main/modules/org/ovirt/engine/core/aaa/main/module.xml b/backend/manager/modules/aaa/src/main/modules/org/ovirt/engine/core/aaa/main/module.xml index 5b49356..a14a420 100644 --- a/backend/manager/modules/aaa/src/main/modules/org/ovirt/engine/core/aaa/main/module.xml +++ b/backend/manager/modules/aaa/src/main/modules/org/ovirt/engine/core/aaa/main/module.xml @@ -18,6 +18,8 @@ <module name="org.ovirt.engine.core.uutils"/> <module name="org.ovirt.engine.api.ovirt-engine-extensions-api"/> <module name="org.slf4j"/> + <module name="org.codehaus.jackson.jackson-core-asl"/> + <module name="org.codehaus.jackson.jackson-mapper-asl"/> </dependencies> </module> diff --git a/backend/manager/modules/welcome/pom.xml b/backend/manager/modules/welcome/pom.xml index 3106908..bfca87a 100644 --- a/backend/manager/modules/welcome/pom.xml +++ b/backend/manager/modules/welcome/pom.xml @@ -60,6 +60,16 @@ <version>${engine.version}</version> </dependency> + <dependency> + <groupId>${engine.groupId}</groupId> + <artifactId>aaa</artifactId> + <version>${engine.version}</version> + </dependency> + + <dependency> + <groupId>org.codehaus.jackson</groupId> + <artifactId>jackson-core-asl</artifactId> + </dependency> </dependencies> <build> diff --git a/backend/manager/modules/welcome/src/main/java/org/ovirt/engine/core/WelcomeServlet.java b/backend/manager/modules/welcome/src/main/java/org/ovirt/engine/core/WelcomeServlet.java index 24969d1..cdf7aaa 100644 --- a/backend/manager/modules/welcome/src/main/java/org/ovirt/engine/core/WelcomeServlet.java +++ b/backend/manager/modules/welcome/src/main/java/org/ovirt/engine/core/WelcomeServlet.java @@ -12,8 +12,10 @@ import javax.servlet.http.HttpServletResponse; import org.apache.commons.lang.StringUtils; +import org.ovirt.engine.core.aaa.filters.FiltersHelper; import org.ovirt.engine.core.branding.BrandingManager; import org.ovirt.engine.core.common.config.ConfigCommon; +import org.ovirt.engine.core.common.constants.SessionConstants; import org.ovirt.engine.core.common.interfaces.BackendLocal; import org.ovirt.engine.core.common.queries.ConfigurationValues; import org.ovirt.engine.core.common.queries.GetConfigurationValueParameters; @@ -21,6 +23,8 @@ import org.ovirt.engine.core.utils.EngineLocalConfig; import org.ovirt.engine.core.utils.servlet.LocaleFilter; import org.ovirt.engine.core.utils.servlet.UnsupportedLocaleHelper; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; /** * This Servlet serves the welcome page to allow users to select either web admin or user portal. @@ -56,7 +60,11 @@ */ private transient BrandingManager brandingManager; + private String ssoGetTokenUrl; private String switchUserUrl; + private String logoutUrl; + + private final Logger log = LoggerFactory.getLogger(getClass()); /** * Setter for the {@code BackendLocal} bean. @@ -71,14 +79,17 @@ @Override public void init() { init(BrandingManager.getInstance()); - switchUserUrl = getServletConfig().getInitParameter("sso-switch-user-url"); - if (switchUserUrl == null) { - throw new RuntimeException("No sso-switch-user-url init parameter specified for WelcomeServlet."); + ssoGetTokenUrl = getInitString("SSO_GET_TOKEN_URL") + "?"; + switchUserUrl = getInitString("SSO_SWITCH_USER_URL"); + logoutUrl = getInitString("SSO_LOGOUT_URL"); + } + + private String getInitString(String paramName) { + String initParamVal = EngineLocalConfig.getInstance().getProperty(paramName); + if (StringUtils.isEmpty(initParamVal)) { + throw new RuntimeException(String.format("No %s engine config value found.", paramName)); } - switchUserUrl = EngineLocalConfig.getInstance().expandString(switchUserUrl.replaceAll("%\\{", "\\${")); - if (StringUtils.isEmpty(switchUserUrl)) { - throw new RuntimeException("No SSO_SWITCH_USER_URL engine config value found."); - } + return initParamVal; } /** * Init with the branding manager as a parameter. @@ -91,18 +102,34 @@ @Override protected void doGet(final HttpServletRequest request, final HttpServletResponse response) throws IOException, ServletException { - request.setAttribute("sso_switch_user_url", String.format("%s?post_action_url=%s&version=%s&invalidate=1&external=0", switchUserUrl, response.encodeURL("/ovirt-engine/?"), "0")); - request.setAttribute(LOCALE_KEYS, UnsupportedLocaleHelper.getDisplayedLocales(LocaleFilter.getLocaleKeys())); - String oVirtVersion = backend.runPublicQuery(VdcQueryType.GetConfigurationValue, - new GetConfigurationValueParameters(ConfigurationValues.ProductRPMVersion, - ConfigCommon.defaultConfigurationVersion)).getReturnValue(); - request.setAttribute(VERSION, oVirtVersion != null ? oVirtVersion : "myVersion"); - request.setAttribute(SECTIONS, brandingManager - .getWelcomeSections((Locale) request.getAttribute(LocaleFilter.LOCALE))); - RequestDispatcher dispatcher = request.getRequestDispatcher("/WEB-INF/ovirt-engine.jsp"); - response.setContentType("text/html;charset=UTF-8"); - if (dispatcher != null) { - dispatcher.include(request, response); + String sso_token = request.getParameter(SessionConstants.SSO_TOKEN_KEY); + if (!"".equals(sso_token) && !FiltersHelper.isSessionValid(request, sso_token)) { + response.sendRedirect(String.format("%s&post_action_url=%s&version=%s", + ssoGetTokenUrl, + response.encodeURL(request.getRequestURL().toString() + "?"), + FiltersHelper.VERSION)); + } else { + try { + if (StringUtils.isNotEmpty(sso_token)) { + request.setAttribute("sso_user", FiltersHelper.getCurrentSsoSessionUser(request, sso_token)); + } + } catch (Exception e) { + log.error("Unable to get session user"); + } + request.setAttribute("sso_logout_url", String.format("%s?post_action_url=%s&version=%s&invalidate=1&external=0", logoutUrl, response.encodeURL(request.getRequestURL().toString() + "?"), "0")); + request.setAttribute("sso_switch_user_url", String.format("%s?post_action_url=%s&version=%s&invalidate=1&external=0", switchUserUrl, response.encodeURL(request.getRequestURL().toString() + "?"), "0")); + request.setAttribute(LOCALE_KEYS, UnsupportedLocaleHelper.getDisplayedLocales(LocaleFilter.getLocaleKeys())); + String oVirtVersion = backend.runPublicQuery(VdcQueryType.GetConfigurationValue, + new GetConfigurationValueParameters(ConfigurationValues.ProductRPMVersion, + ConfigCommon.defaultConfigurationVersion)).getReturnValue(); + request.setAttribute(VERSION, oVirtVersion != null ? oVirtVersion : "myVersion"); + request.setAttribute(SECTIONS, brandingManager + .getWelcomeSections((Locale) request.getAttribute(LocaleFilter.LOCALE))); + RequestDispatcher dispatcher = request.getRequestDispatcher("/WEB-INF/ovirt-engine.jsp"); + response.setContentType("text/html;charset=UTF-8"); + if (dispatcher != null) { + dispatcher.include(request, response); + } } } diff --git a/backend/manager/modules/welcome/src/main/webapp/WEB-INF/error.jsp b/backend/manager/modules/welcome/src/main/webapp/WEB-INF/error.jsp index dc78c51..8a3d92c 100644 --- a/backend/manager/modules/welcome/src/main/webapp/WEB-INF/error.jsp +++ b/backend/manager/modules/welcome/src/main/webapp/WEB-INF/error.jsp @@ -18,6 +18,40 @@ <a href="<obrand:messages key="obrand.common.vendor_url"/>" class="obrand_loginPageLogoImageLink"> <span class="obrand_loginPageLogoImage"></span> </a> + <div style="height: 40px; background-image: -webkit-gradient(linear, left 0%, left 100%, from(#474c50), to(#383f43)); + background-image: -webkit-linear-gradient(top, #474c50 0%, #383f43 100%); + background-image: -moz-linear-gradient(top, #474c50 0%, #383f43 100%); + background-image: linear-gradient(to bottom, #474c50 0%, #383f43 100%); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff474c50', endColorstr='#ff383f43', GradientType=0);"> + <div class="collapse navbar-collapse navbar-collapse-1" style="position: absolute; top 0px; right: 20px;"> + <ul class="nav navbar-nav navbar-utility"> + <li class="dropdown"> + <a href="#" class="dropdown-toggle" data-toggle="dropdown"> + <span class="pficon pficon-user" style="font-size: 11px; cursor: pointer;" ></span> + <c:choose> + <c:when test='${requestScope["sso_user"] != null}'> + ${requestScope["sso_user"]} + </c:when> + <c:otherwise> + Not Logged In + </c:otherwise> + </c:choose> + <b class="caret"></b> + </a> + <ul class="dropdown-menu"> + <c:choose> + <c:otherwise> + <li> + <a href='${requestScope["sso_switch_user_url"]}' style="font-size: 11px; cursor: pointer;">Switch User</a> + </li> + </c:otherwise> + </c:choose> + </ul> + </li> + </ul> + </div> + </div> <div class="login-pf"> <div class="container"> <div class="row"> diff --git a/backend/manager/modules/welcome/src/main/webapp/WEB-INF/ovirt-engine.jsp b/backend/manager/modules/welcome/src/main/webapp/WEB-INF/ovirt-engine.jsp index 1e9a936..03474c5 100644 --- a/backend/manager/modules/welcome/src/main/webapp/WEB-INF/ovirt-engine.jsp +++ b/backend/manager/modules/welcome/src/main/webapp/WEB-INF/ovirt-engine.jsp @@ -18,6 +18,60 @@ <a href="<obrand:messages key="obrand.common.vendor_url"/>" class="obrand_loginPageLogoImageLink"> <span class="obrand_loginPageLogoImage"></span> </a> + <div class="navbar-header"> + <!-- toggles navbar at mobile resolutions --> + <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse-1"> + <span class="sr-only">Toggle navigation</span> + <span class="icon-bar"></span> + <span class="icon-bar"></span> + <span class="icon-bar"></span> + </button> + <a class="navbar-brand" href="/"> + <img class="{style.obrand_headerLogoImage}" url="clear.cache.gif" /> + </a> + </div> + <div style="height: 40px; background-image: -webkit-gradient(linear, left 0%, left 100%, from(#474c50), to(#383f43)); + background-image: -webkit-linear-gradient(top, #474c50 0%, #383f43 100%); + background-image: -moz-linear-gradient(top, #474c50 0%, #383f43 100%); + background-image: linear-gradient(to bottom, #474c50 0%, #383f43 100%); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff474c50', endColorstr='#ff383f43', GradientType=0);"> + <div class="collapse navbar-collapse navbar-collapse-1" style="position: absolute; top 0px; right: 20px;"> + <ul class="nav navbar-nav navbar-utility"> + <li class="dropdown"> + <a href="#" class="dropdown-toggle" data-toggle="dropdown"> + <span class="pficon pficon-user" style="font-size: 11px; cursor: pointer;" ></span> + <c:choose> + <c:when test='${requestScope["sso_user"] != null}'> + ${requestScope["sso_user"]} + </c:when> + <c:otherwise> + Not Logged In + </c:otherwise> + </c:choose> + <b class="caret"></b> + </a> + <ul class="dropdown-menu"> + <c:choose> + <c:when test='${requestScope["sso_user"] != null}'> + <li> + <a href='${requestScope["sso_logout_url"]}' style="font-size: 11px; cursor: pointer;">Sign Out</a> + </li> + <li> + <a href='${requestScope["sso_switch_user_url"]}' style="font-size: 11px; cursor: pointer;">Switch User</a> + </li> + </c:when> + <c:otherwise> + <li> + <a href='${requestScope["sso_switch_user_url"]}' style="font-size: 11px; cursor: pointer;">Login</a> + </li> + </c:otherwise> + </c:choose> + </ul> + </li> + </ul> + </div> + </div> <div class="login-pf"> <div class="container"> <div class="row"> @@ -42,14 +96,6 @@ <script type="text/JavaScript"> <!-- document.write('<span class="version-text"><fmt:message key="obrand.welcome.version"><fmt:param value="${requestScope[\'version\']}" /> </fmt:message></span>') - //--> - </script> - </div> - - <div class="col-sm-12"> - <script type="text/JavaScript"> - <!-- - document.write('<span class="label"><a href=${requestScope["sso_switch_user_url"]}>Switch User</a></span>') //--> </script> </div> diff --git a/backend/manager/modules/welcome/src/main/webapp/WEB-INF/web.xml b/backend/manager/modules/welcome/src/main/webapp/WEB-INF/web.xml index 9c3f1fb..513b600 100644 --- a/backend/manager/modules/welcome/src/main/webapp/WEB-INF/web.xml +++ b/backend/manager/modules/welcome/src/main/webapp/WEB-INF/web.xml @@ -87,10 +87,6 @@ <servlet> <servlet-name>WelcomeServlet</servlet-name> <servlet-class>org.ovirt.engine.core.WelcomeServlet</servlet-class> - <init-param> - <param-name>sso-switch-user-url</param-name> - <param-value>%{SSO_SWITCH_USER_URL}</param-value> - </init-param> </servlet> <servlet-mapping> diff --git a/backend/manager/modules/welcome/src/test/java/org/ovirt/engine/core/WelcomeServletTest.java b/backend/manager/modules/welcome/src/test/java/org/ovirt/engine/core/WelcomeServletTest.java index 97274a9..075c57c 100644 --- a/backend/manager/modules/welcome/src/test/java/org/ovirt/engine/core/WelcomeServletTest.java +++ b/backend/manager/modules/welcome/src/test/java/org/ovirt/engine/core/WelcomeServletTest.java @@ -26,6 +26,7 @@ import org.ovirt.engine.core.branding.BrandingManager; import org.ovirt.engine.core.branding.BrandingTheme; import org.ovirt.engine.core.common.config.ConfigValues; +import org.ovirt.engine.core.common.constants.SessionConstants; import org.ovirt.engine.core.common.interfaces.BackendLocal; import org.ovirt.engine.core.common.queries.VdcQueryParametersBase; import org.ovirt.engine.core.common.queries.VdcQueryReturnValue; @@ -78,7 +79,8 @@ @Test public void testDoGetHttpServletRequestHttpServletResponseNoDispatcher() throws IOException, ServletException { when(mockRequest.getAttribute(LocaleFilter.LOCALE)).thenReturn(Locale.JAPANESE); - when(mockRequest.getParameter("user")).thenReturn(""); + when(mockRequest.getParameter(SessionConstants.SSO_TOKEN_KEY)).thenReturn(""); + when(mockRequest.getRequestURL()).thenReturn(new StringBuffer("http://localhost:8080/ovirt-engine/")); testServlet.doGet(mockRequest, mockResponse); verify(mockRequest).setAttribute("localeKeys", localeKeys); //Make sure the content type contains UTF-8 so the characters display properly. @@ -89,7 +91,8 @@ public void testDoGetHttpServletRequestHttpServletResponseWithDispatcher() throws IOException, ServletException { when(mockRequest.getAttribute(LocaleFilter.LOCALE)).thenReturn(Locale.JAPANESE); when(mockRequest.getRequestDispatcher("/WEB-INF/ovirt-engine.jsp")).thenReturn(mockDispatcher); - when(mockRequest.getParameter("user")).thenReturn(""); + when(mockRequest.getParameter(SessionConstants.SSO_TOKEN_KEY)).thenReturn(""); + when(mockRequest.getRequestURL()).thenReturn(new StringBuffer("http://localhost:8080/ovirt-engine/")); testServlet.doGet(mockRequest, mockResponse); verify(mockRequest).setAttribute("localeKeys", localeKeys); //Make sure the content type contains UTF-8 so the characters display properly. diff --git a/packaging/services/ovirt-engine/ovirt-engine.conf.in b/packaging/services/ovirt-engine/ovirt-engine.conf.in index 9de8c4c..b14cafe 100644 --- a/packaging/services/ovirt-engine/ovirt-engine.conf.in +++ b/packaging/services/ovirt-engine/ovirt-engine.conf.in @@ -268,6 +268,8 @@ SSO_WELCOME_URL=${ENGINE_URI} SSO_URL=${ENGINE_URI}/sso SSO_SWITCH_USER_URL=${SSO_URL}/login +SSO_LOGOUT_URL=${ENGINE_URI}/sso/logout +SSO_GET_TOKEN_URL=${ENGINE_URI}/sso/get-token SSO_ENABLE_EXTERNAL_AUTH=true SSO_ENFORCE_NEGO=false SSO_ACCEPT_BASIC_AUTH_HEADERS=true -- To view, visit https://gerrit.ovirt.org/40672 To unsubscribe, visit https://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I0227778d53f4c63867aa2887580539efab8fa7c8 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Ravi Nori <rn...@redhat.com> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches