mirror of
https://github.com/inverse-inc/sogo.git
synced 2026-04-08 06:48:51 +00:00
Added SOGoSAML2LogoutURL
This commit is contained in:
@@ -457,6 +457,11 @@ SAML2 as authentication mechanism. When using this feature, SOGo will invoke
|
||||
the IdP to proceed with the logout procedure. When the user clicks on the logout
|
||||
button, a redirection will be made to the IdP to trigger the logout.
|
||||
|
||||
|S |SOGoSAML2LogoutURL
|
||||
|The URL to which redirect the user after the "Logout" link is clicked.
|
||||
SOGoSAML2LogoutEnabled must be set to YES. If unset, the user will be
|
||||
redirected to a blank page.
|
||||
|
||||
|D |SOGoTimeZone
|
||||
|Parameter used to set a default time zone for users. The default
|
||||
timezone is set to UTC. The Olson database is a standard database that
|
||||
|
||||
@@ -82,6 +82,7 @@
|
||||
- (NSString *) SAML2IdpCertificateLocation;
|
||||
- (NSString *) SAML2LoginAttribute;
|
||||
- (BOOL) SAML2LogoutEnabled;
|
||||
- (NSString *) SAML2LogoutURL;
|
||||
|
||||
- (BOOL) enablePublicAccess;
|
||||
|
||||
|
||||
@@ -511,6 +511,11 @@ _injectConfigurationFromFile (NSMutableDictionary *defaultsDict,
|
||||
return [self boolForKey: @"SOGoSAML2LogoutEnabled"];
|
||||
}
|
||||
|
||||
- (NSString *) SAML2LogoutURL
|
||||
{
|
||||
return [self stringForKey: @"SOGoSAML2LogoutURL"];
|
||||
}
|
||||
|
||||
- (NSString *) SAML2LoginAttribute
|
||||
{
|
||||
return [self stringForKey: @"SOGoSAML2LoginAttribute"];
|
||||
|
||||
@@ -73,6 +73,7 @@
|
||||
{
|
||||
NSString *userName, *value, *cookieName, *domain, *username, *password;
|
||||
SOGoWebAuthenticator *auth;
|
||||
SOGoSystemDefaults *sd;
|
||||
WOResponse *response;
|
||||
NSCalendarDate *date;
|
||||
WOCookie *cookie;
|
||||
@@ -81,8 +82,16 @@
|
||||
userName = [[context activeUser] login];
|
||||
[self logWithFormat: @"SAML2 IdP-initiated SLO for user '%@'", userName];
|
||||
|
||||
sd = [SOGoSystemDefaults sharedSystemDefaults];
|
||||
|
||||
response = [context response];
|
||||
|
||||
if ([sd SAML2LogoutURL])
|
||||
{
|
||||
[response setStatus: 302];
|
||||
[response setHeader: [sd SAML2LogoutURL] forKey: @"location"];
|
||||
}
|
||||
|
||||
if ([userName isEqualToString: @"anonymous"])
|
||||
return response;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user