Keycloak

{{Short description|Identity and access management software}}

{{Infobox software

| name = Keycloak

| caption =

| logo = File:Logo of Keycloak.svg

| logo_size = 250px

| developer = WildFly, a division of Red Hat

| released = {{Start date and age|2014|09|10|df=yes}}

| latest release version = {{wikidata|property|P348}}

| latest release date = {{wikidata|qualifier|reference|P348|P577}}

| operating system =

| repo = {{URL|https://github.com/keycloak/keycloak}}

| programming language = Java

| platform = Java

| genre = Single sign-on system

| license = Apache License 2.0

| website = {{URL|https://www.keycloak.org/}}

}}

Keycloak is an open-source software product to allow single sign-on with identity and access management aimed at modern applications and services. Until April 2023, this WildFly community project was under the stewardship of Red Hat, who use it as the upstream project for their Red Hat build of Keycloak. In April 2023, Keycloak was donated to the CNCF and joined the foundation as an incubating project.{{Cite web | title=Keycloak joins CNCF as an incubating project |url=https://www.cncf.io/blog/2023/04/11/keycloak-joins-cncf-as-an-incubating-project/|access-date=2024-05-15|website=CNCF}}

Keycloak supports various protocols such as OpenID, OAuth version 2.0 and SAML and provides features such as user management, two-factor authentication, permissions and roles management, creating token services, etc.{{Cite web |title=Open Source Identity and Access Management

|url=https://www.keycloak.org/|access-date=2024-01-23 |website=keycloak}} It is possible to integrate Keycloak with other technologies, such as front-end frameworks like React or Angular, as well as containerization solutions like Docker.{{Cite web |last=Zięba |first=Michał |date=2024-10-31 |title=Keycloak & Docker integration tutorial: Learn how to do it step by step |url=https://pretius.com/blog/keycloak-docker/?_gl=1*6yf5w5*_ga*MjEwMTcwMzExMC4xNzMzMjIzODY0*_up*MQ..*_ga_DFQGYJ9222*MTczMzIyMzg2Mi4xLjEuMTczMzIyMzg2Mi4wLjAuMA.. |access-date=2024-12-03 |website=Pretius |language=en-US}}

History

The first production release of Keycloak was in September 2014, with development having started about a year earlier. In 2016, Red Hat switched the RH SSO product from being based on the PicketLink framework to being based on the Keycloak upstream Project.{{cite web|url=https://developers.redhat.com/blog/2016/10/04/how-red-hat-re-designed-its-single-sign-on-sso-architecture-and-why/|access-date=7 March 2018|title=How Red Hat re-designed its Single Sign On (SSO) architecture, and why.|last=Atkisson|first=Brian|website=Red Hat|date=4 October 2016|url-status=live|archive-date=9 January 2018|archive-url=https://web.archive.org/web/20180109135302/https://developers.redhat.com/blog/2016/10/04/how-red-hat-re-designed-its-single-sign-on-sso-architecture-and-why/}} This followed a merging of the PicketLink codebase into Keycloak.{{cite web|url=http://picketlink.org/news/tags/announcement/|website=PicketLink.org|title=PicketLink and Keycloak projects are merging!|last=Dawidowicz|first=Boleslaw|date=10 March 2015|access-date=7 March 2018|url-status=dead|archive-url=https://web.archive.org/web/20150911223051/http://picketlink.org/news/|archive-date=11 September 2015}}{{cite web|url=http://planet.jboss.org/post/what_is_the_difference_between_picketlink_and_keycloak|title=What is the difference between Picketlink and Keycloak?|first=Kenneth|last=Peeples|access-date=7 March 2018|website=JBossDeveloper|date=28 May 2014|url-status=dead|archive-date=5 April 2017|archive-url=https://web.archive.org/web/20170405213148/http://planet.jboss.org/post/what_is_the_difference_between_picketlink_and_keycloak}}

To some extent Keycloak can now also be considered a replacement of the Red Hat JBoss SSO open source product which was previously superseded by PicketLink.{{cite web|url=http://jbosssso.jboss.org/|archive-url=https://web.archive.org/web/20140530091607/http://jbosssso.jboss.org/ |url-status=dead|archive-date=30 May 2014|title=JBosssso (archived) Website }}{{cite book|title=GlassFish Security|page=182|date=30 May 2010|first=Masoud|last=Kalali|publisher=PACKT|isbn=978-1-847199-38-6}} {{As of|March 2018}}, JBoss.org is redirecting the old jbosssso subsite to the Keycloak website. The JBoss name is a registered trademark and Red Hat moved its upstream open source projects names to avoid using JBoss, JBoss AS to Wildfly being a more commonly recognized example.{{Cite web |title=Load Balancing Wildfly and JBoss Application Servers with NGINX Open Source and NGINX Plus {{!}} NGINX Documentation |url=https://docs.nginx.com/nginx/deployment-guides/load-balance-third-party/wildfly/ |access-date=2023-10-11 |website=docs.nginx.com |language=en-us}}

Components

There are two main components of Keycloak:

  • Keycloak server, including the API and graphical interface.
  • Keycloak client. Previously Keycloak included a set of 'adapter' libraries, but those were discontinued in 2022.{{Cite web |title=Deprecation of Keycloak adapters - Keycloak |url=https://www.keycloak.org/2022/02/adapter-deprecation |access-date=2024-10-07 |website=www.keycloak.org}}

See also

References

{{reflist}}