Funciones de Cloud SQL

Roles predefinidos de IAM en Cloud SQL

Cloud SQL brinda algunas funciones predefinidas que puedes usar para proporcionar permisos más detallados a los miembros del proyecto.

La función que otorgas a un miembro del proyecto controla qué acciones puede realizar. Los miembros del proyecto pueden ser personas, grupos o cuentas de servicio. Puedes otorgar múltiples funciones a un mismo miembro del proyecto y cambiarlas en cualquier momento, siempre que tengas los permisos para hacerlo.

Las funciones más amplias incluyen las más específicas. Por ejemplo, la función de Editor de Cloud SQL incluye todos los permisos de la función del Lector, junto con los permisos adicionales de la función de Editor.

Del mismo modo, la función de Administrador de Cloud SQL incluye todos los permisos de la función de Editor de Cloud SQL, junto con sus propios permisos adicionales.

Las funciones básicas (Propietario, Editor y Visualizador) proporcionan permisos en Google Cloud. Las funciones específicas de Cloud SQL solo proporcionan permisos en Cloud SQL, excepto los siguientes permisos de Google Cloud, que son necesarios para el uso general de Google Cloud:

  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.use

La siguiente tabla enumera las funciones predefinidas disponibles para Cloud SQL, junto con sus permisos de Cloud SQL:

Nombre
de la función
Descripción
Permisos de Cloud SQL
roles/owner
Propietario
Acceso y control totales para todos los recursos de Google Cloud; administración del acceso de los usuarios

cloudsql.*
roles/editor
Editor
Acceso de lectura y escritura a todos los recursos de Google Cloud y Cloud SQL (control total, excepto para modificar permisos)

Todos los permisos de cloudsql, excepto
cloudsql.*.getIamPolicy cloudsql.*.setIamPolicy
roles/viewer
Visualizador
Acceso de solo lectura a todos los recursos de Google Cloud, incluidos los recursos de Cloud SQL

cloudsql.*.export
cloudsql.*.get
cloudsql.*.list
roles/cloudsql.admin
Administrador de Cloud SQL
Control total de todos los recursos de Cloud SQL

cloudsql.*
recommender.cloudsqlInstanceDiskUsageTrendInsights.*
recommender.cloudsqlInstanceOutOfDiskRecommendations.*
recommender.cloudsqlInstancePerformanceInsights.*
recommender.cloudsqlInstancePerformanceRecommendations.*
recommender.cloudsqlUnderProvisionedInstanceRecommendations.*
recommender.cloudsqlInstanceOomProbabilityInsights.*
recommender.cloudsqlInstanceUnderprovisionedCpuUsageInsights.*
recommender.cloudsqlInstanceUnderprovisionedMemoryUsageInsights.*
roles/cloudsql.editor
Editor de Cloud SQL
Administra los recursos de Cloud SQL. sin capacidad para ver o modificar permisos, ni modificar usuarios o sslCerts; sin capacidad de importar datos o restablecer desde una copia de seguridad, ni de clonar, borrar o ascender instancias; Sin capacidad de iniciar o detener réplicas. sin capacidad de borrar bases de datos, réplicas o copias de seguridad

