<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>SSO Archives | Clever Cloud</title>
	<atom:link href="https://www.clever.cloud/blog/tag/sso/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.clever.cloud/blog/tag/sso/</link>
	<description>From Code to Product</description>
	<lastBuildDate>Wed, 28 Oct 2026 15:18:05 +0000</lastBuildDate>
	<language>en-GB</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://cdn.clever-cloud.com/uploads/2023/03/cropped-cropped-favicon-32x32.png</url>
	<title>SSO Archives | Clever Cloud</title>
	<link>https://www.clever.cloud/blog/tag/sso/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Configure SSO with Keycloak</title>
		<link>https://www.clever.cloud/blog/features/2026/10/28/configure-keycloak-sso/</link>
		
		<dc:creator><![CDATA[Marjorie Darrigade]]></dc:creator>
		<pubDate>Wed, 28 Oct 2026 15:17:41 +0000</pubDate>
				<category><![CDATA[Features]]></category>
		<category><![CDATA[IAM]]></category>
		<category><![CDATA[keycloak]]></category>
		<category><![CDATA[SSO]]></category>
		<guid isPermaLink="false">https://www.clever.cloud/?p=25919</guid>

					<description><![CDATA[<p><img width="800" height="355" src="https://cdn.clever-cloud.com/uploads/2026/10/2026-10-28-clever-cloud-banniere-blog-sso-keycloak-en.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="SSO keycloak EN" decoding="async" fetchpriority="high" srcset="https://cdn.clever-cloud.com/uploads/2026/10/2026-10-28-clever-cloud-banniere-blog-sso-keycloak-en.png 800w, https://cdn.clever-cloud.com/uploads/2026/10/2026-10-28-clever-cloud-banniere-blog-sso-keycloak-en-300x133.png 300w, https://cdn.clever-cloud.com/uploads/2026/10/2026-10-28-clever-cloud-banniere-blog-sso-keycloak-en-768x341.png 768w" sizes="(max-width: 800px) 100vw, 800px" /></p><!-- wp:paragraph -->
<p>For a new integration, OpenID Connect is the preferred choice when the application supports it; SAML 2.0 remains suitable for existing software or products that only support that protocol. Next, configure the OIDC redirect URIs or SAML assertion consumer service endpoints, then connect the application to the realm’s endpoints.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>For IT departments, SSO addresses an everyday need: providing access to an entire application portfolio through a single login, with centralised security controls. Keycloak, an open-source identity and access management (IAM) solution, meets this need by centralising authentication.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"25px"} -->
<div style="height:25px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Keycloak as a central identity provider</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Keycloak sits between applications and their users. Users authenticate with Keycloak and, while their SSO session remains valid, can access connected applications without re-entering their credentials. Each application trusts the authentication information provided by Keycloak to establish its own session. This is how an identity provider (IdP) works.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Centralising login offers a tangible security benefit: according to the <a href="https://www.enisa.europa.eu/">ENISA</a> Threat Landscape 2025 report, the annual report published by the European Union Agency for Cybersecurity, phishing accounts for approximately 60% of the initial intrusion methods observed in the incidents studied. With Keycloak, multifactor authentication (MFA) policies can be enforced at the shared login point for connected applications. However, not all forms of MFA provide the same protection against phishing: passkeys and WebAuthn are phishing-resistant by design because the authentication key is bound to the domain for which it was created.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Each application maintains its own session. In a full OIDC integration, the application checks the session status with Keycloak and can therefore respond when that session ends. Some applications, however, only verify the JWT’s signature and validity period locally. In this case, a token that is still valid may continue to be accepted after the Keycloak session has ended. This is JWT-based authentication rather than full OIDC session management.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Keycloak supports OpenID Connect (OIDC) and SAML 2.0. Modern applications and existing software can therefore share the same single sign-on within a single realm.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"40px"} -->
<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:acf/avantages {"name":"acf/avantages","data":{"title":"Key concepts to understand before configuration","_title":"field_63878c81ae569","content":"\u003cp data-pm-slice=\u00221 1 []\u0022\u003eThree core objects underpin every SSO configuration in Keycloak:\u003c/p\u003e","_content":"field_63878c9cae56a","main_picture":"","_main_picture":"field_63878cd5ae56b","advantages_collection_0_picto":"","_advantages_collection_0_picto":"field_6397417cac52f","advantages_collection_0_title":"The realm","_advantages_collection_0_title":"field_63878d1aae56d","advantages_collection_0_content":"An isolated administrative and security tenant. It contains users, their credentials, roles, groups, applications registered as clients, and authentication policies. Each realm manages its users and applications independently. A single dedicated realm is generally sufficient for one IT environment.","_advantages_collection_0_content":"field_63878d4dae56e","advantages_collection_0_link":"","_advantages_collection_0_link":"field_63878d66ae56f","advantages_collection_1_picto":"","_advantages_collection_1_picto":"field_6397417cac52f","advantages_collection_1_title":"The client","_advantages_collection_1_title":"field_63878d1aae56d","advantages_collection_1_content":"The representation, within the realm, of an application that delegates authentication to Keycloak. Each application you connect has its own client.","_advantages_collection_1_content":"field_63878d4dae56e","advantages_collection_1_link":"","_advantages_collection_1_link":"field_63878d66ae56f","advantages_collection_2_picto":"","_advantages_collection_2_picto":"field_6397417cac52f","advantages_collection_2_title":"The protocol","_advantages_collection_2_title":"field_63878d1aae56d","advantages_collection_2_content":"OpenID Connect or SAML 2.0, selected when creating the client. OIDC and SAML clients have different configurations, determined by their respective protocols. This choice cannot be changed later: switching protocols requires a new client.","_advantages_collection_2_content":"field_63878d4dae56e","advantages_collection_2_link":"","_advantages_collection_2_link":"field_63878d66ae56f","advantages_collection":3,"_advantages_collection":"field_63878cecae56c"},"mode":"auto"} /-->

<!-- wp:heading -->
<h2 class="wp-block-heading">Configure SSO with Keycloak, step by step</h2>
<!-- /wp:heading -->

<!-- wp:acf/arguments {"name":"acf/arguments","data":{"items_0_title":"Access the administration console","_items_0_title":"field_638a066e4d2ec","items_0_short_description":"In the Clever Cloud Console, open your service dashboard, then click \u003cb\u003eOpen Keycloak\u003c/b\u003e. The initial credentials are listed in the \u003cb\u003eAccess\u003c/b\u003e section. They are also available in the Java application through the CC_KEYCLOAK_ADMIN and CC_KEYCLOAK_ADMIN_DEFAULT_PASSWORD variables. When you first log in, Keycloak prompts you to replace the temporary password.","_items_0_short_description":"field_638a068d4d2ed","items_0_full_description":"","_items_0_full_description":"field_638a06af4d2ee","items_1_title":"Select or create a realm","_items_1_title":"field_638a066e4d2ec","items_1_short_description":"Always create a realm separate from master, either through the CC_KEYCLOAK_REALMS variable or in the administration interface. The master realm must remain an emergency administrative access point, also known as break-glass access, for use when a configuration error makes the application realm unavailable. Do not connect any business applications to it. Keep a single application realm for one IT environment: multiple realms are only justified when user populations are entirely independent and share no applications. Otherwise, each application has to integrate multiple SSO flows, adding unnecessary complexity.","_items_1_short_description":"field_638a068d4d2ed","items_1_full_description":"","_items_1_full_description":"field_638a06af4d2ee","items_2_title":"Register the application as a client","_items_2_title":"field_638a066e4d2ec","items_2_short_description":"Under \u003cb\u003eClients\u003c/b\u003e, Keycloak already lists several built-in clients used for administration and account management. Leave these unchanged. Click \u003cb\u003eCreate client\u003c/b\u003e to create a dedicated client for the application, then select OpenID Connect or SAML. The protocol is part of the client definition and cannot be changed later. If a SAML application provides metadata, you can also use \u003cb\u003eImport client\u003c/b\u003e.","_items_2_short_description":"field_638a068d4d2ed","items_2_full_description":"","_items_2_full_description":"field_638a06af4d2ee","items_3_title":"For an OpenID Connect application","_items_3_title":"field_638a066e4d2ec","items_3_short_description":"Configure its allowed redirect URIs precisely, along with its web origins if it communicates with Keycloak from the browser. Enable the Authorization Code flow using the Standard flow option. Enable Client authentication for a server-side application that can securely store a secret. For a mobile application or an application running entirely in the browser, leave this option disabled and require PKCE with the S256 method.","_items_3_short_description":"field_638a068d4d2ed","items_3_full_description":"","_items_3_full_description":"field_638a06af4d2ee","items_4_title":"For a SAML 2.0 application","_items_4_title":"field_638a066e4d2ec","items_4_short_description":"Preferably import the metadata provided by the service provider (SP). Then check that the Client ID matches its entity ID, and verify the Assertion Consumer Service (ACS) URL, signature settings, NameID format, and expected attributes. ","_items_4_short_description":"field_638a068d4d2ed","items_4_full_description":"Our article \u003ca href=\u0022https://www.clever.cloud/blog/features/2026/10/01/saml-2-0-what-is-the-protocol-used-for/\u0022\u003eWhat Is the SAML 2.0 Authentication Protocol Used For?\u003c/a\u003e explains how the protocol and metadata exchange work.","_items_4_full_description":"field_638a06af4d2ee","items_5_title":"Configure the application","_items_5_title":"field_638a066e4d2ec","items_5_short_description":"For OIDC, provide the client ID and, only if Client authentication is enabled, the client secret. Depending on the library used, provide either the realm URL, https://\u003ckeycloak-host\u003e/realms/\u003crealm\u003e, or its discovery URL: https://\u003ckeycloak-host\u003e/realms/\u003crealm\u003e/.well-known/openid-configuration. For SAML, import the Keycloak identity provider metadata from https://\u003ckeycloak-host\u003e/realms/\u003crealm\u003e/protocol/saml/descriptor. After authentication, the application validates the information it receives before establishing its own session.","_items_5_short_description":"field_638a068d4d2ed","items_5_full_description":"","_items_5_full_description":"field_638a06af4d2ee","items_6_title":"Test the complete login flow","_items_6_title":"field_638a066e4d2ec","items_6_short_description":"Log in with an authorised user and check the data passed to the application. If access restrictions have been configured, also verify that a user without the required permissions is denied access. To test SSO itself, then open a second application connected to the same realm: it should recognise the Keycloak session without prompting for credentials again. Finally, test logout to verify how it propagates across applications according to their configuration.","_items_6_short_description":"field_638a068d4d2ed","items_6_full_description":"","_items_6_full_description":"field_638a06af4d2ee","items":7,"_items":"field_638a065a4d2eb"},"mode":"preview"} /-->

<!-- wp:paragraph -->
<p>The <a href="https://www.clever.cloud/developers/doc/deploy/services/keycloak/">Clever Cloud Keycloak documentation</a> covers service access, realm management, IP address filtering, deployments in <em>Secured Multi Instances</em> mode, and metrics monitoring. For settings specific to OIDC and SAML clients, also refer to the <a href="https://www.keycloak.org/docs/latest/server_admin/">Keycloak administration documentation</a>.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>To see the deployment process and interface in practice, watch the video demonstration on our <a href="https://www.clever.cloud/product/managed-keycloak-as-a-service/">Keycloak as a Service</a> page.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"25px"} -->
<div style="height:25px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">OIDC or SAML 2.0 for SSO: which should you choose?</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>PoFor new development, choose OpenID Connect when the application supports it. Retain SAML 2.0 for applications whose integration already relies on that protocol or that do not support OIDC:</p>
<!-- /wp:paragraph -->

