En esta página, se describen las funciones y permisos de Administración de identidades y accesos (IAM) y permisos que usa Cloud Monitoring. Esta página está dirigida a los administradores que configuran y otorgan funciones y permisos.
Controles del servicio de VPC
Para tener más control sobre el acceso a los datos de supervisión, usa los Controles del servicio de VPC, además de IAM.
Los Controles del servicio de VPC brindan seguridad adicional para Cloud Monitoring a fin de mitigar el riesgo de robo de datos. Con los Controles del servicio de VPC, puedes agregar un lugar de trabajo a un perímetro de servicio que proteja los recursos y recursos de Cloud Monitoring de solicitudes que se originan fuera del perímetro.
Para obtener más información sobre los perímetros de servicio, consulta la documentación de configuración del perímetro de servicio de VPC.
Para obtener información sobre la compatibilidad de Monitoring con los Controles del servicio de VPC, incluidas las limitaciones conocidas, consulta la documentación de los Controles del servicio de VPC de Monitoring.
Descripción general de IAM de Monitoring
Para usar Monitoring, debes tener los permisos de IAM adecuados.
En general, cada método REST en una API tiene un permiso asociado y debes tener el permiso para usar el método correspondiente. Los permisos no se otorgan directamente a los usuarios. En cambio, los permisos se otorgan indirectamente a través de funciones, que agrupan varios permisos para facilitar su administración. Si deseas obtener más información sobre estos conceptos, consulta Conceptos relacionados con la administración del acceso.
Las funciones para combinaciones comunes de permisos están predefinidas, pero también puedes crear tus propias combinaciones de permisos si creas funciones personalizadas de IAM.
Funciones predefinidas
Las siguientes funciones de IAM están predefinidas por Cloud Monitoring. Estas otorgan permisos solo para Monitoring.
Monitoring
Las siguientes funciones otorgan permisos generales para Monitoring:
ID de la función Nombre de la función |
Descripción |
---|---|
roles/monitoring.viewer Visualizador de Monitoring |
Te da acceso de solo lectura a Monitoring en Google Cloud Console y la API. |
roles/monitoring.editor Editor de Monitoring |
Otorga acceso de lectura y escritura a Monitoring en Google Cloud Console y la API, y te permite crear un lugar de trabajo. |
roles/monitoring.admin Administrador de Monitoring |
Otorga acceso completo a Monitoring en Google Cloud Console y te permite crear un lugar de trabajo. |
Las cuentas de servicio usan la siguiente función para el acceso de solo escritura:
ID de la función Nombre de la función |
Descripción |
---|---|
roles/monitoring.metricWriter Escritor de métricas de Monitoring |
Permite escribir datos de supervisión en un lugar de trabajo; no permite el acceso a Monitoring en Google Cloud Console. Para cuentas de servicio. |
Políticas de alertas
Las siguientes funciones otorgan permisos solo para políticas de alertas:
ID de la función Nombre de la función |
Descripción |
---|---|
roles/monitoring.alertPolicyViewer Visualizador de políticas de alertas de Monitoring |
Otorga acceso de solo lectura a las políticas de alertas |
roles/monitoring.alertPolicyEditor Editor de políticas de alertas de Monitoring |
Otorga acceso de lectura y escritura a las políticas de alertas |
Paneles
Las siguientes funciones otorgan permisos solo para los paneles:
ID de la función Nombre de la función |
Descripción |
---|---|
roles/monitoring.dashboardViewer Visualizador de configuración del panel de Monitoring |
Otorga acceso de solo lectura a la configuración del panel |
roles/monitoring.dashboardEditor Editor de configuración del panel de Monitoring |
Otorga acceso de lectura y escritura a la configuración del panel |
Canales de notificación
Las siguientes funciones otorgan permisos solo para los canales de notificaciones:
ID de la función Nombre de la función |
Descripción |
---|---|
roles/monitoring.notificationChannelViewer Visualizador de canales de notificaciones de Monitoring |
Otorga acceso de solo lectura a los canales de notificaciones |
roles/monitoring.notificationChannelEditor Editor de canales de notificaciones de Monitoring |
Otorga acceso de lectura y escritura a los canales de notificaciones. |
Supervisión de servicios
Las siguientes funciones otorgan permisos para administrar servicios:
ID de la función Nombre de la función |
Descripción |
---|---|
roles/monitoring.servicesViewer Visualizador de servicios de Monitoring |
Otorga acceso de solo lectura a los servicios |
roles/monitoring.servicesEditor Editor de servicios de Monitoring |
Otorga acceso de lectura y escritura a los servicios |
Para obtener más información sobre la supervisión de servicios, consulta Supervisión de SLO.
Configuración de verificaciones de tiempo de actividad
Las siguientes funciones otorgan permisos solo para la configuración de verificaciones de tiempo de actividad:
ID de la función Nombre de la función |
Descripción |
---|---|
roles/monitoring.uptimeCheckConfigViewer Visualizador de configuración de verificaciones de tiempo de actividad de Monitoring |
Otorga acceso de solo lectura a la configuración de verificaciones de tiempo de actividad |
roles/monitoring.uptimeCheckConfigEditor Editor de configuración de verificaciones de tiempo de actividad de Monitoring |
Otorga acceso de lectura y escritura a la configuración de verificaciones del tiempo de actividad |
Configuración de los lugares de trabajo
Para crear o administrar un lugar de trabajo, debes usar Google Cloud Console. A fin de obtener información sobre las funciones necesarias para crear un lugar de trabajo, consulta las funciones predefinidas de Monitoring.
Google Cloud
Las siguientes funciones otorgan permisos para muchos servicios y recursos en Google Cloud, incluido Monitoring:
ID de la función Nombre de la función |
Descripción |
---|---|
roles/viewer Visualizador del proyecto |
Te da acceso de solo lectura a Monitoring en Google Cloud Console y la API. |
roles/editor Editor del proyecto |
Te otorga acceso de lectura/escritura a Monitoring en Google Cloud Console y la API y te permite usar un lugar de trabajo existente. No puedes crear un lugar de trabajo con esta función. |
roles/owner Propietario del proyecto |
Otorga acceso completo a Monitoring en Google Cloud Console y a la API, y te permite crear un lugar de trabajo. |
Funciones personalizadas
También puedes crear tus propias funciones personalizadas que contengan listas de permisos. Para obtener más detalles acerca de las funciones y los permisos, ve a Permisos y funciones y Funciones personalizadas en esta página.
Permisos y funciones
En esta sección, se enumeran los permisos y funciones de IAM que se aplican a Monitoring.
Permisos de la API
Cada método API de Monitoring requiere un permiso de IAM específico, como se muestra en la siguiente tabla.
Método de la API de Monitoring | Permiso | Tipo de recurso |
---|---|---|
projects.alertPolicies.create |
monitoring.alertPolicies.create |
proyecto1 |
projects.alertPolicies.delete |
monitoring.alertPolicies.delete |
AlertPolicy |
projects.alertPolicies.get |
monitoring.alertPolicies.get |
AlertPolicy |
projects.alertPolicies.list |
monitoring.alertPolicies.list |
proyecto1 |
projects.alertPolicies.patch |
monitoring.alertPolicies.update |
AlertPolicy |
projects.dashboards.create |
monitoring.dashboards.create |
proyecto1 |
projects.dashboards.delete |
monitoring.dashboards.delete |
proyecto1 |
projects.dashboards.get |
monitoring.dashboards.get |
proyecto1 |
projects.dashboards.list |
monitoring.dashboards.list |
proyecto1 |
projects.dashboards.patch |
monitoring.dashboards.update |
proyecto1 |
projects.groups.create |
monitoring.groups.create |
proyecto1 |
projects.groups.delete |
monitoring.groups.delete |
Group |
projects.groups.get |
monitoring.groups.get |
Group |
projects.groups.list |
monitoring.groups.list |
proyecto1 |
projects.groups.update |
monitoring.groups.update |
Group |
projects.groups.members.list |
monitoring.groups.get |
Group |
projects.metricDescriptors.create |
monitoring.metricDescriptors.create |
proyecto |
projects.metricDescriptors.delete |
monitoring.metricDescriptors.delete |
MetricDescriptor |
projects.metricDescriptors.get |
monitoring.metricDescriptors.get |
MetricDescriptor |
projects.metricDescriptors.list |
monitoring.metricDescriptors.list |
proyecto |
projects.monitoredResourceDescriptors.get |
monitoring.monitoredResourceDescriptors.get |
MonitoredResourceDescriptor |
projects.monitoredResourceDescriptors.list |
monitoring.monitoredResourceDescriptors.list |
proyecto |
projects.notificationChannelDescriptors.get |
monitoring.notificationChannelDescriptors.get |
NotificationChannelDescriptor |
projects.notificationChannelDescriptors.list |
monitoring.notificationChannelDescriptors.list |
proyecto1 |
projects.notificationChannels.create |
monitoring.notificationChannels.create |
proyecto1 |
projects.notificationChannels.delete |
monitoring.notificationChannels.delete |
NotificationChannel |
projects.notificationChannels.get |
monitoring.notificationChannels.get |
NotificationChannel |
projects.notificationChannels.getVerificationCode |
monitoring.notificationChannels.getVerificationCode |
NotificationChannel |
projects.notificationChannels.list |
monitoring.notificationChannels.list |
proyecto1 |
projects.notificationChannels.patch |
monitoring.notificationChannels.update |
NotificationChannel |
projects.notificationChannels.sendVerificationCode |
monitoring.notificationChannels.sendVerificationCode |
NotificationChannel |
projects.notificationChannels.verify |
monitoring.notificationChannels.verify |
NotificationChannel |
projects.services.create |
monitoring.services.create |
proyecto1 |
projects.services.delete |
monitoring.services.delete |
Service |
projects.services.get |
monitoring.services.get |
Service |
projects.services.list |
monitoring.services.list |
proyecto1 |
projects.services.patch |
monitoring.services.update |
Service |
projects.services.serviceLevelObjectives.create |
monitoring.slos.create |
proyecto1 |
projects.services.serviceLevelObjectives.delete |
monitoring.slos.delete |
ServiceLevelObjective |
projects.services.serviceLevelObjectives.get |
monitoring.slos.get |
ServiceLevelObjective |
projects.services.serviceLevelObjectives.list |
monitoring.slos.list |
proyecto1 |
projects.services.serviceLevelObjectives.patch |
monitoring.slos.update |
ServiceLevelObjective |
projects.timeSeries.create |
monitoring.timeSeries.create |
proyecto |
projects.timeSeries.list |
monitoring.timeSeries.list |
proyecto |
projects.timeSeries.query |
monitoring.timeSeries.list |
project |
projects.uptimeCheckConfigs.create |
monitoring.uptimeCheckConfigs.create |
UptimeCheckConfig |
projects.uptimeCheckConfigs.delete |
monitoring.uptimeCheckConfigs.delete |
UptimeCheckConfig |
projects.uptimeCheckConfigs.get |
monitoring.uptimeCheckConfigs.get |
UptimeCheckConfig |
projects.uptimeCheckConfigs.list |
monitoring.uptimeCheckConfigs.list |
UptimeCheckConfig |
projects.uptimeCheckConfigs.patch |
monitoring.uptimeCheckConfigs.update |
UptimeCheckConfig |
1 El proyecto debe estar en un lugar de trabajo.
Permisos de Console para Monitoring
Cada función de Monitoring en Google Cloud Console requiere que tengas el permiso para la API que se usa con el fin de implementarla. Por ejemplo, la capacidad de explorar grupos requiere que tengas permiso para los métodos list
y get
aplicables a grupos y miembros del grupo.
Es posible que pierdas la funcionalidad si se revocan los permisos necesarios.
En la siguiente tabla, se enumeran los permisos necesarios para usar Monitoring en Google Cloud Console:
activity | Permisos necesarios | Para el tipo de recurso |
---|---|---|
Acceso completo de solo lectura | El conjunto de permisos incluidos en la función roles/monitoring.viewer |
proyecto1 |
Consola de acceso de lectura y escritura | El conjunto de permisos incluidos en la función roles/monitoring.editor |
proyecto1 |
Acceso completo a la consola | El conjunto de permisos incluidos en la función roles/monitoring.admin |
proyecto1 |
1 El proyecto debe estar en un lugar de trabajo.
Funciones
En la siguiente tabla, se enumeran las funciones de IAM que otorgan acceso a Monitoring y los permisos asociados con cada función.
Varias de estas funciones están graduadas: por ejemplo, la función roles/monitoring.editor
incluye todos los permisos de la función roles/monitoring.viewer
, más un conjunto adicional de permisos.
Las funciones se pueden asignar solo a nivel de proyecto.
Supervisión
Las funciones de Monitoring incluyen los siguientes permisos:
ID de la función Nombre de la función |
Permisos incluidos |
---|---|
roles/monitoring.viewer Visualizador de Monitoring |
cloudnotifications.activities.list monitoring.alertPolicies.get monitoring.alertPolicies.list monitoring.dashboards.get monitoring.dashboards.list monitoring.groups.get monitoring.groups.list monitoring.metricDescriptors.get monitoring.metricDescriptors.list monitoring.monitoredResourceDescriptors.get monitoring.monitoredResourceDescriptors.list monitoring.notificationChannelDescriptors.get monitoring.notificationChannelDescriptors.list monitoring.notificationChannels.get monitoring.notificationChannels.list monitoring.publicWidgets.get monitoring.publicWidgets.list monitoring.services.get monitoring.services.list monitoring.slos.get monitoring.slos.list monitoring.timeSeries.list monitoring.uptimeCheckConfigs.get monitoring.uptimeCheckConfigs.list resourcemanager.projects.get resourcemanager.projects.list stackdriver.projects.get
|
roles/monitoring.editor Editor de Monitoring |
cloudnotifications.activities.list monitoring.alertPolicies.create monitoring.alertPolicies.delete monitoring.alertPolicies.get monitoring.alertPolicies.list monitoring.alertPolicies.update monitoring.dashboards.create monitoring.dashboards.delete monitoring.dashboards.get monitoring.dashboards.list monitoring.dashboards.update monitoring.groups.create monitoring.groups.delete monitoring.groups.get monitoring.groups.list monitoring.groups.update monitoring.metricDescriptors.create monitoring.metricDescriptors.delete monitoring.metricDescriptors.get monitoring.metricDescriptors.list monitoring.monitoredResourceDescriptors.get monitoring.monitoredResourceDescriptors.list monitoring.notificationChannelDescriptors.list monitoring.notificationChannelDescriptors.get monitoring.notificationChannels.create monitoring.notificationChannels.delete monitoring.notificationChannels.get monitoring.notificationChannels.list monitoring.notificationChannels.sendVerificationCode monitoring.notificationChannels.update monitoring.notificationChannels.verify monitoring.publicWidgets.create monitoring.publicWidgets.delete monitoring.publicWidgets.get monitoring.publicWidgets.list monitoring.publicWidgets.update monitoring.services.create monitoring.services.delete monitoring.services.get monitoring.services.list monitoring.services.update monitoring.slos.create monitoring.slos.delete monitoring.slos.get monitoring.slos.list monitoring.slos.update monitoring.timeSeries.create monitoring.timeSeries.list monitoring.uptimeCheckConfigs.create monitoring.uptimeCheckConfigs.delete monitoring.uptimeCheckConfigs.get monitoring.uptimeCheckConfigs.list monitoring.uptimeCheckConfigs.update opsconfigmonitoring.resourceMetadata.write resourcemanager.projects.get resourcemanager.projects.list serviceusage.services.enable stackdriver.projects.edit stackdriver.projects.get stackdriver.resourceMetadata.write
|
roles/monitoring.admin Administrador de Monitoring |
Los permisos en roles/monitoring.editor , más lo siguiente:monitoring.notificationChannels.getVerificationCode |
Las cuentas de servicio usan la siguiente función para el acceso de solo escritura:
ID de la función Nombre de la función |
Permisos incluidos |
---|---|
roles/monitoring.metricWriter Escritor de métricas de Monitoring |
monitoring.metricDescriptors.create monitoring.metricDescriptors.get monitoring.metricDescriptors.list monitoring.monitoredResourceDescriptors.get monitoring.monitoredResourceDescriptors.list monitoring.timeSeries.create
|
Políticas de alertas
Las funciones de política de alertas incluyen los siguientes permisos:
ID de la función Nombre de la función |
Permisos incluidos |
---|---|
roles/monitoring.alertPolicyViewer Visualizador de políticas de alertas de Monitoring |
monitoring.alertPolicies.get monitoring.alertPolicies.list |
roles/monitoring.alertPolicyEditor Editor de políticas de alertas de Monitoring |
monitoring.alertPolicies.create monitoring.alertPolicies.delete monitoring.alertPolicies.get monitoring.alertPolicies.list monitoring.alertPolicies.update |
Paneles
Las funciones de paneles incluyen estos permisos:
ID de la función Nombre de la función |
Permisos incluidos |
---|---|
roles/monitoring.dashboardViewer Visualizador de configuración del panel de Monitoring |
monitoring.dashboards.get monitoring.dashboards.list |
roles/monitoring.dashboardEditor Editor de configuración del panel de Monitoring |
monitoring.dashboards.get monitoring.dashboards.list monitoring.dashboards.create monitoring.dashboards.delete monitoring.dashboards.update |
Canales de notificación
Las funciones de los canales de notificación incluyen los siguientes permisos:
ID de la función Nombre de la función |
Permisos incluidos |
---|---|
roles/monitoring.notificationChannelViewer Visualizador de canales de notificaciones de Monitoring |
monitoring.notificationChannelDescriptors.get monitoring.notificationChannelDescriptors.list monitoring.notificationChannels.get monitoring.notificationChannels.list |
roles/monitoring.notificationChannelEditor Editor de canales de notificaciones de Monitoring |
monitoring.notificationChannelDescriptors.get monitoring.notificationChannelDescriptors.list monitoring.notificationChannels.create monitoring.notificationChannels.delete monitoring.notificationChannels.get monitoring.notificationChannels.list monitoring.notificationChannels.sendVerificationCode monitoring.notificationChannels.update monitoring.notificationChannels.verify |
Supervisión de servicios
Las funciones de supervisión de servicios incluyen estos permisos:
ID de la función Nombre de la función |
Permisos incluidos |
---|---|
roles/monitoring.servicesViewer Visualizador de servicios de Monitoring |
monitoring.services.get monitoring.services.list monitoring.slos.get monitoring.slos.list |
roles/monitoring.servicesEditor Editor de servicios de Monitoring |
monitoring.services.create monitoring.services.delete monitoring.services.get monitoring.services.list monitoring.services.update monitoring.slos.create monitoring.slos.delete monitoring.slos.get monitoring.slos.list monitoring.slos.update |
Configuración de verificaciones de tiempo de actividad
Las funciones de configuración de verificaciones de tiempo de actividad incluyen estos permisos:
ID de la función Nombre de la función |
Permisos incluidos |
---|---|
roles/monitoring.uptimeCheckConfigViewer Visualizador de configuración de verificaciones de tiempo de actividad de Monitoring |
monitoring.uptimeCheckConfigs.get monitoring.uptimeCheckConfigs.list |
roles/monitoring.uptimeCheckConfigEditor Editor de configuración de verificaciones de tiempo de actividad de Monitoring |
monitoring.uptimeCheckConfigs.create monitoring.uptimeCheckConfigs.delete monitoring.uptimeCheckConfigs.get monitoring.uptimeCheckConfigs.list monitoring.uptimeCheckConfigs.update |
Configuración de los lugares de trabajo
Para crear o administrar un lugar de trabajo, debes usar Google Cloud Console. A fin de obtener información sobre las funciones necesarias para crear un lugar de trabajo, consulta las funciones predefinidas de Monitoring.
Google Cloud
Las funciones de Google Cloud incluyen estos permisos:
ID de la función Nombre de la función |
Permisos incluidos |
---|---|
roles/viewer Visualizador del proyecto |
Los permisos de Monitoring son los mismos que los de roles/monitoring.viewer . |
roles/editor Editor del proyecto |
Los permisos de Monitoring son los mismos que los de roles/monitoring.editor . |
roles/owner Propietario del proyecto |
Los permisos de Monitoring son los mismos que los de roles/editor . |
Otorga funciones de IAM
Los propietarios del proyecto, los editores y las cuentas de servicio predeterminadas de Compute Engine y App Engine ya tienen los permisos necesarios. Sin embargo, para otras cuentas de usuario, es posible que debas otorgar estas funciones de forma explícita.
Por ejemplo, para que una cuenta de usuario lea o escriba descriptores de métricas mediante la API de Monitoring, ese usuario debe tener los permisos monitoring.metricDescriptors.*
de IAM adecuados. Para ello, otorga las funciones predefinidas de Visualizador de Monitoring (roles/monitoring.viewer
) y Editor de Monitoring (roles/monitoring.editor
).
Para obtener más información, consulta los permisos de la API.
Estos permisos se pueden otorgar con la herramienta de línea de comandos de gcloud
de SDK de Cloud o con Google Cloud Console (Cloud Console).
SDK de Cloud
Usa el comando gcloud projects add-iam-policy-binding
para otorgar la función monitoring.viewer
o monitoring.editor
.
Por ejemplo:
export PROJECT_ID="my-test-project"
export EMAIL_ADDRESS="myuser@gmail.com"
gcloud projects add-iam-policy-binding \
$PROJECT_ID \
--member="user:$EMAIL_ADDRESS" \
--role="roles/monitoring.editor"
Puedes confirmar las funciones otorgadas con el comando gcloud projects get-iam-policy
:
export PROJECT_ID="my-test-project"
gcloud projects get-iam-policy $PROJECT_ID
Cloud Console
Visita Cloud Console:
Si es necesario, haz clic en la lista desplegable de proyectos de Google Cloud y selecciona el nombre del proyecto en el que deseas habilitar la API.
Para expandir el menú de navegación, haz clic en Menú arrow_drop_down.
Haz clic en IAM y administración.
Si el usuario es miembro, haz clic en Editar edit para modificar sus permisos. Puedes modificar la función existente o agregar una función adicional. Para guardar los cambios, haz clic en Guardar.
Si el usuario no es miembro, haz lo siguiente:
- Haga clic en Add.
- Ingresa el nombre de usuario en el cuadro de texto Nuevos miembros.
- En Selecciona una función, haga clic en Menú arrow_drop_down.
- En la barra de filtros filter_list, ingresa la función adecuada:
- La función Editor de Monitoring otorga acceso de lectura y escritura.
- La función Visualizador de Monitoring otorga acceso de solo lectura.
Funciones personalizadas
Para crear una función personalizada con permisos de Monitoring, realiza las siguientes acciones:
Para una función que otorgue permisos solo a la API de Monitoring, elige los permisos en la sección de Permisos de la API.
Para una función que otorgue permisos para Monitoring en Google Cloud Console, elige entre grupos de permisos en la sección Permisos de Console para Monitoring.
Para otorgar la capacidad de escribir datos de supervisión, incluye los permisos de la función
roles/monitoring.metricWriter
en la sección Funciones.
Para obtener más información sobre las funciones personalizadas, consulta Comprende las funciones personalizadas de IAM.
Permisos de acceso de Compute Engine
Los niveles de acceso son el método heredado de especificar permisos para tus instancias de VM de Compute Engine. Los siguientes niveles de acceso se aplican a Monitoring:
Nivel de acceso | Permisos otorgados |
---|---|
https://www.googleapis.com/auth/monitoring.read | Los mismos permisos que en roles/monitoring.viewer |
https://www.googleapis.com/auth/monitoring.write | Los mismos permisos que en roles/monitoring.metricWriter |
https://www.googleapis.com/auth/monitoring | Acceso completo a Monitoring |
https://www.googleapis.com/auth/cloud-platform | Acceso completo a todas las API de Cloud habilitadas |
Para obtener más información, consulta Permisos de acceso.
Prácticas recomendadas: Debido a que las funciones de IAM de la cuenta de servicio son fáciles de configurar y cambiar, se recomienda configurar las instancias de VM con el permiso de acceso más eficaz (cloud-platform
) y, luego, usar las funciones de IAM para restringir el acceso a operaciones y API específicas. Para obtener más información, consulta Permisos de la cuenta de servicio.