cloudsql.instances.addServerCa
cloudsql.instances.connect
cloudsql.instances.export
cloudsql.instances.failover
cloudsql.instances.get
cloudsql.instances.list
cloudsql.instances.listServerCas
cloudsql.instances.migrate
cloudsql.instances.reencrypt
cloudsql.instances.restart
cloudsql.instances.rotateServerCa
cloudsql.instances.truncateLog
cloudsql.instances.update
cloudsql.databases.create
cloudsql.databases.get
cloudsql.databases.list
cloudsql.databases.update
cloudsql.backupRuns.create
cloudsql.backupRuns.get
cloudsql.backupRuns.list
cloudsql.sslCerts.get
cloudsql.sslCerts.list
cloudsql.users.list
recommender.cloudsqlInstanceDiskUsageTrendInsights.get
recommender.cloudsqlInstanceDiskUsageTrendInsights.list
recommender.cloudsqlInstanceDiskUsageTrendInsights.update
recommender.cloudsqlInstanceOutOfDiskRecommendations.get
recommender.cloudsqlInstanceOutOfDiskRecommendations.list
recommender.cloudsqlInstanceOutOfDiskRecommendations.update recommender.cloudsqlInstancePerformanceInsights.get
recommender.cloudsqlInstancePerformanceInsights.list
recommender.cloudsqlInstancePerformanceInsights.update
recommender.cloudsqlInstancePerformanceRecommendations.get
recommender.cloudsqlInstancePerformanceRecommendations.list
recommender.cloudsqlInstancePerformanceRecommendations.update
recommender.cloudsqlUnderProvisionedInstanceRecommendations.get
recommender.cloudsqlUnderProvisionedInstanceRecommendations.list
recommender.cloudsqlUnderProvisionedInstanceRecommendations.update
recommender.cloudsqlInstanceOomProbabilityInsights.get
recommender.cloudsqlInstanceOomProbabilityInsights.list
recommender.cloudsqlInstanceOomProbabilityInsights.update
recommender.cloudsqlInstanceUnderprovisionedCpuUsageInsights.get
recommender.cloudsqlInstanceUnderprovisionedCpuUsageInsights.list
recommender.cloudsqlInstanceUnderprovisionedCpuUsageInsights.update
recommender.cloudsqlInstanceUnderprovisionedMemoryUsageInsights.get
recommender.cloudsqlInstanceUnderprovisionedMemoryUsageInsights.list
recommender.cloudsqlInstanceUnderprovisionedMemoryUsageInsights.update
roles/cloudsql.viewer
Lector de Cloud SQL
Acceso de solo lectura a todos los recursos de Cloud SQL

cloudsql.*.export
cloudsql.*.get
cloudsql.*.list
cloudsql.instances.listServerCas
recommender.cloudsqlInstanceOutOfDiskRecommendations.get
recommender.cloudsqlInstanceOutOfDiskRecommendations.list
recommender.cloudsqlInstanceDiskUsageTrendInsights.get
recommender.cloudsqlInstanceDiskUsageTrendInsights.list
recommender.cloudsqlInstancePerformanceInsights.get
recommender.cloudsqlInstancePerformanceInsights.list
recommender.cloudsqlInstancePerformanceRecommendations.get
recommender.cloudsqlInstancePerformanceRecommendations.list
recommender.cloudsqlUnderProvisionedInstanceRecommendations.get
recommender.cloudsqlUnderProvisionedInstanceRecommendations.list
recommender.cloudsqlInstanceOomProbabilityInsights.get
recommender.cloudsqlInstanceOomProbabilityInsights.list
recommender.cloudsqlInstanceUnderprovisionedCpuUsageInsights.get
recommender.cloudsqlInstanceUnderprovisionedCpuUsageInsights.list
recommender.cloudsqlInstanceUnderprovisionedMemoryUsageInsights.get
recommender.cloudsqlInstanceUnderprovisionedMemoryUsageInsights.list

roles/cloudsql.client
Cliente de Cloud SQL
Acceso de conectividad a las instancias de Cloud SQL desde App Engine y el proxy de Cloud SQL Auth. (no es necesario para acceder a una instancia que usa direcciones IP)

cloudsql.instances.connect
cloudsql.instances.get
roles/cloudsql.instanceUser
Usuario de instancia de Cloud SQL
Función que permite el acceso a una instancia de Cloud SQL

cloudsql.instances.get
cloudsql.instances.login

Permisos y sus funciones

En la siguiente tabla, se describe cada permiso que admite Cloud SQL, las funciones de Cloud SQL que lo incluyen y su función básica.

