MCPcopy
hub / github.com/keycloak/keycloak

github.com/keycloak/keycloak @26.6.4 sqlite

repository ↗ · DeepWiki ↗ · release 26.6.4 ↗
76,595 symbols 473,442 edges 8,754 files 11,448 documented · 15%
README

Keycloak

GitHub Release OpenSSF Best Practices CLOMonitor OpenSSF Scorecard Artifact Hub GitHub Repo stars GitHub commit activity Translation status

Open Source Identity and Access Management

Add authentication to applications and secure services with minimum effort. No need to deal with storing users or authenticating users.

Keycloak provides user federation, strong authentication, user management, fine-grained authorization, and more.

Help and Documentation

Reporting Security Vulnerabilities

If you have found a security vulnerability, please look at the instructions on how to properly report it.

Reporting an issue

If you believe you have discovered a defect in Keycloak, please open an issue. Please remember to provide a good summary, description as well as steps to reproduce the issue.

Getting started

To run Keycloak, download the distribution from our website. Unzip and run:

bin/kc.[sh|bat] start-dev

Alternatively, you can use the Docker image by running:

docker run quay.io/keycloak/keycloak start-dev

For more details refer to the Keycloak Documentation.

Building from Source

To build from source, refer to the building and working with the code base guide.

Testing

To run tests, refer to the running tests guide.

Writing Tests

To write tests, refer to the writing tests guide.

Contributing

Before contributing to Keycloak, please read our contributing guidelines. Participation in the Keycloak project is governed by the CNCF Code of Conduct.

Joining a community meeting is a great way to get involved and help shape the future of Keycloak.

Other Keycloak Projects

License

Extension points exported contracts — how you extend this code

IThrowingSupplier (Interface)
Supplier which allows throwing any exception. @param type which is supplied @param type of exception which gets [90 implementers]
federation/sssd/src/main/java/org/freedesktop/dbus/utils/IThrowingSupplier.java
ConfigUpdateOperation (Interface)
@author Marko Strukelj [63 implementers]
integration/client-cli/admin-cli/src/main/java/org/keycloak/client/cli/config/ConfigUpdateOperation.java
GroupPoliciesResource (Interface)
@author Pedro Igor [8 implementers]
integration/admin-client/src/main/java/org/keycloak/admin/client/resource/GroupPoliciesResource.java
OIDCClientRepresentationBuilder (Interface)
@author rmartinc [108 implementers]
test-framework/oauth/src/main/java/org/keycloak/testframework/oauth/OIDCClientRepresentationBuilder.java
TestFrameworkExtension (Interface)
Test framework extensions allows adding additional suppliers to the test framework [17 implementers]
test-framework/core/src/main/java/org/keycloak/testframework/TestFrameworkExtension.java
FetchOnServerWrapper (Interface)
Created by st on 26.01.17. [7 implementers]
test-framework/remote-providers/src/main/java/org/keycloak/testframework/remote/providers/runonserver/FetchOnServerWrapper.java
ClientCredentialsProvider (Interface)
The simple SPI for authenticating clients/applications . It's used by adapter during all OIDC backchannel requests to Ke [6 …
core/src/main/java/org/keycloak/protocol/oidc/client/authentication/ClientCredentialsProvider.java
MigrationManager (Interface)
Handle the migration of the datastore and an imported realm representation. Will eventually be handled by the store dire [46 …
model/storage-private/src/main/java/org/keycloak/storage/MigrationManager.java

Core symbols most depended-on inside this repo

get
called by 9612
core/src/main/java/org/keycloak/Config.java
put
called by 5081
server-spi-private/src/main/java/org/keycloak/cache/LocalCache.java
build
called by 4814
test-framework/oauth/src/main/java/org/keycloak/testframework/oauth/OIDCClientRepresentationBuilder.java
add
called by 4544
server-spi-private/src/main/java/org/keycloak/services/cors/Cors.java
getId
called by 3395
server-spi/src/main/java/org/keycloak/models/Model.java
users
called by 3219
server-spi/src/main/java/org/keycloak/models/KeycloakSession.java
realm
called by 2970
server-spi-private/src/main/java/org/keycloak/events/EventQuery.java
map
called by 2630
adapters/spi/adapter-spi/src/main/java/org/keycloak/adapters/spi/SessionIdMapper.java

Shape

Method 64,909
Class 7,846
Function 2,361
Interface 1,196
Enum 283

Languages

Java96%
TypeScript4%
Python1%

Modules by API surface

services/src/test/java/org/keycloak/protocol/saml/SamlProtocolTest.java413 symbols
server-spi-private/src/test/java/org/keycloak/broker/provider/util/IdentityBrokerStateTestHelpers.java360 symbols
core/src/main/java/org/keycloak/representations/idm/RealmRepresentation.java304 symbols
server-spi/src/main/java/org/keycloak/models/RealmModel.java284 symbols
model/jpa/src/main/java/org/keycloak/models/jpa/RealmAdapter.java284 symbols
model/infinispan/src/main/java/org/keycloak/models/cache/infinispan/RealmAdapter.java283 symbols
server-spi-private/src/main/java/org/keycloak/models/utils/RealmModelDelegate.java268 symbols
saml-core/src/main/java/org/keycloak/saml/common/DefaultPicketLinkLogger.java240 symbols
saml-core/src/main/java/org/keycloak/saml/common/PicketLinkLogger.java239 symbols
model/jpa/src/main/java/org/keycloak/models/jpa/entities/RealmEntity.java134 symbols
quarkus/runtime/src/test/java/org/keycloak/quarkus/runtime/cli/PicocliTest.java126 symbols
services/src/main/java/org/keycloak/authentication/AuthenticationProcessor.java124 symbols

Dependencies from manifests, versioned

${ee.maven.groupId}:wildfly-ee-galleon-pack
${ee.maven.groupId}:wildfly-servlet-galleon-pack
${ee.maven.groupId}:wildfly-undertow
${ee.maven.groupId}:wildfly-web-common
${jdbc.mvn.groupId}:${jdbc.mvn.artifactId}
ant-contrib:ant-contrib1.0b3 · 1×
com.apicatalog:titanium-json-ld
com.approvaltests:approvaltests
com.fasterxml.jackson.core:jackson-annotations
com.fasterxml.jackson.core:jackson-core
com.fasterxml.jackson.dataformat:jackson-dataformat-cbor

Datastores touched

(mysql)Database · 1 repos
keycloakDatabase · 1 repos
keycloakDatabase · 1 repos
kcdbDatabase · 1 repos
KEYCLOAKDatabase · 1 repos
keycloakDBDatabase · 1 repos

For agents

$ claude mcp add keycloak \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact