如何快速配置Cal.com自托管环境下的SSO单点登录:完整指南
Cal.com是一款开源的日历应用,提供了统一的方式来管理个人或团队的日程安排和事件,支持SSO单点登录功能,提升企业用户的登录体验和安全性。本文将详细介绍在自托管环境下配置Cal.com的SSO单点登录的完整步骤,包括SAML和OIDC两种协议的设置方法。## SSO单点登录简介SSO(Single Sign-On)单点登录允许用户使用一组凭据访问多个应用程序,无需重复登录,提高了用户体
如何快速配置Cal.com自托管环境下的SSO单点登录:完整指南
Cal.com是一款开源的日历应用,提供了统一的方式来管理个人或团队的日程安排和事件,支持SSO单点登录功能,提升企业用户的登录体验和安全性。本文将详细介绍在自托管环境下配置Cal.com的SSO单点登录的完整步骤,包括SAML和OIDC两种协议的设置方法。
SSO单点登录简介
SSO(Single Sign-On)单点登录允许用户使用一组凭据访问多个应用程序,无需重复登录,提高了用户体验和安全性。Cal.com支持SAML(Security Assertion Markup Language)和OIDC(OpenID Connect)两种主流协议,满足不同企业的身份认证需求。
注意事项
⚠️ 重要提示:自托管环境下使用SSO功能需要企业许可证(Enterprise License)。
SAML协议配置步骤
1. 准备数据库
设置SAML_DATABASE_URL环境变量,指向一个独立的Postgres数据库,与主Cal实例使用不同的数据库。例如:
postgresql://postgres:@localhost:5450/cal-saml
如果使用自签名证书,需添加sslmode=no-verify参数:
postgresql://postgres:@localhost:5450/cal-saml?sslmode=no-verify
2. 配置管理员邮箱
设置SAML_ADMINS环境变量,指定可配置SAML的管理员邮箱列表(逗号分隔):
SAML_ADMINS=admin1@example.com,admin2@example.com
3. 在身份提供商(IdP)创建SAML应用
按照以下设置在IdP(如Okta、Azure AD等)创建SAML应用:
- 断言消费者服务URL(ACS URL):
https://<你的自托管实例URL>/api/auth/saml/callback - 实体ID(Entity ID):
https://saml.cal.com - 签名算法:RSA-SHA256
- Name ID格式:EmailAddress
- 属性映射:
firstName->user.firstNamelastName->user.lastName
4. 上传IdP元数据
- 从IdP获取XML格式的元数据文件
- 使用
SAML_ADMINS中配置的管理员账户登录Cal.com - 导航至 设置(Settings)-> 安全(Security)
- 在SAML配置部分粘贴XML元数据并保存
OIDC协议配置步骤
1. 准备数据库和管理员邮箱
同SAML配置步骤1和2,设置SAML_DATABASE_URL和SAML_ADMINS环境变量。
2. 获取OIDC提供商信息
从OIDC提供商(如Auth0、Keycloak等)获取:
- Client ID
- Client Secret
- Well Known URL(通常格式为
https://<provider-domain>/.well-known/openid-configuration)
3. 在Cal.com中配置OIDC
- 使用管理员账户登录Cal.com
- 访问
{BASE_URL}/settings/security/sso,进入SSO配置页面
Cal.com的SSO配置页面,支持SAML和OIDC两种协议
- 点击"Configure SSO with OIDC",输入Client ID、Client Secret和Well Known URL,点击保存
OIDC配置表单,需填写Client ID、Client Secret和Well Known URL
用户登录流程
配置完成后,用户可以通过以下步骤使用SSO登录:
- 访问Cal.com登录页面
- 点击"使用SSO登录"选项
- 被重定向到企业IdP的登录页面
- 输入企业凭据完成认证
- 自动重定向回Cal.com并完成登录
故障排除
- 数据库连接问题:确保
SAML_DATABASE_URL配置正确,数据库服务正常运行 - 权限问题:确认管理员邮箱已添加到
SAML_ADMINS环境变量 - 元数据错误:检查IdP元数据是否完整且格式正确
- 企业许可证:确保已正确配置企业许可证,否则SSO功能不可用
官方文档参考
更多详细信息,请参考官方文档:docs/self-hosting/sso-setup.mdx
通过以上步骤,您可以在Cal.com自托管环境中快速配置SSO单点登录,提升团队的登录效率和系统安全性。如有疑问,建议查阅官方文档或联系技术支持获取帮助。
更多推荐


所有评论(0)