No description
Find a file
Daniel Gozalo dad51773ea [fixes #9223] - Create an internal representation of RAR that also handles Static and Dynamic Client Scopes
Parse scopes to RAR representation and validate them against the requested scopes in the AuthorizationEndpointChecker

Parse scopes as RAR representation and add the created context on the different cache models in order to store the state and make it available for mappers in the ClientSessionContext

Create a new AuthorizationRequestSpi to provide different implementations for either dynamic scopes or RAR requests parsing

Move the AuthorizationRequest objects to server-spi

Add the AuthorizationRequestContext property to the MapAuthenticationSessionEntity and configure MapAuthenticationSessionAdapter to access it

Remove the AuthorizationRequestContext object from the cache adapters and entities and instead recalculate the RAR representations from scopes every time

Refactor the way we parse dynamic scopes and put everything behind the DYNAMIC_SCOPES feature flag

Added a login test and added a function to get the requested client scopes, including the dynamic one, behind a feature flag

Add a new filter to the Access Token dynamic scopes to avoid adding scopes that are not permitted for a user

Add tests around Dynamic Scopes: replaying existing tests while enabling the DYNAMIC_SCOPES feature and adding a few more

Test how the server genereates the AuthorizationDetails object

Fix formatting, move classes to better packages and fix parent test class by making it Abstract

Match Dynamic scopes to Optional scopes only and fix tests

Avoid running these tests on remote auth servers
2022-01-26 13:19:23 +01:00
.github Exclude some folders from our SAST analysis 2022-01-20 18:42:39 -03:00
adapters KEYCLOAK-14817 Allow JS adapter to be bundled as ES module (#9351) 2022-01-13 08:28:30 +01:00
authz Set version to 17.0.0-SNAPSHOT 2021-12-20 10:50:39 +01:00
boms Set version to 17.0.0-SNAPSHOT 2021-12-20 10:50:39 +01:00
common [fixes #9222] - Let users configure Dynamic Client Scopes (#9327) 2022-01-12 14:27:24 +01:00
core [fixes #9223] - Create an internal representation of RAR that also handles Static and Dynamic Client Scopes 2022-01-26 13:19:23 +01:00
dependencies Set version to 17.0.0-SNAPSHOT 2021-12-20 10:50:39 +01:00
distribution Unified configuration option format and renaming keycloak.properties to keycloak.conf 2022-01-19 08:47:15 -03:00
docs Add section about recommended path exposures in reverse proxy (#9752) 2022-01-26 09:02:25 +01:00
examples Set version to 17.0.0-SNAPSHOT 2021-12-20 10:50:39 +01:00
federation Update LDAPOperationManager.java (#9561) 2022-01-20 17:33:56 +01:00
integration Set version to 17.0.0-SNAPSHOT 2021-12-20 10:50:39 +01:00
misc Set version to 17.0.0-SNAPSHOT 2021-12-20 10:50:39 +01:00
model Adding missing database constraints for clients in JPA map storage. 2022-01-23 20:34:28 +01:00
operator Baseline for Keycloak deployment in operator 2022-01-25 11:06:26 -03:00
quarkus Hide Hasicorp Vault from CLI (#9700) 2022-01-25 14:24:35 +01:00
saml-core Fix for KEYCLOAK-18914 (#9355) 2022-01-06 18:05:50 +01:00
saml-core-api Fix for KEYCLOAK-18914 (#9355) 2022-01-06 18:05:50 +01:00
server-spi [fixes #9223] - Create an internal representation of RAR that also handles Static and Dynamic Client Scopes 2022-01-26 13:19:23 +01:00
server-spi-private Convert MapClientScopeEntity to interface 2022-01-23 16:56:25 +01:00
services [fixes #9223] - Create an internal representation of RAR that also handles Static and Dynamic Client Scopes 2022-01-26 13:19:23 +01:00
testsuite [fixes #9223] - Create an internal representation of RAR that also handles Static and Dynamic Client Scopes 2022-01-26 13:19:23 +01:00
themes Closes #9418: Admin UI: sort the realm localization texts alphabetically (#9419) 2022-01-21 10:49:22 -05:00
util Set version to 17.0.0-SNAPSHOT 2021-12-20 10:50:39 +01:00
wildfly Set version to 17.0.0-SNAPSHOT 2021-12-20 10:50:39 +01:00
.gitattributes KEYCLOAK-19858 Add Tests to check that no credentials are leaking when using CLI commands. Also: Tests for Help Command output using Golden master technique 2021-12-14 02:13:59 -08:00
.gitignore [KEYCLOAK-15692] Upgrade to Wildfly "21.0.1.Final" 2020-11-26 09:25:29 +01:00
.gitleaks.toml KEYCLOAK-19155: Add a .gitleaks.toml 2021-08-31 20:21:28 +02:00
ADOPTERS.md Add Associazione Rousseau to the adopters 2019-10-09 08:05:46 +02:00
CONTRIBUTING.md Update commit message and issue linking sections in contributors guide (#9391) 2022-01-11 11:19:31 +01:00
get-version.sh Added get-version script 2019-03-05 08:42:14 +01:00
GOVERNANCE.md [KEYCLOAK-19754] - Update documentation files to remove problematic language in the main repository 2021-11-04 10:08:56 +01:00
LICENSE.txt Added text version of ASL2 license 2019-11-08 12:43:10 +01:00
MAINTAINERS.md Update MAINTAINERS.md 2021-10-18 15:46:35 +02:00
maven-settings.xml [KEYCLOAK-11764] Upgrade to Wildfly 19 2020-04-24 08:19:43 -03:00
pom.xml Upgrade to WildFly 26.0.1 (#9768) 2022-01-25 09:37:28 +01:00
prod-arguments.json [KEYCLOAK-16723] Upgrade to Wildfly 22 2021-04-29 12:36:03 +02:00
README.md Moved SECURITY.md to .github repository 2021-12-21 08:46:37 +01:00
release.sh Add profile to include new admin console (#9283) 2021-12-22 08:27:33 +01:00
set-version.sh Temporary fix to set keycloak-admin-ui version 2021-09-20 08:33:38 +02:00

Keycloak

Keycloak is an Open Source Identity and Access Management solution for modern Applications and Services.

This repository contains the source code for the Keycloak Server, Java adapters and the JavaScript adapter.

Help and Documentation

Reporting Security Vulnerabilities

If you've 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/standalone.[sh|bat] 

Alternatively, you can use the Docker image by running:

docker run jboss/keycloak

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.

Other Keycloak Projects

License