<!-- wp:list -->
<ul class="wp-block-list"><!-- wp:list-item -->
<li><strong>OpenID Connect</strong> authenticates users of modern web and mobile applications; OAuth 2.0 and its access tokens control access to APIs.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li><strong>SAML 2.0</strong> supports existing applications and enterprise software that do not offer OIDC integration.</li>
<!-- /wp:list-item --></ul>
<!-- /wp:list -->

<!-- wp:paragraph -->
<p>Keycloak supports both protocols within a single realm. OIDC and SAML applications can therefore share the same single sign-on.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"25px"} -->
<div style="height:25px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Configure SSO on a managed Keycloak instance</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Configuring SSO is only part of the work: a Keycloak server then needs ongoing maintenance, updates, monitoring, and backups. A managed service takes on this operational workload.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p><a href="https://www.clever.cloud/product/managed-keycloak-as-a-service/">Keycloak as a Service</a>, Clever Cloud’s offering operated with the expertise of <a href="https://please-open.it/">Please Open It</a>, deploys a managed Keycloak instance hosted in France in just a few clicks. Teams retain control over all settings (realms, clients, and protocols) while Clever Cloud handles infrastructure operations, including ongoing updates, integrated monitoring, and regular backups. When the service is deployed in clustered Secured Multi-Instances mode, multiple nodes distribute the load and improve service continuity. Separately from this architecture, the 99.99% SLA, 24/7 on-call telephone support, and guaranteed response and resolution times are provided through the <a href="https://www.clever.cloud/clever-cloud-premium/">Premium offering</a> for eligible services. Realm import and export make it easier to migrate an existing instance. Finally, to protect an application without built-in authentication, an authentication proxy such as OAuth2-Proxy adds a login step before users reach the application, without changing its code.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"55px"} -->
<div style="height:55px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:paragraph -->
<p>«Keycloak is a Red Hat product, but Red Hat does not provide an open-source LTS version of Keycloak, and security fixes are not backported. Staying on the latest version is therefore essential, and deploying Keycloak as a Service on Clever Cloud makes this much easier. A single realm, separate from <code>master</code>, is often sufficient; multiple realms are only justified when user populations are entirely independent, with no shared applications or with separate deployments. Keycloak also decouples the addition of authentication factors from applications, making it possible to offer the latest authentication factors across all integrated applications. »</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>— Loïc Mercier des Rochettes, Co-founder and CTO at Please Open It</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"55px"} -->
<div style="height:55px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:paragraph -->
<p>Evaluating an IAM solution? Our checklist, <a href="https://cdn.clever-cloud.com/uploads/2026/08/eng11-questions-before-choosing-an-identity-management-solution.pdf">11 questions to ask before choosing an identity management solution</a>, brings together the criteria to assess before making a commitment.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"80px"} -->
<div style="height:80px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:html -->
<div style="height: 1px; background-color: #DEDDEE; margin: 30px auto; width: 100%;"></div>
<!-- /wp:html -->

<!-- wp:heading {"style":{"typography":{"textAlign":"center"}}} -->
<h2 class="wp-block-heading has-text-align-center">FAQ</h2>
<!-- /wp:heading -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Does Keycloak support SSO?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Yes. Keycloak is an open-source identity management solution that acts as a central identity provider: applications delegate login to it, and users authenticate only once. It supports OpenID Connect and SAML 2.0.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Should you use OIDC or SAML for SSO with Keycloak?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Both are suitable. OpenID Connect is designed for modern web applications, mobile applications, and APIs; SAML 2.0 remains the established standard for existing enterprise applications. Keycloak handles both protocols in parallel.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">How do you connect an application to Keycloak?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Create a client in the relevant realm, then configure it according to the protocol used by the application. For OpenID Connect, this includes configuring its redirect URLs and providing the client ID, the realm’s discovery URL, and a secret only if the application can securely store it. For SAML 2.0, configure the application’s entity ID, its Assertion Consumer Service URL, and the metadata exchange with Keycloak.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Do you need to host Keycloak yourself to implement SSO?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>No. A self-hosted Keycloak deployment requires you to manage installation, updates, security, and availability. A managed offering, such as Clever Cloud’s Keycloak as a Service, handles these operations; teams remain responsible for clients, users, permissions, and authentication policies.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Can you secure an existing application without changing its code?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Yes. An authentication proxy such as OAuth2-Proxy, connected to Keycloak, can require users to log in before forwarding requests to the application, without changing its code. This approach is particularly suitable for back-office applications and internal tools without built-in authentication, provided the application cannot be accessed directly by bypassing the proxy. Any application-specific authorisation rules still need to be defined.</p>
<!-- /wp:paragraph -->]]></description>
										<content:encoded><![CDATA[<p><img width="800" height="355" src="https://cdn.clever-cloud.com/uploads/2026/10/2026-10-28-clever-cloud-banniere-blog-sso-keycloak-en.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="SSO keycloak EN" decoding="async" srcset="https://cdn.clever-cloud.com/uploads/2026/10/2026-10-28-clever-cloud-banniere-blog-sso-keycloak-en.png 800w, https://cdn.clever-cloud.com/uploads/2026/10/2026-10-28-clever-cloud-banniere-blog-sso-keycloak-en-300x133.png 300w, https://cdn.clever-cloud.com/uploads/2026/10/2026-10-28-clever-cloud-banniere-blog-sso-keycloak-en-768x341.png 768w" sizes="(max-width: 800px) 100vw, 800px" /></p><!-- wp:paragraph -->
<p>For a new integration, OpenID Connect is the preferred choice when the application supports it; SAML 2.0 remains suitable for existing software or products that only support that protocol. Next, configure the OIDC redirect URIs or SAML assertion consumer service endpoints, then connect the application to the realm’s endpoints.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>For IT departments, SSO addresses an everyday need: providing access to an entire application portfolio through a single login, with centralised security controls. Keycloak, an open-source identity and access management (IAM) solution, meets this need by centralising authentication.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"25px"} -->
<div style="height:25px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Keycloak as a central identity provider</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Keycloak sits between applications and their users. Users authenticate with Keycloak and, while their SSO session remains valid, can access connected applications without re-entering their credentials. Each application trusts the authentication information provided by Keycloak to establish its own session. This is how an identity provider (IdP) works.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Centralising login offers a tangible security benefit: according to the <a href="https://www.enisa.europa.eu/">ENISA</a> Threat Landscape 2025 report, the annual report published by the European Union Agency for Cybersecurity, phishing accounts for approximately 60% of the initial intrusion methods observed in the incidents studied. With Keycloak, multifactor authentication (MFA) policies can be enforced at the shared login point for connected applications. However, not all forms of MFA provide the same protection against phishing: passkeys and WebAuthn are phishing-resistant by design because the authentication key is bound to the domain for which it was created.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Each application maintains its own session. In a full OIDC integration, the application checks the session status with Keycloak and can therefore respond when that session ends. Some applications, however, only verify the JWT’s signature and validity period locally. In this case, a token that is still valid may continue to be accepted after the Keycloak session has ended. This is JWT-based authentication rather than full OIDC session management.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>Keycloak supports OpenID Connect (OIDC) and SAML 2.0. Modern applications and existing software can therefore share the same single sign-on within a single realm.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"40px"} -->
<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:acf/avantages {"name":"acf/avantages","data":{"title":"Key concepts to understand before configuration","_title":"field_63878c81ae569","content":"\u003cp data-pm-slice=\u00221 1 []\u0022\u003eThree core objects underpin every SSO configuration in Keycloak:\u003c/p\u003e","_content":"field_63878c9cae56a","main_picture":"","_main_picture":"field_63878cd5ae56b","advantages_collection_0_picto":"","_advantages_collection_0_picto":"field_6397417cac52f","advantages_collection_0_title":"The realm","_advantages_collection_0_title":"field_63878d1aae56d","advantages_collection_0_content":"An isolated administrative and security tenant. It contains users, their credentials, roles, groups, applications registered as clients, and authentication policies. Each realm manages its users and applications independently. A single dedicated realm is generally sufficient for one IT environment.","_advantages_collection_0_content":"field_63878d4dae56e","advantages_collection_0_link":"","_advantages_collection_0_link":"field_63878d66ae56f","advantages_collection_1_picto":"","_advantages_collection_1_picto":"field_6397417cac52f","advantages_collection_1_title":"The client","_advantages_collection_1_title":"field_63878d1aae56d","advantages_collection_1_content":"The representation, within the realm, of an application that delegates authentication to Keycloak. Each application you connect has its own client.","_advantages_collection_1_content":"field_63878d4dae56e","advantages_collection_1_link":"","_advantages_collection_1_link":"field_63878d66ae56f","advantages_collection_2_picto":"","_advantages_collection_2_picto":"field_6397417cac52f","advantages_collection_2_title":"The protocol","_advantages_collection_2_title":"field_63878d1aae56d","advantages_collection_2_content":"OpenID Connect or SAML 2.0, selected when creating the client. OIDC and SAML clients have different configurations, determined by their respective protocols. This choice cannot be changed later: switching protocols requires a new client.","_advantages_collection_2_content":"field_63878d4dae56e","advantages_collection_2_link":"","_advantages_collection_2_link":"field_63878d66ae56f","advantages_collection":3,"_advantages_collection":"field_63878cecae56c"},"mode":"auto"} /-->

<!-- wp:heading -->
<h2 class="wp-block-heading">Configure SSO with Keycloak, step by step</h2>
<!-- /wp:heading -->

<!-- wp:acf/arguments {"name":"acf/arguments","data":{"items_0_title":"Access the administration console","_items_0_title":"field_638a066e4d2ec","items_0_short_description":"In the Clever Cloud Console, open your service dashboard, then click \u003cb\u003eOpen Keycloak\u003c/b\u003e. The initial credentials are listed in the \u003cb\u003eAccess\u003c/b\u003e section. They are also available in the Java application through the CC_KEYCLOAK_ADMIN and CC_KEYCLOAK_ADMIN_DEFAULT_PASSWORD variables. When you first log in, Keycloak prompts you to replace the temporary password.","_items_0_short_description":"field_638a068d4d2ed","items_0_full_description":"","_items_0_full_description":"field_638a06af4d2ee","items_1_title":"Select or create a realm","_items_1_title":"field_638a066e4d2ec","items_1_short_description":"Always create a realm separate from master, either through the CC_KEYCLOAK_REALMS variable or in the administration interface. The master realm must remain an emergency administrative access point, also known as break-glass access, for use when a configuration error makes the application realm unavailable. Do not connect any business applications to it. Keep a single application realm for one IT environment: multiple realms are only justified when user populations are entirely independent and share no applications. Otherwise, each application has to integrate multiple SSO flows, adding unnecessary complexity.","_items_1_short_description":"field_638a068d4d2ed","items_1_full_description":"","_items_1_full_description":"field_638a06af4d2ee","items_2_title":"Register the application as a client","_items_2_title":"field_638a066e4d2ec","items_2_short_description":"Under \u003cb\u003eClients\u003c/b\u003e, Keycloak already lists several built-in clients used for administration and account management. Leave these unchanged. Click \u003cb\u003eCreate client\u003c/b\u003e to create a dedicated client for the application, then select OpenID Connect or SAML. The protocol is part of the client definition and cannot be changed later. If a SAML application provides metadata, you can also use \u003cb\u003eImport client\u003c/b\u003e.","_items_2_short_description":"field_638a068d4d2ed","items_2_full_description":"","_items_2_full_description":"field_638a06af4d2ee","items_3_title":"For an OpenID Connect application","_items_3_title":"field_638a066e4d2ec","items_3_short_description":"Configure its allowed redirect URIs precisely, along with its web origins if it communicates with Keycloak from the browser. Enable the Authorization Code flow using the Standard flow option. Enable Client authentication for a server-side application that can securely store a secret. For a mobile application or an application running entirely in the browser, leave this option disabled and require PKCE with the S256 method.","_items_3_short_description":"field_638a068d4d2ed","items_3_full_description":"","_items_3_full_description":"field_638a06af4d2ee","items_4_title":"For a SAML 2.0 application","_items_4_title":"field_638a066e4d2ec","items_4_short_description":"Preferably import the metadata provided by the service provider (SP). Then check that the Client ID matches its entity ID, and verify the Assertion Consumer Service (ACS) URL, signature settings, NameID format, and expected attributes. ","_items_4_short_description":"field_638a068d4d2ed","items_4_full_description":"Our article \u003ca href=\u0022https://www.clever.cloud/blog/features/2026/10/01/saml-2-0-what-is-the-protocol-used-for/\u0022\u003eWhat Is the SAML 2.0 Authentication Protocol Used For?\u003c/a\u003e explains how the protocol and metadata exchange work.","_items_4_full_description":"field_638a06af4d2ee","items_5_title":"Configure the application","_items_5_title":"field_638a066e4d2ec","items_5_short_description":"For OIDC, provide the client ID and, only if Client authentication is enabled, the client secret. Depending on the library used, provide either the realm URL, https://\u003ckeycloak-host\u003e/realms/\u003crealm\u003e, or its discovery URL: https://\u003ckeycloak-host\u003e/realms/\u003crealm\u003e/.well-known/openid-configuration. For SAML, import the Keycloak identity provider metadata from https://\u003ckeycloak-host\u003e/realms/\u003crealm\u003e/protocol/saml/descriptor. After authentication, the application validates the information it receives before establishing its own session.","_items_5_short_description":"field_638a068d4d2ed","items_5_full_description":"","_items_5_full_description":"field_638a06af4d2ee","items_6_title":"Test the complete login flow","_items_6_title":"field_638a066e4d2ec","items_6_short_description":"Log in with an authorised user and check the data passed to the application. If access restrictions have been configured, also verify that a user without the required permissions is denied access. To test SSO itself, then open a second application connected to the same realm: it should recognise the Keycloak session without prompting for credentials again. Finally, test logout to verify how it propagates across applications according to their configuration.","_items_6_short_description":"field_638a068d4d2ed","items_6_full_description":"","_items_6_full_description":"field_638a06af4d2ee","items":7,"_items":"field_638a065a4d2eb"},"mode":"preview"} /-->

<!-- wp:paragraph -->
<p>The <a href="https://www.clever.cloud/developers/doc/deploy/services/keycloak/">Clever Cloud Keycloak documentation</a> covers service access, realm management, IP address filtering, deployments in <em>Secured Multi Instances</em> mode, and metrics monitoring. For settings specific to OIDC and SAML clients, also refer to the <a href="https://www.keycloak.org/docs/latest/server_admin/">Keycloak administration documentation</a>.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>To see the deployment process and interface in practice, watch the video demonstration on our <a href="https://www.clever.cloud/product/managed-keycloak-as-a-service/">Keycloak as a Service</a> page.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"25px"} -->
<div style="height:25px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">OIDC or SAML 2.0 for SSO: which should you choose?</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>PoFor new development, choose OpenID Connect when the application supports it. Retain SAML 2.0 for applications whose integration already relies on that protocol or that do not support OIDC:</p>
<!-- /wp:paragraph -->

