From 032ece9f7b9cc7841ac15ae34fbedf371738ea91 Mon Sep 17 00:00:00 2001 From: Marek Posolda Date: Wed, 29 Mar 2023 10:08:45 +0200 Subject: [PATCH] Clarify user session limits documentation and test SSO scenario (#19372) Closes #17374 Co-authored-by: andymunro <48995441+andymunro@users.noreply.github.com> --- ...entication-user-session-limits-browser.png | Bin 0 -> 45983 bytes ...tication-user-session-limits-resetcred.png | Bin 0 -> 54040 bytes .../authentication-user-session-limits.png | Bin 47060 -> 0 bytes .../topics/authentication/flows.adoc | 26 ++++++-- .../UserSessionLimitsAuthenticator.java | 5 ++ .../sessionlimits/UserSessionLimitsTest.java | 56 ++++++++++++++++++ 6 files changed, 81 insertions(+), 6 deletions(-) create mode 100644 docs/documentation/server_admin/images/authentication-user-session-limits-browser.png create mode 100644 docs/documentation/server_admin/images/authentication-user-session-limits-resetcred.png delete mode 100644 docs/documentation/server_admin/images/authentication-user-session-limits.png diff --git a/docs/documentation/server_admin/images/authentication-user-session-limits-browser.png b/docs/documentation/server_admin/images/authentication-user-session-limits-browser.png new file mode 100644 index 0000000000000000000000000000000000000000..861844cbb093b73958d048f8fabcee46aec24574 GIT binary patch literal 45983 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

Axn}~^Bb{*CzhSbfp%i*61 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%0AT!kAnZ$DJcW6{Hu#Ye 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 z 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 config = authenticatorConfig.getConfig(); // Get the configuration for this authenticator diff --git a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/sessionlimits/UserSessionLimitsTest.java b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/sessionlimits/UserSessionLimitsTest.java index 49b091d0b1d..9b2cb03c016 100644 --- a/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/sessionlimits/UserSessionLimitsTest.java +++ b/testsuite/integration-arquillian/tests/base/src/test/java/org/keycloak/testsuite/sessionlimits/UserSessionLimitsTest.java @@ -20,6 +20,7 @@ import org.jboss.arquillian.graphene.page.Page; import org.junit.Before; import org.junit.Rule; import org.junit.Test; +import org.keycloak.authentication.authenticators.browser.CookieAuthenticatorFactory; import org.keycloak.authentication.authenticators.browser.UsernamePasswordFormFactory; import org.keycloak.authentication.authenticators.sessionlimits.UserSessionLimitsAuthenticatorFactory; import org.keycloak.events.Details; @@ -36,13 +37,17 @@ import org.keycloak.representations.idm.RealmRepresentation; import org.keycloak.testsuite.AbstractTestRealmKeycloakTest; import org.keycloak.testsuite.AssertEvents; import org.keycloak.testsuite.admin.ApiUtil; +import org.keycloak.testsuite.forms.BrowserFlowTest; +import org.keycloak.testsuite.pages.AppPage; import org.keycloak.testsuite.pages.LoginPage; import org.keycloak.testsuite.pages.LoginPasswordResetPage; import org.keycloak.testsuite.pages.LoginPasswordUpdatePage; +import org.keycloak.testsuite.util.FlowUtil; import org.keycloak.testsuite.util.GreenMailRule; import org.keycloak.testsuite.util.MailUtils; import org.keycloak.testsuite.util.OAuthClient; import org.keycloak.testsuite.pages.ErrorPage; + import javax.mail.internet.MimeMessage; import static org.junit.Assert.assertEquals; @@ -109,6 +114,9 @@ public class UserSessionLimitsTest extends AbstractTestRealmKeycloakTest { @Page protected LoginPasswordUpdatePage updatePasswordPage; + @Page + protected AppPage appPage; + @Test public void testClientSessionCountExceededAndNewSessionDeniedBrowserFlow() throws Exception { // Login and verify login was successful @@ -443,6 +451,54 @@ public class UserSessionLimitsTest extends AbstractTestRealmKeycloakTest { } } + // Issue 17374 + @Test + public void testSSOLogin() throws Exception { + // Setup authentication flow + testingClient.server("test").run(session -> FlowUtil.inCurrentRealm(session). copyBrowserFlow("browser-session-limits")); + testingClient.server("test").run(session -> FlowUtil.inCurrentRealm(session) + .selectFlow("browser-session-limits") + .clear() + .addAuthenticatorExecution(AuthenticationExecutionModel.Requirement.ALTERNATIVE, CookieAuthenticatorFactory.PROVIDER_ID) + .addSubFlowExecution(AuthenticationExecutionModel.Requirement.ALTERNATIVE, subFlow -> { + subFlow.addAuthenticatorExecution(AuthenticationExecutionModel.Requirement.REQUIRED, UsernamePasswordFormFactory.PROVIDER_ID); + subFlow.addAuthenticatorExecution(AuthenticationExecutionModel.Requirement.REQUIRED, UserSessionLimitsAuthenticatorFactory.USER_SESSION_LIMITS, + config -> { + config.getConfig().put(UserSessionLimitsAuthenticatorFactory.BEHAVIOR, UserSessionLimitsAuthenticatorFactory.DENY_NEW_SESSION); + config.getConfig().put(UserSessionLimitsAuthenticatorFactory.USER_REALM_LIMIT, "1"); + }); + }) + .defineAsBrowserFlow() + ); + + // Login in browser1 + loginPage.open(); + loginPage.login("test-user@localhost", "password"); + assertEquals(AppPage.RequestType.AUTH_RESPONSE, appPage.getRequestType()); + EventRepresentation loginEvent = events.expectLogin().assertEvent(); + String sessionId1 = loginEvent.getSessionId(); + + // SSO login in browser1. Should be still OK (Login won't be denied even if session limit is set to 1 because we are login in same browser for SSO login) + oauth.openLoginForm(); + assertEquals(AppPage.RequestType.AUTH_RESPONSE, appPage.getRequestType()); + loginEvent = events.expectLogin().removeDetail(Details.USERNAME).client("test-app").assertEvent(); + String sessionId2 = loginEvent.getSessionId(); + assertEquals(sessionId1, sessionId2); + + // Delete cookies to emulate login in new browser + super.deleteCookies(); + + // New login should fail due the sessions limit + loginPage.open(); + loginPage.login("test-user@localhost", "password"); + events.expect(EventType.LOGIN_ERROR).user((String) null).error(Errors.GENERIC_AUTHENTICATION_ERROR).assertEvent(); + errorPage.assertCurrent(); + assertEquals("There are too many sessions", errorPage.getError()); // Default error message + + // Revert config of authenticators + BrowserFlowTest.revertFlows(adminClient.realm("test"), "browser-session-limits"); + } + private void setAuthenticatorConfigItem(String alias, String key, String value) { testingClient.server().run(session -> { RealmModel realm = session.realms().getRealmByName("test");