Quickstart:本机启动与授权码 + PKCE
本机一键体验
Quickstart Preview 会启动 Server、Admin、Me、PostgreSQL 和本地 Caddy,不包含线上产品站镜像。 需要 Docker Engine 与 Docker Compose v2:
curl -fsSLO https://auth.pandalabs.cn/downloads/panda-auth-quickstart-0.1.0.tar.gz
tar -xzf panda-auth-quickstart-0.1.0.tar.gz
cd panda-auth-quickstart-0.1.0
bash up.sh
启动后访问:
- 首页:http://localhost:8080/
- 管理后台:http://localhost:8080/admin/
- 账户中心:http://localhost:8080/me/
- OIDC Discovery:http://localhost:8080/.well-known/openid-configuration
脚本会生成本地管理员密码并打印出来,密码同时保存在 quickstart/.env(权限 0600)。
本地邮件验证码写入容器日志,不连接真实邮件服务。
默认镜像来自中国大陆腾讯云 TCR:
ccr.ccs.tencentyun.com/panda-auth/
无法访问 TCR 时,可将 quickstart/.env 中的三个应用镜像切换到对应的
GHCR (ghcr.io/pandalabs2026/) 镜像。镜像支持 linux/amd64 与 linux/arm64。
这是本机体验包,不是生产部署方案;它使用本地 HTTP、Development 环境和本地生成的体验密钥。
线上产品站的完整文档、状态和更新日志见 产品站。
OIDC 接入
PandaAuth 实现标准 OIDC / OAuth 2.0。接入一个 Web 应用只需标准的授权码流程(推荐始终开启 PKCE), 不需要任何专有 SDK——任何标准 OIDC 客户端库(.NET 的 OpenIddict Client、Microsoft.Authentication.WebAssembly.OIDC、 NextAuth 等)都可以直接对接。
前置条件
- 一个由管理员创建并配置好的客户端(Client ID / Redirect URI 白名单 / 必要权限); 客户端的创建与白名单管理目前通过部署方运维通道办理(接入洽谈:hello@pandalabs.cc)。
- 确认部署实例的 Discovery 地址可用:
https://<你的认证域名>/.well-known/openid-configuration
五步接入
- 生成授权请求:跳转浏览器到
/connect/authorize,携带client_id、redirect_uri、response_type=code、scope(至少openid)与state;推荐同时携带code_challenge(S256)与code_challenge_method,并请求offline_access以获得刷新令牌。 - 用户登录:用户在 PandaAuth 托管登录页完成认证(支持密码、MFA 与 Passkey)。
- 接收回调:认证完成后浏览器携带
code与state回到你的redirect_uri; 先校验state,再用授权码换令牌。 - 换取令牌:向
/connect/token发起grant_type=authorization_code请求, 携带code、redirect_uri与code_verifier;机密客户端附 Basic 方式的客户端凭证。 - 使用与续期:携带访问令牌调用你的 API;访问令牌过期前用刷新令牌换新
(
grant_type=refresh_token)。令牌不再使用时建议调用/connect/revoke吊销。
参考实现
官方示例 samples/PandaAuth.DemoClient(server 仓内)演示了完整流程,
其回调地址形如 http://localhost:5201/callback/login/pandaauth。