Permiso Funciones de Cloud SQL Función heredada
cloudsql.backupRuns.create Administrador de Cloud SQL
Editor de Cloud SQL
Editor
cloudsql.backupRuns.delete Administrador de Cloud SQL Editor
cloudsql.backupRuns.get Administrador de Cloud SQL
Editor de Cloud SQL
Visualizador de Cloud SQL
Visualizador
cloudsql.backupRuns.list Administrador de Cloud SQL
Editor de Cloud SQL
Visualizador de Cloud SQL
Visualizador
cloudsql.databases.create Administrador de Cloud SQL
Editor de Cloud SQL
Editor
cloudsql.databases.delete Administrador de Cloud SQL Editor
cloudsql.databases.get Administrador de Cloud SQL
Editor de Cloud SQL
Visualizador de Cloud SQL
Visualizador
cloudsql.databases.getIamPolicy Administrador de Cloud SQL Propietario
cloudsql.databases.list Administrador de Cloud SQL
Editor de Cloud SQL
Visualizador de Cloud SQL
Visualizador
cloudsql.databases.setIamPolicy Administrador de Cloud SQL Propietario
cloudsql.databases.update Administrador de Cloud SQL
Editor de Cloud SQL
Editor
cloudsql.instances.addServerCa Administrador de Cloud SQL
Editor de Cloud SQL
Editor
cloudsql.instances.clone Administrador de Cloud SQL Editor
cloudsql.instances.connect Administrador de Cloud SQL
Cliente de Cloud SQL
Editor de Cloud SQL
Editor
cloudsql.instances.create Administrador de Cloud SQL Editor
cloudsql.instances.delete Administrador de Cloud SQL Editor
cloudsql.instances.demoteMaster Administrador de Cloud SQL Editor
cloudsql.instances.executeSql Administrador de Cloud SQL Propietario
cloudsql.instances.export Administrador de Cloud SQL
Editor de Cloud SQL
Visualizador de Cloud SQL
Visualizador
cloudsql.instances.failover Administrador de Cloud SQL
Editor de Cloud SQL
Editor
cloudsql.instances.get Administrador de Cloud SQL
Cliente de Cloud SQL
Editor de Cloud SQL
Visualizador de Cloud SQL
Visualizador
cloudsql.instances.getIamPolicy Administrador de Cloud SQL Propietario
cloudsql.instances.import Administrador de Cloud SQL Editor
cloudsql.instances.list Administrador de Cloud SQL
Editor de Cloud SQL
Visualizador de Cloud SQL
Visualizador
cloudsql.instances.listServerCas Visualizador de Cloud SQL Visualizador
cloudsql.instances.promoteReplica Administrador de Cloud SQL Editor
cloudsql.instances.resetSslConfig Administrador de Cloud SQL Editor
cloudsql.instances.reencrypt Administrador de Cloud SQL
Editor de Cloud SQL
Editor
cloudsql.instances.restart Administrador de Cloud SQL
Editor de Cloud SQL
Editor
cloudsql.instances.restoreBackup Administrador de Cloud SQL Editor
cloudsql.instance.rotateServerCa Administrador de Cloud SQL
Editor de Cloud SQL
Editor
cloudsql.instances.setIamPolicy Administrador de Cloud SQL Propietario
cloudsql.instances.startReplica Administrador de Cloud SQL Editor
cloudsql.instances.stopReplica Administrador de Cloud SQL Editor
cloudsql.instances.truncateLog Administrador de Cloud SQL
Editor de Cloud SQL
Editor
cloudsql.instances.update Administrador de Cloud SQL
Editor de Cloud SQL
Editor
cloudsql.sslCerts.create Administrador de Cloud SQL Editor
cloudsql.sslCerts.delete Administrador de Cloud SQL Editor
cloudsql.sslCerts.get Administrador de Cloud SQL
Editor de Cloud SQL
Visualizador de Cloud SQL
Visualizador
cloudsql.sslCerts.list Administrador de Cloud SQL
Editor de Cloud SQL
Visualizador de Cloud SQL
Visualizador
cloudsql.users.create Administrador de Cloud SQL Editor
cloudsql.users.delete Administrador de Cloud SQL Editor
cloudsql.users.list Administrador de Cloud SQL
Editor de Cloud SQL
Visualizador de Cloud SQL
Visualizador
cloudsql.users.update Administrador de Cloud SQL Editor
recommender.cloudsqlInstanceDiskUsageTrendInsights.get Administrador de Cloud SQL
Editor de Cloud SQL
Visualizador de Cloud SQL
N/A
recommender.cloudsqlInstanceDiskUsageTrendInsights.list Administrador de Cloud SQL
Editor de Cloud SQL
Visualizador de Cloud SQL
N/A
recommender.cloudsqlInstanceDiskUsageTrendInsights.update Administrador de Cloud SQL
Editor de Cloud SQL
N/A
recommender.cloudsqlInstanceOutOfDiskRecommendations.get Administrador de Cloud SQL
Editor de Cloud SQL
Visualizador de Cloud SQL
N/A
recommender.cloudsqlInstanceOutOfDiskRecommendations.list Administrador de Cloud SQL
Editor de Cloud SQL
Visualizador de Cloud SQL
N/A
recommender.cloudsqlInstanceOutOfDiskRecommendations.update Administrador de Cloud SQL
Editor de Cloud SQL
N/A
recommender.cloudsqlInstancePerformanceInsights.get Administrador de Cloud SQL
Editor de Cloud SQL
Visualizador de Cloud SQL
N/A
recommender.cloudsqlInstancePerformanceInsights.list Administrador de Cloud SQL
Editor de Cloud SQL
Visualizador de Cloud SQL
N/A
recommender.cloudsqlInstancePerformanceInsights.update Administrador de Cloud SQL
Editor de Cloud SQL
N/A
recommender.cloudsqlInstancePerformanceRecommendations.get Administrador de Cloud SQL
Editor de Cloud SQL
Visualizador de Cloud SQL
N/A
recommender.cloudsqlInstancePerformanceRecommendations.list Administrador de Cloud SQL
Editor de Cloud SQL
Visualizador de Cloud SQL
N/A
recommender.cloudsqlInstancePerformanceRecommendations.update Administrador de Cloud SQL
Editor de Cloud SQL
N/A
recommender.cloudsqlInstanceOomProbabilityInsights.get Administrador de Cloud SQL
Editor de Cloud SQL
Visualizador de Cloud SQL
N/A
recommender.cloudsqlInstanceOomProbabilityInsights.list Administrador de Cloud SQL
Editor de Cloud SQL
Visualizador de Cloud SQL
N/A
recommender.cloudsqlInstanceOomProbabilityInsights.update Administrador de Cloud SQL
Editor de Cloud SQL
N/A
recommender.cloudsqlInstanceUnderprovisionedCpuUsageInsights.get Administrador de Cloud SQL
Editor de Cloud SQL
Visualizador de Cloud SQL
N/A
recommender.cloudsqlInstanceUnderprovisionedCpuUsageInsights.list Administrador de Cloud SQL
Editor de Cloud SQL
Visualizador de Cloud SQL
N/A
recommender.cloudsqlInstanceUnderprovisionedCpuUsageInsights.update Administrador de Cloud SQL
Editor de Cloud SQL
N/A
recommender.cloudsqlInstanceUnderprovisionedMemoryUsageInsights.get Administrador de Cloud SQL
Editor de Cloud SQL
Visualizador de Cloud SQL
N/A
recommender.cloudsqlInstanceUnderprovisionedMemoryUsageInsights.list Administrador de Cloud SQL
Editor de Cloud SQL
Visualizador de Cloud SQL
N/A
recommender.cloudsqlInstanceUnderprovisionedMemoryUsageInsights.update Administrador de Cloud SQL
Editor de Cloud SQL
N/A
recommender.cloudsqlUnderProvisionedInstanceRecommendations.get Administrador de Cloud SQL
Editor de Cloud SQL
Visualizador de Cloud SQL
N/A
recommender.cloudsqlUnderProvisionedInstanceRecommendations.list Administrador de Cloud SQL
Editor de Cloud SQL
Visualizador de Cloud SQL
N/A
recommender.cloudsqlUnderProvisionedInstanceRecommendations.update Administrador de Cloud SQL
Editor de Cloud SQL
N/A

Funciones personalizadas

Si las funciones predefinidas no responden a tus requisitos comerciales particulares, puedes definir tus propias funciones personalizadas con los permisos que especifiques. Para ello, IAM ofrece funciones personalizadas.

Cuando crees funciones personalizadas para Cloud SQL, asegúrate de incluir cloudsql.instances.list y cloudsql.instances.get. De lo contrario, la consola de Google Cloud no funcionará de forma correcta con Cloud SQL.