Skip to content

Commit b5d35c7

Browse files
committed
SAML-Toolkits#25. Fix Idp initiated sign out problem
1 parent 45be06a commit b5d35c7

1 file changed

Lines changed: 7 additions & 2 deletions

File tree

onelogin-saml-sso/php/functions.php

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -291,8 +291,13 @@ function saml_acs() {
291291
function saml_sls() {
292292
$auth = initialize_saml();
293293
$retrieve_parameters_from_server = get_option('onelogin_saml_advanced_settings_retrieve_parameters_from_server', false);
294-
$auth->processSLO(false, null, $retrieve_parameters_from_server);
295-
$errors = $auth->getErrors();
294+
if (isset($_GET) && isset($_GET['SAMLRequest'])) {
295+
// Close session before send the LogoutResponse to the IdP
296+
$auth->processSLO(false, null, $retrieve_parameters_from_server, 'wp_logout');
297+
} else {
298+
$auth->processSLO(false, null, $retrieve_parameters_from_server);
299+
}
300+
$errors = $auth->getErrors();
296301
if (empty($errors)) {
297302
wp_logout();
298303
setcookie('saml_login', 0, time() - 3600, SITECOOKIEPATH );

0 commit comments

Comments
 (0)