This guide presents a list of specifications and standards that Keycloak currently implements. The standards are separated in different sections and, in each one, a table is shown with the following four columns:
Specification: The standard or specification that Keycloak implements.
Status: The current status of the implementation inside Keycloak (supported, preview, experimental,…). See Enabling and disabling features for more information.
Conformity: Assurance of conformity of the implementation.
Certified (version): The specification provides conformance tests that Keycloak executes periodically and for each new version. The version in brackets is the last version of Keycloak certified by the authority.
Passed: There are conformance tests provided by the authority that Keycloak passes, but no version is certified yet.
Partial: There are conformance tests but Keycloak is not yet fully passing them.
If this column is empty means that Keycloak does not pass any external conformance tests for the spec. Only common project integration tests are executed. Maybe the authority does not provide a conformance tests suite or Keycloak is not interested in passing them.
Comments: A generic column that can contain details of the implementation or the status. For example parts that are not covered yet or specific behaviors out of the spec.
Specification | Status | Conformity | Comments |
---|---|---|---|
Supported |
Certified (18.0.0) |
||
Supported |
Certified (18.0.0) |
||
Supported |
Certified (18.0.0) |
||
Supported |
Certified (18.0.0) |
||
Supported |
Certified (18.0.0) |
||
Supported |
Certified (18.0.0) |
||
Supported |
Certified (18.0.0) |
||
OpenID Connect Client-Initiated Backchannel Authentication Flow |
Supported |
Certified (18.0.0) |
|
Supported |
Certified (18.0.0) |
||
Supported |
Certified (18.0.0) |
||
Supported |
|||
Experimental |
Specification | Status | Conformity | Comments |
---|---|---|---|
Supported |
Certified (15.0.2) |
||
Supported |
Certified (15.0.2) |
||
Financial-grade API: JWT Secured Authorization Response Mode for OAuth 2.0 (JARM) |
Supported |
Certified (15.0.2) |
|
Financial-grade API: Client Initiated Backchannel Authentication Profile (Draft) |
Supported |
Certified (15.0.2) |
|
Supported |
Passed |
||
FAPI 2.0 Message Signing (Draft) |
Supported |
Passed |
Specification | Status | Conformity | Comments |
---|---|---|---|
Supported |
This standard covers multiple bindings and contexts. Keycloak implements a full range of them but there are missing parts for sure. |
Specification | Status | Conformity | Comments |
---|---|---|---|
User-Managed Access (UMA) 2.0 Grant for OAuth 2.0 Authorization |
Supported |
||
Supported |
Specification | Status | Conformity | Comments |
---|---|---|---|
Supported |
|||
Supported |
|||
Supported |
|||
Supported |
|||
Supported |
|||
Supported |
Specification | Status | Conformity | Comments |
---|---|---|---|
Security Requirements for Cryptographic Modules (FIPS 140-2) |
Supported |
Certified |
Keycloak uses Bouncy Castle (BC) FIPS libraries to provide FIPS 140-2. BC is indeed a certified FIPS 140-3 implementation, but also needs a certified stack (Operative system and Java VM). See FIPS 140-2 support for more information. |
Web Authentication: An API for accessing Public Key Credentials Level 2 |
Supported |
This specification has conformance tests but Keycloak is not using them. Keycloak acts as a WebAuthn’s Relying Party (RP) for this specification. |