<!-- wp:list -->
<ul class="wp-block-list"><!-- wp:list-item -->
<li><strong>OpenID Connect</strong> authenticates users of modern web and mobile applications; OAuth 2.0 and its access tokens control access to APIs.</li>
<!-- /wp:list-item -->

<!-- wp:list-item -->
<li><strong>SAML 2.0</strong> supports existing applications and enterprise software that do not offer OIDC integration.</li>
<!-- /wp:list-item --></ul>
<!-- /wp:list -->

<!-- wp:paragraph -->
<p>Keycloak supports both protocols within a single realm. OIDC and SAML applications can therefore share the same single sign-on.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"25px"} -->
<div style="height:25px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:heading -->
<h2 class="wp-block-heading">Configure SSO on a managed Keycloak instance</h2>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Configuring SSO is only part of the work: a Keycloak server then needs ongoing maintenance, updates, monitoring, and backups. A managed service takes on this operational workload.</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p><a href="https://www.clever.cloud/product/managed-keycloak-as-a-service/">Keycloak as a Service</a>, Clever Cloud’s offering operated with the expertise of <a href="https://please-open.it/">Please Open It</a>, deploys a managed Keycloak instance hosted in France in just a few clicks. Teams retain control over all settings (realms, clients, and protocols) while Clever Cloud handles infrastructure operations, including ongoing updates, integrated monitoring, and regular backups. When the service is deployed in clustered Secured Multi-Instances mode, multiple nodes distribute the load and improve service continuity. Separately from this architecture, the 99.99% SLA, 24/7 on-call telephone support, and guaranteed response and resolution times are provided through the <a href="https://www.clever.cloud/clever-cloud-premium/">Premium offering</a> for eligible services. Realm import and export make it easier to migrate an existing instance. Finally, to protect an application without built-in authentication, an authentication proxy such as OAuth2-Proxy adds a login step before users reach the application, without changing its code.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"55px"} -->
<div style="height:55px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:paragraph -->
<p>«Keycloak is a Red Hat product, but Red Hat does not provide an open-source LTS version of Keycloak, and security fixes are not backported. Staying on the latest version is therefore essential, and deploying Keycloak as a Service on Clever Cloud makes this much easier. A single realm, separate from <code>master</code>, is often sufficient; multiple realms are only justified when user populations are entirely independent, with no shared applications or with separate deployments. Keycloak also decouples the addition of authentication factors from applications, making it possible to offer the latest authentication factors across all integrated applications. »</p>
<!-- /wp:paragraph -->

