KubernetesはOpenID Connectを使用したユーザのアクセス制御が行える.
これを実現するために,Kubernetes OpenID Connect Helper(以下,Helper)とよばれるソフトウェアが使われる.Helperは,OIDC Providerとのやり取りや,$HOME/.kube/config
の更新や作成を簡単にする.
以下では,OSSのHelper実装を紹介する.
kubelogin
調べた範囲では,最も使われているPluginだった.HTTPサーバを起動するので,認証後の作業が不要で簡単に使える.
項目 | 値 |
---|---|
Star | 508 |
認証後の作業 | 不要(HTTPサーバが代理) |
int128/kubelogin: kubectl plugin for Kubernetes OpenID Connect authentication (kubectl oidc-login)
k8s-oidc-helper
CLIの操作が必要なので,手間がかかる.GoogleをOIDC Providerにするとjsonファイルを渡すだけで .kube/config
が生成されるのは便利だった.
項目 | 値 |
---|---|
Star | 189 |
認証後の作業 | 必要(WebブラウザのコードをCLIに貼り付け) |
dexter
kubeloginと同じアプローチを採用している.kubeloginでもGitHubをOIDC Providerとするときは,dexterを組み合わせることを推奨していた.
項目 | 値 |
---|---|
Star | 108 |
認証後の作業 | 不要(HTTPサーバが代理) |
gini/dexter: dexter is a Kubernetes OIDC helper with as much automation as possible