Google Cloud在2026年9月2日宣布,Cloud SQL for PostgreSQL支持Workforce Identity Federation身份认证。企业可以让Microsoft Active Directory、Okta等外部身份提供商中的用户登录数据库,不再要求每位员工先建立和维护Google账号。
这项能力也被称为第三方IAM认证。Cloud SQL会在用户登录时验证Workforce Identity凭据和项目级IAM权限,再把通过验证的外部主体映射为PostgreSQL数据库用户。对于已经集中管理企业身份的团队,它可以减少两套账号体系并存带来的维护工作。

外部身份可以直接映射为数据库用户
Cloud SQL通过CLOUD_IAM_WORKFORCE_IDENTITY用户类型识别外部主体。管理员添加用户时,需要让用户ID与Workforce Identity Provider的属性映射结果一致,实际部署中常见形式是企业邮箱地址。
用户登录时,Google Cloud先校验来自Workforce Pool的身份,再检查项目级权限和实例内用户。身份提供商、Google Cloud IAM与PostgreSQL数据库权限仍然是三层不同控制。
身份联邦减少的是重复账号管理,不会自动授予数据库表权限。用户被加入Cloud SQL实例后,仍要在PostgreSQL中通过角色与GRANT控制能够访问的数据库对象。
使用前要求PostgreSQL 13或更高版本
官方文档要求目标Cloud SQL实例运行PostgreSQL 13或更高版本,并使用最新版gcloud CLI。旧版本实例需要先评估升级路径,不能只增加一个联邦用户就启用功能。
组织侧还要预先创建Workforce Identity Pool和Provider,并完成外部身份属性映射。Google同时把服务账号模拟列为前置准备之一,用于相关工作负载和访问流程。
如果企业身份提供商中的用户名、邮箱或subject映射不稳定,后续可能出现同一员工被识别为不同数据库用户的情况。上线前应固定用于用户ID的属性,并验证离职、改名和部门调整流程。
实例必须先开启Cloud SQL IAM认证
目标实例需要把cloudsql.iam_authentication数据库标志设为on。控制台可以在连接安全设置中启用,也可以通过gcloud、Terraform或Cloud SQL Admin API配置。
启用后,再以Workforce Identity Federation类型把外部用户添加到实例。管理员可以在控制台选择对应用户类型,也可以使用gcloud创建CLOUD_IAM_WORKFORCE_IDENTITY用户。
启用实例标志只是打开认证能力,还需要完成用户创建、项目IAM授权和数据库内权限分配,缺少任一层都会导致连接失败或登录后无法查询数据。
连接用户至少需要两类IAM权限
外部主体需要Cloud SQL Instance User角色,也就是roles/cloudsql.instanceUser。如果通过Cloud SQL Auth Proxy或语言连接器访问,还需要Cloud SQL Client角色。
权限可以授予单个Workforce主体,也可以授予整个Workforce Pool。把角色直接给整个Pool配置更快,但访问范围也更大,生产环境更适合按照岗位或用户组控制。
配置过程还涉及Cloud SQL Admin和项目IAM管理权限,这些应保留给管理员。数据库使用者只应得到连接所需的最小角色,避免为了排障长期扩大项目级权限。
迁移重点是账号生命周期和审计
企业可以先选择一组测试用户,验证浏览器或gcloud登录、Auth Proxy连接、PostgreSQL用户名映射和数据库角色权限,再逐步迁移更多人员。
离职或账号停用测试同样重要。外部身份在IdP侧失效后,应确认无法继续取得有效凭据,并检查Cloud SQL实例内遗留用户与数据库角色是否需要清理。
Workforce Identity Federation让Cloud SQL更容易接入现有企业身份体系,但它不是单一步骤功能。身份池、属性映射、IAM角色、实例用户、PostgreSQL权限和审计日志都纳入同一套生命周期管理后,外部身份登录才真正比单独维护数据库密码更安全。


