用心打造
VPS知识分享网站

Cloud SQL for PostgreSQL现在支持外部企业身份登录

本文于 2026-09-03 11:23 更新,部分内容具有时效性,如有失效,请留言

Google Cloud在2026年9月2日宣布,Cloud SQL for PostgreSQL支持Workforce Identity Federation身份认证。企业可以让Microsoft Active Directory、Okta等外部身份提供商中的用户登录数据库,不再要求每位员工先建立和维护Google账号。

这项能力也被称为第三方IAM认证。Cloud SQL会在用户登录时验证Workforce Identity凭据和项目级IAM权限,再把通过验证的外部主体映射为PostgreSQL数据库用户。对于已经集中管理企业身份的团队,它可以减少两套账号体系并存带来的维护工作。

企业外部身份通过Workforce Identity Federation登录Cloud SQL for 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权限和审计日志都纳入同一套生命周期管理后,外部身份登录才真正比单独维护数据库密码更安全。

赞(0)
未经允许不得转载;国外VPS测评网 » Cloud SQL for PostgreSQL现在支持外部企业身份登录
分享到