diff --git a/config/appsettings.json b/config/appsettings.json index e5b433eacc..12584d853b 100644 --- a/config/appsettings.json +++ b/config/appsettings.json @@ -297,7 +297,17 @@ "documentation-email": "documentation@onlyoffice.com", "max-upload-size": 5242880, "zendesk-key": "", - "samesite": "" + "samesite": "", + "sso": { + "saml": { + "login":{ + "url" :"/sso/login" + }, + "logout":{ + "url" :"/sso/slo" + } + } + } }, "ConnectionStrings": { "default": { diff --git a/web/ASC.Web.Api/Api/AuthenticationController.cs b/web/ASC.Web.Api/Api/AuthenticationController.cs index 4c6dc07341..9c5e0b717f 100644 --- a/web/ASC.Web.Api/Api/AuthenticationController.cs +++ b/web/ASC.Web.Api/Api/AuthenticationController.cs @@ -351,7 +351,7 @@ public class AuthenticationController : ControllerBase [AllowNotPayment] [HttpPost("logout")] [HttpGet("logout")]// temp fix - public async Task Logout() + public async Task Logout() { var cookie = _cookiesManager.GetCookies(CookiesType.AuthKey); var loginEventId = _cookieStorage.GetLoginEventIdFromCookie(cookie); @@ -379,9 +379,11 @@ public class AuthenticationController : ControllerBase SessionId = user.SsoSessionId }); - _httpContextAccessor.HttpContext.Response.Redirect(_setupInfo.SsoSamlLogoutUrl + "?data=" + HttpUtility.UrlEncode(logoutSsoUserData), true); + return _setupInfo.SsoSamlLogoutUrl + "?data=" + HttpUtility.UrlEncode(logoutSsoUserData); } } + + return null; } /// diff --git a/web/ASC.Web.Core/SetupInfo.cs b/web/ASC.Web.Core/SetupInfo.cs index 691de9594e..12f284bea0 100644 --- a/web/ASC.Web.Core/SetupInfo.cs +++ b/web/ASC.Web.Core/SetupInfo.cs @@ -179,8 +179,8 @@ public class SetupInfo ControlPanelUrl = GetAppSettings("web:controlpanel:url", ""); FontOpenSansUrl = GetAppSettings("web.font.opensans.url", ""); StartProductList = GetAppSettings("web.start.product.list", ""); - SsoSamlLoginUrl = GetAppSettings("web.sso.saml.login.url", ""); - SsoSamlLogoutUrl = GetAppSettings("web.sso.saml.logout.url", ""); + SsoSamlLoginUrl = GetAppSettings("web:sso:saml:login:url", ""); + SsoSamlLogoutUrl = GetAppSettings("web:sso:saml:logout:url", ""); _hideSettings = GetAppSettings("web.hide-settings", string.Empty).Split(new[] { ',', ';', ' ' }, StringSplitOptions.RemoveEmptyEntries);