OpenAM vs Keycloak
General Information
| OpenAM | Keycloak | |
|---|---|---|
Initial release |
2008 |
2014 |
Maintainer |
Open Identity Platform Community |
Red Hat |
Current version |
16.0.4 |
26.4.7 |
Release and patches |
Regular |
Regular |
Open Source |
✅ |
✅ |
Programming Language |
Java |
Java |
Supported Java version |
11+ LTS |
17+ LTS |
License |
CDDL |
Apache License 2.0 |
Multiple languages supported |
✅ |
✅ |
Single Sign On (SSO) and Federation
| OpenAM | Keycloak | |
|---|---|---|
Applications deployment behind an auth gateway |
✅ doc |
✅ doc |
API gateway control |
✅ doc |
⛔️ |
Apache Web Server Policy Agent |
✅ doc |
⛔️ |
IIS Policy Agent |
✅ doc |
⛔️ |
J2EE Policy Agent (for Tomcat, Jetty, etc) |
✅ doc |
⛔️ |
OAuth 2.0/OIDC federation |
||
SAMLv2 federation |
✅ doc |
Authentication
Supported authentication methods:
| Authentication method | OpenAM | Keycloak |
|---|---|---|
Login and password authentication |
✅ doc |
✅ https://www.keycloak.org/docs/latest/server_admin/index.html#_authentication-flows[doc] |
Microsoft Active Directory authentication |
✅ doc |
✅ https://www.keycloak.org/docs/latest/server_admin/index.html#_user-storage-federation[doc] |
Authentication for demo access |
✅ doc |
⛔️ |
Adaptive authentication |
✅ doc |
⛔️ |
Authentication in an LDAPv3-compatible directory |
✅ doc |
✅ https://www.keycloak.org/docs/latest/server_admin/index.html#_user-storage-federation[doc] |
Persistent cookie authentication |
✅ doc |
✅ https://www.keycloak.org/docs/latest/server_admin/index.html#enabling-remember-me[doc] |
RDBMS authentication |
✅ doc |
✅ https://www.keycloak.org/server/db[doc] |
Self-registration |
✅ doc |
✅ https://www.keycloak.org/docs/latest/server_admin/index.html#con-user-registration_server_administration_guide[doc] |
HTTP Header enrichment authentication |
✅ doc |
⛔️ |
Windows NT authentication |
✅ doc |
⛔️ |
OAuth 2.0/OIDC authentication |
✅ doc |
✅ https://www.keycloak.org/docs/latest/server_admin/index.html#con-oidc_server_administration_guide[doc] |
Kerberos authentication |
✅ doc |
✅ https://www.keycloak.org/docs/latest/server_admin/index.html#_kerberos[doc] |
OIDC id_token authentication |
✅ doc |
⛔️ |
RADIUS authentication |
✅ doc |
⛔️ |
HOTP via SMS or email |
✅ doc |
⛔️ |
One time password with HOTP or TOTP authentication |
✅ doc |
✅ https://www.keycloak.org/docs/latest/server_admin/index.html#one-time-password-otp-policies[doc] |
Custom scripted authentication provider |
✅ doc |
⛔️ |
SAMLv2 authentication |
✅ doc |
✅ https://www.keycloak.org/docs/latest/server_admin/index.html#_saml[doc] |
ReCaptcha |
✅ doc |
✅ https://www.keycloak.org/docs/latest/server_admin/index.html#proc-enabling-recaptcha_server_administration_guide[doc] |
QR-code authentication |
✅ doc |
⛔️ |
NTLM authentication |
✅ doc |
⛔️ |
Docker HTTP Basic Authentication |
⛔️ |
✅ https://www.keycloak.org/docs/latest/server_admin/index.html#docker-authentication-flow[doc] |
HTTP Basic Authentication |
✅ doc |
✅ https://www.keycloak.org/docs/latest/server_admin/index.html#docker-authentication-flow[doc] |
Recovery codes authentication |
✅ doc |
✅ https://www.keycloak.org/docs/latest/server_admin/index.html#_recovery-codes[doc] |
WebAuthn |
✅ doc |
✅ https://www.keycloak.org/docs/latest/server_admin/index.html#webauthn_server_administration_guide[doc] |
X509 certificate authentication |
✅ doc |
✅ https://www.keycloak.org/docs/latest/server_admin/index.html#_x509[doc] |
Custom authentication provider |
✅ doc |
✅ doc |
Interfaces
| Interface | OpenAM | Keycloak |
|---|---|---|
Administrator GUI |
✅ |
✅ |
Admin REST API |
✅ |
✅ |
Admin UI customization |
⛔️ |
✅ https://www.keycloak.org/ui-customization/creating-your-own-console[doc] |
Authentication GUI |
✅ |
✅ |
Authentication GUI customization |
✅ doc |
✅ https://www.keycloak.org/guides#ui-customization[doc] |
Authentication REST API |
✅ doc |
⛔️ |
Authentication XML-RPC API |
✅ doc |
⛔️ |