You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/specs/organization/01-comparison.md
+23-12Lines changed: 23 additions & 12 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,16 +6,16 @@
6
6
> [!IMPORTANT]
7
7
> SuperTokens is not included in this table because it does not natively support organization at all.
8
8
9
-
| Item | Auth0 | Stytch | Zitadel |
10
-
| --- | --- | --- | --- |
11
-
| Organization is optional | Yes | Authentication Type is determined at project creation. Unmodifiable. | No |
12
-
| Support building GitHub-style service | Yes | Have to emulate with 2 projects | Yes |
13
-
| Different password policies | Yes | Either Cross-organization or Organization-scoped. Once chosen, no going back | Yes |
14
-
| Different MFA policies | Use post-login action to customize | Yes | Yes |
15
-
| IAM | Yes | Yes | Yes |
16
-
| Invitation | Yes. Can return to specific application | Only supported at API level. Can return to specific URL to your backend | Yes when V2 API is enabled. Cannot return to URL |
17
-
| Email discovery | Yes | Yes | No |
18
-
| Organization switcher | No. Session bound to single org | Provide API for self-implementation | No |
9
+
| Item | Auth0 | Stytch | Zitadel | Clerk |
10
+
| --- | --- | --- | --- | --- |
11
+
| Organization is optional | Yes | Authentication Type is determined at project creation. Unmodifiable. | No | Yes |
12
+
| Support building GitHub-style service | Yes | Have to emulate with 2 projects | Yes | Yes |
13
+
| Different password policies | Yes | Either Cross-organization or Organization-scoped. Once chosen, no going back | Yes | No |
14
+
| Different MFA policies | Use post-login action to customize | Yes | Yes | No |
15
+
| IAM | Yes | Yes | Yes | No |
16
+
| Invitation | Yes. Can return to specific application | Only supported at API level. Can return to specific URL to your backend | Yes when V2 API is enabled. Cannot return to URL | Yes |
17
+
| Email discovery | Yes | Yes | No | No |
18
+
| Organization switcher | No. Session bound to single org | Provide API for self-implementation | No | Yes |
19
19
20
20
## Implications
21
21
@@ -24,29 +24,39 @@
24
24
In all competitors, a sign-in session is bound to a single organization only.
25
25
In Stytch, organization switching is done with token exchange.
26
26
27
+
In Clerk, the end-user can just switch organization without signing-in again.
28
+
27
29
### GitHub-style service
28
30
29
31
IMO, Auth0 is the most easiest to work with.
30
32
It does not enforce that an organization must exist, and does not enforce that users must belong to one and only one organization.
31
33
It just models GitHub-Style service naturally.
32
34
35
+
Clerk also models this easily.
36
+
33
37
### Different password policies and different MFA policies
34
38
35
39
In Auth0, password policies to tied to the connection, while MFA is a project-wide setting.
36
40
In competitors where organization is mandatory and user belonging to a single organization, all these authentication settings are tied to the organization.
37
41
38
42
IMO, authentication settings should be organization-overridable.
39
43
44
+
Notably, Clerk does not support this.
45
+
40
46
### IAM
41
47
42
48
In all competitors, the IAM use case is trivial to implement.
43
49
We should consider that in our design.
44
50
51
+
Notably, Clerk does not support this.
52
+
45
53
### Invitation
46
54
47
55
It seems that invitation is not very well implemented among competitors.
48
56
Auth0 does the best in this area.
49
57
58
+
Clerk supports this quite well, given that it is not OIDC-based, and it literally just allows you to specify `redirect_uri`.
59
+
50
60
### Email discovery
51
61
52
62
Again Auth0 does the best here.
@@ -57,8 +67,9 @@ At the end you have to try out the example app to test it out yourselves.
57
67
58
68
### Organization switcher
59
69
60
-
No competitors support this out-of-the-box.
61
-
62
70
In particular, Auth0 does not report to the client application that how organization the user belong to.
63
71
64
72
In other competitors where a user belongs to one and only one organization, you have to do it yourselves.
73
+
74
+
Only Clerk supports this out-of-box, but given its lack of support of different password policies and different MFA policies,
0 commit comments