auth-oidc
让Runtime Console通过 OIDC 使用主机的身份验证会话。
当生产Runtime Console用户应使用登录时安装 auth-oidc
the host’s real auth flow instead of development bearer tokens.这取决于
auth 并重用相同的 auth.users 行作为应用程序登录。
密码登录是当前创建用户会话的第一方方法
启动 OIDC 流程。 auth-oidc不创建单独的Console用户存储;
它将现有的身份验证会话转换为控制台令牌。
lenso module install auth
lenso module install auth-password
lenso module install auth-oidc
cargo run --bin migrate
lenso serve
生产配置
auth-oidc 使用模块本地启动配置:
APP_ENV=production
LENSO_COMPOSITION_PROFILE=core
LENSO_MODULE_AUTH_OIDC__ENABLED=true
LENSO_MODULE_AUTH_OIDC__ISSUER=https://app.example.com
LENSO_MODULE_AUTH_OIDC__CONSOLE_REDIRECT_URIS='["https://app.example.com/console/oidc/callback"]'
LENSO_MODULE_AUTH_OIDC__JWKS='{"keys":[...]}'
LENSO_MODULE_AUTH_OIDC__ID_TOKEN_PRIVATE_KEY_PEM="$OIDC_SIGNING_KEY_PEM"
console_client_id 默认为 lenso-console。重定向 URI 必须匹配
托管控制台回调路径完全相同:/console/oidc/callback。
将 id_token_private_key_pem 保存在您的秘密存储中。 jwks 是公钥
设置匹配该签名密钥。
授予控制台访问权限
OIDC 访问令牌解析为与应用程序相同的身份验证用户 ID
会议。通过 auth.console_admin_user_scopes 授予控制台范围:
{
"usr_admin": ["console.admin", "runtime.stories.read", "auth.users.read"]
}
console.admin 允许用户输入管理 HTTP 端点。Runtime Story页面
还要求 runtime.stories.read;其他模块页面检查自己的
能力字符串。
对于独立安装的 Console,通过外部安装权限初始化首个 Operator:
lenso console operator bootstrap \
--console-url https://console.example.com \
--identifier admin@example.com
初始化后重启 Console API 和 Worker。已有身份可以改用 --user-id 选择;
后续 Operator 通过 Console 的 identity Module 管理。
浏览器令牌边界
请勿将浏览器控制台捆绑包与 VITE_API_AUTH_TOKEN 或服务一起提供
Bearer Token融入其中。在生产中,/console 应该依赖密码
登录、OIDC 回调存储以及上面的每用户范围。