No description
Find a file
danielFesenmeyer d543ba5b56 Consistent message resolving regarding language fallbacks for all themes
- the prio of messages is now as follows for all themes (RL = realm localization, T = Theme i18n files): RL <variant> > T <variant> > RL <region> > T <region> > RL <language> > T <language> > RL en > T en
- centralize the message resolving logic in helper methods in LocaleUtil and use it for all themes, add unit tests in LocaleUtilTest
- add basic integration tests to check whether realm localization can be used in all supported contexts:
  - Account UI V2: org.keycloak.testsuite.ui.account2.InternationalizationTest
  - Login theme: LoginPageTest
  - Email theme: EmailTest
- deprecate the param useRealmDefaultLocaleFallback=true of endpoint /admin/realms/{realm}/localization/{locale}, because it does not resolve fallbacks as expected and is no longer used in admin-ui v2
- fix locale selection in DefaultLocaleSelectorProvider that a supported region (like "de-CH") will no longer selected instead of a supported language (like "de"), when just the language is requested, add corresponding unit tests
- improvements regarding message resolving in Admin UI V2:
  - add cypress test i18n_test.spec.ts, which checks the fallback implementation
  - log a warning instead of an error, when messages for some languages/namespaces cannot be loaded (the page will probably work with fallbacks in that case)

Closes #15845
2023-05-17 15:00:32 +02:00
.github Increase timeout for Legacy Store IT 2023-05-16 10:37:14 +02:00
.mvn/wrapper Update mvnw to 3.8.6 (#12492) 2022-06-14 10:28:40 +02:00
adapters Move from NPM to PNPM (#19839) 2023-05-05 12:03:24 -04:00
authz Exposing the authz client 2023-05-05 10:18:55 -03:00
boms Fixes SAML tests in testsuite 2023-04-27 13:36:54 +02:00
common Use JakartaEE dependencies 2023-04-27 13:36:54 +02:00
core Policy Enforcer built-in support for Elytron and Jakarta 2023-04-05 17:03:15 +02:00
crypto Fix the issue with LDAP connectionUrl containing multiple hosts 2023-04-16 17:41:22 +02:00
dependencies Add Maven build for the Admin UI (#17552) 2023-03-13 18:16:12 +00:00
distribution Conditionally build WildFly adapters for our testsuite 2023-05-15 14:58:49 +02:00
docs Consistent message resolving regarding language fallbacks for all themes 2023-05-17 15:00:32 +02:00
examples Support JavaEE for Admin client (#19988) 2023-04-28 16:35:31 +02:00
federation Removing duplicated serverPrincipal at LDAPStorageProviderFactory.java 2023-05-16 15:20:38 +02:00
integration Consistent message resolving regarding language fallbacks for all themes 2023-05-17 15:00:32 +02:00
js Consistent message resolving regarding language fallbacks for all themes 2023-05-17 15:00:32 +02:00
misc Migrate packages from javax.* to jakarta.* 2023-04-27 13:36:54 +02:00
model Fix broker link query param order to match the columns order in the primary key index 2023-05-17 10:22:59 +02:00
operator Stops the recreation of managed Keycloak Statefulset Pods when Keycloak Operator restarts occasionally. (#20187) 2023-05-09 19:33:12 +02:00
quarkus Use non-blocking random generator on Linux, and native Microsoft CryptoAPI on Windows (#20403) 2023-05-17 11:00:37 +02:00
rest don't add access when fine grained access is off (#19991) 2023-05-02 10:50:18 +02:00
saml-core Use JakartaEE dependencies 2023-04-27 13:36:54 +02:00
saml-core-api Adds com.sun.xml.ws.rt dependency to saml-core-api 2023-04-27 13:36:54 +02:00
server-spi Consistent message resolving regarding language fallbacks for all themes 2023-05-17 15:00:32 +02:00
server-spi-private Updates Datastore provider to contain full data model 2023-05-16 15:05:10 +02:00
services Consistent message resolving regarding language fallbacks for all themes 2023-05-17 15:00:32 +02:00
testsuite Consistent message resolving regarding language fallbacks for all themes 2023-05-17 15:00:32 +02:00
themes Adhere to HTML standard when using ul-element (#20243) 2023-05-16 15:46:36 -04:00
util Artifact SLF4J LOG4J-12 has been relocated (#20113) 2023-05-05 13:57:45 +02:00
.gitattributes Use lf as line-ending for sh files 2022-07-19 08:57:57 +02:00
.gitignore Support JavaEE for Admin client (#19988) 2023-04-28 16:35:31 +02:00
.gitleaks.toml Removing testsuite/performance from main Keycloak repository (#15950) 2022-12-15 14:43:24 +01:00
ADOPTERS.md Add CERN to Adopters 2022-11-24 11:30:57 +01:00
CONTRIBUTING.md Removed links from relocated repositories (#19703) 2023-04-13 12:59:43 -04:00
get-version.sh Added get-version script 2019-03-05 08:42:14 +01:00
GOVERNANCE.md Removed links from relocated repositories (#19703) 2023-04-13 12:59:43 -04:00
LICENSE.txt Added text version of ASL2 license 2019-11-08 12:43:10 +01:00
MAINTAINERS.md Add Sebastian Schuster to maintainers (#20076) 2023-05-02 12:35:08 +02:00
maven-settings.xml [KEYCLOAK-11764] Upgrade to Wildfly 19 2020-04-24 08:19:43 -03:00
mvnw Add Maven Wrapper (#11031) 2022-04-22 15:24:39 +02:00
mvnw.cmd Add Maven Wrapper (#11031) 2022-04-22 15:24:39 +02:00
pom.xml Remove duplicated properties from the main POM file 2023-05-15 20:41:11 -03:00
PR-CHECKLIST.md Introduce CODEOWNERS (#16637) 2023-01-30 13:05:45 +01:00
prod-arguments.json [KEYCLOAK-16723] Upgrade to Wildfly 22 2021-04-29 12:36:03 +02:00
README.md removed links from relocated repositories 2023-04-13 10:59:57 +02:00
set-version.sh Move from NPM to PNPM (#19839) 2023-05-05 12:03:24 -04: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/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.

Other Keycloak Projects

License