<!-- wp:paragraph -->
<p>— Loïc Mercier des Rochettes, Co-founder and CTO at Please Open It</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"55px"} -->
<div style="height:55px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:paragraph -->
<p>Evaluating an IAM solution? Our checklist, <a href="https://cdn.clever-cloud.com/uploads/2026/08/eng11-questions-before-choosing-an-identity-management-solution.pdf">11 questions to ask before choosing an identity management solution</a>, brings together the criteria to assess before making a commitment.</p>
<!-- /wp:paragraph -->

<!-- wp:spacer {"height":"80px"} -->
<div style="height:80px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

<!-- wp:html -->
<div style="height: 1px; background-color: #DEDDEE; margin: 30px auto; width: 100%;"></div>
<!-- /wp:html -->

<!-- wp:heading {"style":{"typography":{"textAlign":"center"}}} -->
<h2 class="wp-block-heading has-text-align-center">FAQ</h2>
<!-- /wp:heading -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Does Keycloak support SSO?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Yes. Keycloak is an open-source identity management solution that acts as a central identity provider: applications delegate login to it, and users authenticate only once. It supports OpenID Connect and SAML 2.0.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Should you use OIDC or SAML for SSO with Keycloak?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Both are suitable. OpenID Connect is designed for modern web applications, mobile applications, and APIs; SAML 2.0 remains the established standard for existing enterprise applications. Keycloak handles both protocols in parallel.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">How do you connect an application to Keycloak?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Create a client in the relevant realm, then configure it according to the protocol used by the application. For OpenID Connect, this includes configuring its redirect URLs and providing the client ID, the realm’s discovery URL, and a secret only if the application can securely store it. For SAML 2.0, configure the application’s entity ID, its Assertion Consumer Service URL, and the metadata exchange with Keycloak.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Do you need to host Keycloak yourself to implement SSO?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>No. A self-hosted Keycloak deployment requires you to manage installation, updates, security, and availability. A managed offering, such as Clever Cloud’s Keycloak as a Service, handles these operations; teams remain responsible for clients, users, permissions, and authentication policies.</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":3} -->
<h3 class="wp-block-heading">Can you secure an existing application without changing its code?</h3>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>Yes. An authentication proxy such as OAuth2-Proxy, connected to Keycloak, can require users to log in before forwarding requests to the application, without changing its code. This approach is particularly suitable for back-office applications and internal tools without built-in authentication, provided the application cannot be accessed directly by bypassing the proxy. Any application-specific authorisation rules still need to be defined.</p>
<!-- /wp:paragraph -->]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
