Zeabur Identityv0.1.0
删掉 admin.conf,用通行密钥登录集群
kubectl 会打开浏览器,你用 Touch ID、Windows Hello 或安全密钥登录,拿到几分钟就过期的令牌。令牌由 Kubernetes 自己验证,Zeabur Identity 不在请求路径上。
成员用自己的权限,管理员用专用账号
- passkey
通行密钥,不用密码
用 Touch ID、Windows Hello 或安全密钥登录。成员也可以关联 GitHub 或 Google 账号,日常登录时使用。
- 5 min
管理员有专用账号
管理员账号只能用通行密钥登录,令牌 5 分钟过期,工作时会自动换新。日常工作用普通账号,要改集群时再登录管理员账号。
- ~20 MB
运行在它保护的集群里
一个约 20 MB 的 Pod,不需要数据库,也不用另外准备服务器。Argo CD、Grafana 这类 OpenID Connect 应用也能用同一个 issuer。
在浏览器登录,回到 kubectl 继续工作
运行 kubectl
例如 kubectl get pods。浏览器会打开 Zeabur Identity 的登录页。
用通行密钥登录
kubectl 拿到 10 分钟的令牌,你工作时它会在后台续期。
Kubernetes 自己验证
kube-apiserver 通过 OpenID Connect 验证令牌。撤销某人的会话后,他手上的令牌最多十分钟就失效。
登录时看到的页面




支持范围
| 项目 | 范围 | 条件 |
|---|---|---|
| Kubernetes 发行版 | CI 在 k3s 上测试 | k0s 和 kubeadm 有配置可用,安装尚未验证 |
| 登录方式 | 通行密钥,或关联的 GitHub、Google 账号 | GitHub、Google 需要另外配置 OAuth 应用 |
| 管理员账号 | 只能用通行密钥,令牌 5 分钟 | 用 zeabur-identityctl 设置账号类型 |
| 其他应用 | 用 zeabur-identityctl client create 注册 Grafana、Argo CD | 应用支持 OpenID Connect |
| 成员 | 用户组、管理员账号、丢失通行密钥、移除成员,也能从目录同步 | 同步需要自己写一小段脚本 |
| 你的电脑 | macOS、Linux 或 Windows 上的 kubectl | 按入门指南配置 kubeconfig |
从一台 Ubuntu 服务器开始
入门指南会在 Ubuntu 服务器上装好 k3s,下载并验证 Zeabur Identity,再从你的电脑用通行密钥登录。现有集群用集群管理员的 kubeconfig 运行下面几行。
export ZEABUR_IDENTITY_ISSUER=https://login.example.com
zeabur-identityctl crds | kubectl apply --server-side -f -
zeabur-identityctl manifests --image "$ZEABUR_IDENTITY_IMAGE" \
--serve-arg=--invitations | kubectl apply --server-side -f -
# Prints kube-apiserver's configuration and how to install it
# for your distribution:
zeabur-identityctl kube-config --distro k3s > authn.yaml
# A one-time link: open it and create your passkey.
zeabur-identityctl setup-link --username admin