Alternatives#

Here is a feature comparison with other OpenID Connect server software.

Projects and protocols#

Canaille voluntarily only implements the OpenID Connect protocol to keep its codebase simple.

Software

FLOSS

Language

LOC

Binary Size

OIDC

SAML

CAS

SCIM

LDAP

SQL

Forward-auth

Canaille

Python

16k

~15MB

🟠

Auth0

N/A (Cloud)

☑️

🟠

Authelia

Go

185k

~25MB

Authentic2

Python

121k

~20MB

☑️

☑️

Authentik

🟠

Python

440k

~800MB (Docker)

☑️

Authgear

Go

856k

~50MB

☑️

CAS

Java

900k

~150MB (WAR)

☑️

☑️

🟠

🟠

Connect2id

~80MB (JAR)

FusionAuth

Java

~200MB (ZIP)

☑️

🟠

Gluu

Java

636k

~2GB (Container)

☑️

🟠

Hydra + Kratos

🟠

Go

119k

~40MB (2 binaries)

🟠

🟠

Kanidm

Rust

387k

~30MB

🟠

Keycloak

Java

1.1M

~250MB (JAR)

☑️

🟠

🟠

LemonLDAP

Perl

410k

~50MB (Package)

☑️

☑️

Logto

TypeScript

387k

~100MB (Docker)

☑️

Okta

N/A (Cloud)

☑️

Pocket ID

Go

~20MB

SimpleIdServer

C#

829k

~120MB (.NET)

SuperTokens

🟠

Java

451k

~100MB (JAR)

🟠

WSO2

Java

1.4M

~500MB (ZIP)

☑️

🟠

Zitadel

Go

760k

~60MB

☑️

🟠

Authentication Methods#

Here is the support for the most common authentication methods.

Software

Password

TOTP

HOTP

SMS

Email

WebAuthn

Canaille

Auth0

Authelia

Authentic2

🟠

Authentik

Authgear

CAS

Connect2id

🟠

FusionAuth

🟠

Gluu

🟠

Hydra + Kratos

Kanidm

Keycloak

LemonLDAP

🟠

Logto

Okta

Pocket ID

SimpleIdServer

SuperTokens

WSO2

Zitadel

OAuth2/OIDC Specifications Compatibility#

Software

Token Revocation

Dynamic Registration

Dynamic Management

PKCE

Token Introspection

Discovery

Device Flow

Token Exchange

MTLS

JAR

PAR

RAR

DPoP

Canaille

Auth0

🟠

Authelia

🟠

🟠

Authentic2

🟠

Authentik

Authgear

CAS

Connect2id

FusionAuth

Gluu

Hydra + Kratos

Kanidm

Keycloak

🟠

LemonLDAP

Logto

Okta

🟠

🟠

🟠

🟠

Pocket ID

SimpleIdServer

SuperTokens

🟠

🟠

🟠

🟠

WSO2

Zitadel

🟠

OpenID Connect Advanced Features#

Software

OIDC Discovery

Dynamic Registration

RP-Initiated Logout

Session Management

Front-Channel Logout

Back-Channel Logout

CIBA

Prompt=create

Federation

Canaille

Auth0

🟠

🟠

Authelia

🟠

Authentic2

Authentik

Authgear

CAS

🟠

Connect2id

FusionAuth

Gluu

Hydra + Kratos

Kanidm

Keycloak

🟠

LemonLDAP

Logto

🟠

Okta

🟠

Pocket ID

🟠

SimpleIdServer

SuperTokens

🟠

🟠

WSO2

Zitadel