预定义 Cloud SQL IAM 角色
Cloud SQL 提供了一些预定义角色,您可以使用这些角色来为项目成员提供更细粒度的权限。
您授予某项目成员的角色决定了该成员可以执行的操作。项目成员可以是个人、群组或服务账号。 如果您拥有相关权限,可向同一项目成员授予多个角色,还可随时更改授予某项目成员的角色。
权限范围较广的角色拥有权限范围较窄的角色的所有权限。例如,Cloud SQL 编辑者角色不但拥有 Cloud SQL 查看者角色的所有权限,还拥有额外的专有权限。
同样,Cloud SQL Admin 角色不但拥有 Cloud SQL Editor 角色的所有权限,还添加了一些专有权限���
基本角色(Owner、Editor、Viewer)提供对整个 Google Cloud的权限。Cloud SQL 特有的角色仅提供 Cloud SQL 权限,但以下 Google Cloud 权限除外,因为这些是Google Cloud 常规使用所需的权限:
resourcemanager.projects.getresourcemanager.projects.listserviceusage.quotas.getserviceusage.services.getserviceusage.services.use
下表列出了适用于 Cloud SQL 的预定义角色及其所含 Cloud SQL 权限:
| 角色 名称 |
说明 Cloud SQL 权限 |
|---|---|
roles/ownerOwner |
拥有对所有 Google Cloud 资源的完整访问权限和控制权;管理用户访问权限。cloudsql.* |
roles/editorEditor |
拥有对所有 Google Cloud 和 Cloud SQL 资源的读写权限(拥有完全控制权,但不能修改权限)。 除以下权限以外的所有 cloudsql 权限 cloudsql.*.getIamPolicy
cloudsql.*.setIamPolicy |
roles/viewerViewer |
拥有对所有 Google Cloud 资源(包括 Cloud SQL 资源)的只读权限。cloudsql.*.exportcloudsql.*.getcloudsql.*.list |
roles/cloudsql.adminCloud SQL Admin |
对所有 Cloud SQL 资源拥有完全控制权。cloudsql.*recommender.cloudsqlInstanceDiskUsageTrendInsights.*recommender.cloudsqlInstanceOutOfDiskRecommendations.*recommender.cloudsqlInstancePerformanceInsights.*recommender.cloudsqlInstancePerformanceRecommendations.*recommender.cloudsqlInstanceSecurityInsights.*recommender.cloudsqlInstanceSecurityRecommendations.*recommender.cloudsqlUnderProvisionedInstanceRecommendations.*recommender.cloudsqlInstanceOomProbabilityInsights.*recommender.cloudsqlInstanceUnderprovisionedCpuUsageInsights.*recommender.cloudsqlInstanceUnderprovisionedMemoryUsageInsights.*
|
roles/cloudsql.editorCloud SQL Editor |
管理 Cloud SQL 资源。 不能查看或修改权限,也不能修改用户或 sslCert。不能导入数据或从备份恢复实例,也不能克隆、删除或升级实例。不能启动或停止副本。不能删除数据库、副本或备份。cloudsql.instances.addServerCacloudsql.instances.addServerCertificatecloudsql.instances.connectcloudsql.instances.exportcloudsql.instances.failovercloudsql.instances.getcloudsql.instances.listcloudsql.instances.listServerCascloudsql.instances.listServerCertificatescloudsql.instances.migratecloudsql.instances.reencryptcloudsql.instances.restartcloudsql.instances.rotateServerCacloudsql.instances.rotateServerCertificatecloudsql.instances.truncateLogcloudsql.instances.updatecloudsql.databases.createcloudsql.databases.getcloudsql.databases.listcloudsql.databases.updatecloudsql.backupRuns.createcloudsql.backupRuns.exportcloudsql.backupRuns.getcloudsql.backupRuns.listcloudsql.backupRuns.updatecloudsql.schemas.viewcloudsql.sslCerts.getcloudsql.sslCerts.listcloudsql.users.listrecommender.cloudsqlInstanceDiskUsageTrendInsights.getrecommender.cloudsqlInstanceDiskUsageTrendInsights.listrecommender.cloudsqlInstanceDiskUsageTrendInsights.updaterecommender.cloudsqlInstanceOutOfDiskRecommendations.getrecommender.cloudsqlInstanceOutOfDiskRecommendations.listrecommender.cloudsqlInstanceOutOfDiskRecommendations.update
recommender.cloudsqlInstancePerformanceInsights.getrecommender.cloudsqlInstancePerformanceInsights.listrecommender.cloudsqlInstancePerformanceInsights.updaterecommender.cloudsqlInstancePerformanceRecommendations.getrecommender.cloudsqlInstancePerformanceRecommendations.listrecommender.cloudsqlInstancePerformanceRecommendations.updaterecommender.cloudsqlInstanceSecurityInsights.getrecommender.cloudsqlInstanceSecurityInsights.listrecommender.cloudsqlInstanceSecurityInsights.updaterecommender.cloudsqlInstanceSecurityRecommendations.getrecommender.cloudsqlInstanceSecurityRecommendations.listrecommender.cloudsqlInstanceSecurityRecommendations.updaterecommender.cloudsqlUnderProvisionedInstanceRecommendations.getrecommender.cloudsqlUnderProvisionedInstanceRecommendations.listrecommender.cloudsqlUnderProvisionedInstanceRecommendations.updaterecommender.cloudsqlInstanceOomProbabilityInsights.getrecommender.cloudsqlInstanceOomProbabilityInsights.listrecommender.cloudsqlInstanceOomProbabilityInsights.updaterecommender.cloudsqlInstanceUnderprovisionedCpuUsageInsights.getrecommender.cloudsqlInstanceUnderprovisionedCpuUsageInsights.listrecommender.cloudsqlInstanceUnderprovisionedCpuUsageInsights.updaterecommender.cloudsqlInstanceUnderprovisionedMemoryUsageInsights.getrecommender.cloudsqlInstanceUnderprovisionedMemoryUsageInsights.listrecommender.cloudsqlInstanceUnderprovisionedMemoryUsageInsights.update
|
roles/cloudsql.viewerCloud SQL Viewer |
对所有 Cloud SQL 资源拥有只读权限。cloudsql.*.exportcloudsql.*.getcloudsql.*.listcloudsql.instances.listServerCascloudsql.instances.listServerCertificatesrecommender.cloudsqlInstanceOutOfDiskRecommendations.getrecommender.cloudsqlInstanceOutOfDiskRecommendations.listrecommender.cloudsqlInstanceDiskUsageTrendInsights.getrecommender.cloudsqlInstanceDiskUsageTrendInsights.listrecommender.cloudsqlInstancePerformanceInsights.getrecommender.cloudsqlInstancePerformanceInsights.listrecommender.cloudsqlInstancePerformanceRecommendations.getrecommender.cloudsqlInstancePerformanceRecommendations.listrecommender.cloudsqlInstanceSecurityInsights.getrecommender.cloudsqlInstanceSecurityInsights.listrecommender.cloudsqlInstanceSecurityRecommendations.getrecommender.cloudsqlInstanceSecurityRecommendations.listrecommender.cloudsqlUnderProvisionedInstanceRecommendations.getrecommender.cloudsqlUnderProvisionedInstanceRecommendations.listrecommender.cloudsqlInstanceOomProbabilityInsights.getrecommender.cloudsqlInstanceOomProbabilityInsights.listrecommender.cloudsqlInstanceUnderprovisionedCpuUsageInsights.getrecommender.cloudsqlInstanceUnderprovisionedCpuUsageInsights.listrecommender.cloudsqlInstanceUnderprovisionedMemoryUsageInsights.getrecommender.cloudsqlInstanceUnderprovisionedMemoryUsageInsights.list
|
roles/cloudsql.clientCloud SQL Client |
拥有从 App Engine 和 Cloud SQL Auth 代理连接到 Cloud SQL 实例的权限。使用 IP 地址访问实例时不需要此角色。cloudsql.instances.connectcloudsql.instances.get
|
roles/cloudsql.instanceUserCloud SQL Instance User |
此角色可访问 Cloud SQL 实例。cloudsql.instances.getcloudsql.instances.login
|
roles/cloudsql.schemaViewerCloud SQL Schema Viewer |
此角色可授予对 Dataplex Universal Catalog 中的 Cloud SQL 实例架构的访问权限。cloudsql.schemas.view
|
roles/cloudsql.studioUserCloud SQL Studio User |
此角色可授予对 Cloud SQL Studio 的访问权限。cloudsql.databases.listcloudsql.instances.executeSqlcloudsql.instances.getcloudsql.instances.logincloudsql.users.listserviceusage.services.getserviceusage.services.list
|
权限及其对应的角色
下表列出了 Cloud SQL 支持的各项权限、可提供该权限的 Cloud SQL 角色及其基本角色。
| 权限 | Cloud SQL 角色 | 旧版角色 |
|---|---|---|
cloudsql.backupRuns.update |
Cloud SQL Admin Cloud SQL Editor |
编辑者 |
cloudsql.backupRuns.create |
Cloud SQL Admin Cloud SQL Editor |
编辑者 |
cloudsql.backupRuns.delete |
Cloud SQL Admin | 编辑者 |
cloudsql.backupRuns.export |
Cloud SQL Admin Cloud SQL Editor Cloud SQL Viewer |
不适用 |
cloudsql.backupRuns.get |
Cloud SQL Admin Cloud SQL Editor Cloud SQL Viewer |
查看者 |
cloudsql.backupRuns.list |
Cloud SQL Admin Cloud SQL Editor Cloud SQL Viewer |
查看者 |
cloudsql.databases.create |
Cloud SQL Admin Cloud SQL Editor |
编辑者 |
cloudsql.databases.delete |
Cloud SQL Admin | 编辑者 |
cloudsql.databases.get |
Cloud SQL Admin Cloud SQL Editor Cloud SQL Viewer |
查看者 |
cloudsql.databases.getIamPolicy |
Cloud SQL Admin | 所有者 |
cloudsql.databases.list |
Cloud SQL Admin Cloud SQL Editor Cloud SQL Studio User Cloud SQL Viewer |
查看者 |
cloudsql.databases.setIamPolicy |
Cloud SQL Admin | 所有者 |
cloudsql.databases.update |
Cloud SQL Admin Cloud SQL Editor |
编辑者 |
cloudsql.instances.addServerCa |
Cloud SQL Admin Cloud SQL Editor |
编辑者 |
cloudsql.instances.addServerCertificate |
Cloud SQL Admin Cloud SQL Editor |
编辑者 |
cloudsql.instances.clone |
Cloud SQL Admin | 编辑者 |
cloudsql.instances.connect |
Cloud SQL Admin Cloud SQL Client Cloud SQL Editor |
编辑者 |
cloudsql.instances.create |
Cloud SQL Admin | 编辑者 |
cloudsql.instances.delete |
Cloud SQL Admin | 编辑者 |
cloudsql.instances.demoteMaster |
Cloud SQL Admin | 编辑者 |
cloudsql.instances.executeSql |
Cloud SQL Admin Cloud SQL Studio User |
所有者 |
cloudsql.instances.export |
Cloud SQL Admin Cloud SQL Editor Cloud SQL Viewer |
查看者 |
cloudsql.instances.failover |
Cloud SQL Admin Cloud SQL Editor |
编辑者 |
cloudsql.instances.get |
Cloud SQL Admin Cloud SQL Client Cloud SQL Editor Cloud SQL Studio User Cloud SQL Viewer |
查看者 |
cloudsql.instances.getIamPolicy |
Cloud SQL Admin | 所有者 |
cloudsql.instances.import |
Cloud SQL Admin | 编辑者 |
cloudsql.instances.list |
Cloud SQL Admin Cloud SQL Editor Cloud SQL Viewer |
查看者 |
cloudsql.instances.listServerCas |
Cloud SQL Admin Cloud SQL Editor Cloud SQL Viewer |
查看者 |
cloudsql.instances.listServerCertificates |
Cloud SQL Admin Cloud SQL Editor Cloud SQL Viewer |
查看者 |
cloudsql.instances.promoteReplica |
Cloud SQL Admin | 编辑者 |
cloudsql.instances.resetSslConfig |
Cloud SQL Admin | 编辑者 |
cloudsql.instances.reencrypt |
Cloud SQL Admin Cloud SQL Editor |
编辑者 |
cloudsql.instances.restart |
Cloud SQL Admin Cloud SQL Editor |
编辑者 |
cloudsql.instances.restoreBackup |
Cloud SQL Admin | 编辑者 |
cloudsql.instance.rotateServerCa |
Cloud SQL Admin Cloud SQL Editor |
编辑者 |
cloudsql.instance.rotateServerCertificate |
Cloud SQL Admin Cloud SQL Editor |
编辑者 |
cloudsql.instances.setIamPolicy |
Cloud SQL Admin | 所有者 |
cloudsql.instances.startReplica |
Cloud SQL Admin | 编辑者 |
cloudsql.instances.stopReplica |
Cloud SQL Admin | 编辑者 |
cloudsql.instances.truncateLog |
Cloud SQL Admin Cloud SQL Editor |
编辑者 |
cloudsql.instances.update |
Cloud SQL Admin Cloud SQL Editor |
编辑者 |
cloudsql.schemas.view |
Cloud SQL Admin Cloud SQL Editor Cloud SQL Schema Viewer |
查看者 |
cloudsql.sslCerts.create |
Cloud SQL Admin | 编辑者 |
cloudsql.sslCerts.delete |
Cloud SQL Admin | 编辑者 |
cloudsql.sslCerts.get |
Cloud SQL Admin Cloud SQL Editor Cloud SQL Viewer |
查看者 |
cloudsql.sslCerts.list |
Cloud SQL Admin Cloud SQL Editor Cloud SQL Viewer |
查看者 |
cloudsql.users.create |
Cloud SQL Admin | 编辑者 |
cloudsql.users.delete |
Cloud SQL Admin | 编辑者 |
cloudsql.users.list |
Cloud SQL Admin Cloud SQL Editor Cloud SQL Studio User Cloud SQL Viewer |
查看者 |
cloudsql.users.update |
Cloud SQL Admin | 编辑者 |
recommender.cloudsqlInstanceDiskUsageTrendInsights.get |
Cloud SQL Admin Cloud SQL Editor Cloud SQL Viewer |
不适用 |
recommender.cloudsqlInstanceDiskUsageTrendInsights.list |
Cloud SQL Admin Cloud SQL Editor Cloud SQL Viewer |
不适用 |
recommender.cloudsqlInstanceDiskUsageTrendInsights.update |
Cloud SQL Admin Cloud SQL Editor |
不适用 |
recommender.cloudsqlInstanceOutOfDiskRecommendations.get |
Cloud SQL Admin Cloud SQL Editor Cloud SQL Viewer |
不适用 |
recommender.cloudsqlInstanceOutOfDiskRecommendations.list |
Cloud SQL Admin Cloud SQL Editor Cloud SQL Viewer |
不适用 |
recommender.cloudsqlInstanceOutOfDiskRecommendations.update |
Cloud SQL Admin Cloud SQL Editor |
不适用 |
recommender.cloudsqlInstancePerformanceInsights.get
|
Cloud SQL Admin Cloud SQL Editor Cloud SQL Viewer |
不适用 |
recommender.cloudsqlInstancePerformanceInsights.list
|
Cloud SQL Admin Cloud SQL Editor Cloud SQL Viewer |
不适用 |
recommender.cloudsqlInstancePerformanceInsights.update
|
Cloud SQL Admin Cloud SQL Editor |
不适用 |
recommender.cloudsqlInstancePerformanceRecommendations.get
|
Cloud SQL Admin Cloud SQL Editor Cloud SQL Viewer |
不适用 |
recommender.cloudsqlInstancePerformanceRecommendations.list |
Cloud SQL Admin Cloud SQL Editor Cloud SQL Viewer |
不适用 |
recommender.cloudsqlInstancePerformanceRecommendations.update |
Cloud SQL Admin Cloud SQL Editor |
不适用 |
recommender.cloudsqlInstanceOomProbabilityInsights.get |
Cloud SQL Admin Cloud SQL Editor Cloud SQL Viewer |
不适用 |
recommender.cloudsqlInstanceOomProbabilityInsights.list |
Cloud SQL Admin Cloud SQL Editor Cloud SQL Viewer |
不适用 |
recommender.cloudsqlInstanceOomProbabilityInsights.update |
Cloud SQL Admin Cloud SQL Editor |
不适用 |
recommender.cloudsqlInstanceSecurityInsights.get
|
Cloud SQL Admin Cloud SQL Editor Cloud SQL Viewer |
不适用 |
recommender.cloudsqlInstanceSecurityInsights.list
|
Cloud SQL Admin Cloud SQL Editor Cloud SQL Viewer |
不适用 |
recommender.cloudsqlInstanceSecurityInsights.update
|
Cloud SQL Admin Cloud SQL Editor |
不适用 |
recommender.cloudsqlInstanceSecurityRecommendations.get
|
Cloud SQL Admin Cloud SQL Editor Cloud SQL Viewer |
不适用 |
recommender.cloudsqlInstanceSecurityRecommendations.list |
Cloud SQL Admin Cloud SQL Editor Cloud SQL Viewer |
不适用 |
recommender.cloudsqlInstanceSecurityRecommendations.update |
Cloud SQL Admin Cloud SQL Editor |
不适用 |
recommender.cloudsqlInstanceUnderprovisionedCpuUsageInsights.get |
Cloud SQL Admin Cloud SQL Editor Cloud SQL Viewer |
不适用 |
recommender.cloudsqlInstanceUnderprovisionedCpuUsageInsights.list |
Cloud SQL Admin Cloud SQL Editor Cloud SQL Viewer |
不适用 |
recommender.cloudsqlInstanceUnderprovisionedCpuUsageInsights.update |
Cloud SQL Admin Cloud SQL Editor |
不适用 |
recommender.cloudsqlInstanceUnderprovisionedMemoryUsageInsights.get |
Cloud SQL Admin Cloud SQL Editor Cloud SQL Viewer |
不适用 |
recommender.cloudsqlInstanceUnderprovisionedMemoryUsageInsights.list |
Cloud SQL Admin Cloud SQL Editor Cloud SQL Viewer |
不适用 |
recommender.cloudsqlInstanceUnderprovisionedMemoryUsageInsights.update |
Cloud SQL Admin Cloud SQL Editor |
不适用 |
recommender.cloudsqlUnderProvisionedInstanceRecommendations.get |
Cloud SQL Admin Cloud SQL Editor Cloud SQL Viewer |
不适用 |
recommender.cloudsqlUnderProvisionedInstanceRecommendations.list |
Cloud SQL Admin Cloud SQL Editor Cloud SQL Viewer |
不适用 |
recommender.cloudsqlUnderProvisionedInstanceRecommendations.update |
Cloud SQL Admin Cloud SQL Editor |
不适用 |
自定义角色
如果预定义角色不能满足您的独特业务需求,您可以使用指定的权限定义自己的自定义角色。为此,IAM 提供了自定义角色。
为 Cloud SQL 创建自定义角色时,如果要添加 cloudsql.instances.list 或 cloudsql.instances.get,请务必同时添加这两项权限。否则, Google Cloud 控制台将无法正常处理 Cloud SQL。