歴史
起源
Dex は CoreOS, Inc. の認証サービスとして作られた。リポジトリは 2015 年 8 月に作成されている。その起源はソースにいまも残る。README の JWT サンプルはサンプル ID として eric.chiang@coreos.com と coreos.com を使っており、server 内のルーティング TODO コメントには CoreOS 時代の作者ハンドルが残る。
解こうとした課題は実務的なものだ。CoreOS は Kubernetes ツールを出荷していた。Kubernetes は OIDC ID Token でユーザを認証できたが、その ID Token を組織の既存ディレクトリから発行する手段がなかった。Dex がその穴を埋めた。Kubernetes には OIDC を話し、実際のログインは組織がすでに動かしているものへ委譲する。
年表
| 年 | マイルストーン |
|---|---|
| 2015 | CoreOS で最初のコミット。初期の Dex はより重厚な単体 ID プロバイダ。 |
| 2016 | v2 リライト。Dex を上流コネクタへ委譲する純粋な OIDC プロバイダへ再設計。 |
| 2018 | CoreOS が Red Hat に買収される。活発なメンテが停滞し、中立な家を探し始める。 |
| 2020 | Dex が CNCF Sandbox に受理される(2020 年 6 月)。 |
| 2026 | 現行リリースは v2.45.x 系。プロジェクトはコミュニティ運営を続ける。 |
どう進化したか
決定的な転換は v1 から v2 へのリライトだった。初期の Dex はより自己完結型の ID プロバイダだった。v2 はそれを、今日使われているモデルへ再設計した。すなわち、ユーザ ID を一切自前で持たず、コネクタを介して上流プロバイダにフェデレーションする薄い OIDC プロバイダである。現行のリリースタグはすべて v2.x 系なので、ほとんどのユーザが動かした Dex は実質 v2 だけだ。
ガバナンスは買収を通じて変わった。Red Hat が CoreOS を買収すると、プロジェクトは企業オーナーの積極的な関与を失った。CNCF Sandbox 提案は、寄贈の時点で Dex はすでにコミュニティ主導で、CoreOS・Red Hat・IBM のいずれの所有でもなく、活発なユーザコミュニティがベンダ中立な家を求めていたと記している。Technical Oversight Committee は 2020 年 6 月にこれを Sandbox に受理した。
現在地
Dex は MAINTAINERS.md とコントリビュータガイドを持つコミュニティグループがメンテしており、これまでに約 260 名のコントリビュータが変更を入れてきた。リリースは v2.45.x 系で続いている。スコープは意図的に狭く保たれている。フル機能の ID プラットフォームではなく、フェデレーテッド OIDC プロバイダである。メンテナ面の小ささの一つの帰結は、その限界について正直な点だ。SAML 2.0 コネクタは README で「メンテされておらず認証バイパスに脆弱である可能性が高い」と明記されている。このトレードオフは 採用事例・エコシステム で扱う。