Cualquier programa de aplicación que use recursos de Google Cloud necesita una identidad y unos permisos de Google Cloud para poder acceder a los recursos.
Cuentas de servicio de IAM
En Google Cloud, la administración de identidades y accesos (IAM) usa cuentas de servicio para establecer identidades para programas y funciones a fin de otorgar permisos a las cuentas de servicio de los programas.
Para los sistemas SAP y los programas relacionados que se ejecutan en máquinas virtuales (VM) de Compute Engine, crea una cuenta de servicio de VM que contenga solo las funciones que los sistemas SAP y otros programas necesitan.
Los programas que no se ejecutan en Google Cloud pueden usar cuentas de servicio cuando se conectan a las API de Google Cloud y usan una clave de cuenta de servicio para la autenticación.
Los programas que se ejecutan en una VM de Compute Engine pueden usar la cuenta de servicio de la VM, siempre que esta tenga las funciones que necesita el programa. Para los programas que se ejecutan en una VM de Compute Engine, no se recomienda usar una clave de cuenta de servicio para la autenticación.
Cuando creas una instancia de VM mediante Google Cloud CLI o la consola de Google Cloud, puedes especificar una cuenta de servicio para que la use la instancia de VM, aceptar la cuenta de servicio predeterminada del proyecto o no especificar ninguna cuenta de servicio.
Cuando creas una instancia con una solicitud directa a la API sin usar Google Cloud CLI ni la consola de Google Cloud, la cuenta de servicio predeterminada no está habilitada para la instancia.
Si una cuenta de servicio de VM no tiene las funciones que necesita el programa, puedes agregarlas a la cuenta de servicio de VM o reemplazar la cuenta de servicio por una nueva cuenta de servicio de VM.
En un principio, se le otorga la función de editor a la cuenta de servicio predeterminada de Compute Engine para un proyecto. Esta función puede ser demasiado flexible para muchos entornos empresariales.
Para obtener más información sobre el uso de funciones, permisos y cuentas de servicio por parte de Compute Engine, consulta los siguientes enlaces:
Para obtener información que se aplique de manera más amplia en Google Cloud, consulta la documentación de Cloud IAM:
Automatización de la implementación y cuentas de servicio
Si implementas tu infraestructura de SAP mediante los archivos de configuración de Terraform o las plantillas de Deployment Manager que proporciona Google Cloud, puedes especificar una cuenta de servicio de VM en DEPLOYMENT_TYPE.tf
o el archivo de configuración template.yaml
.
Si no especificas una cuenta de servicio, Terraform o Deployment Manager implementan las VM con la cuenta de servicio predeterminada del proyecto de Google Cloud.
Permisos y roles de IAM
IAM proporciona funciones predefinidas para cada recurso de Google Cloud. Cada función contiene un conjunto de permisos para el recurso que son apropiados para el nivel de la función. Puedes agregar estas funciones a las cuentas de servicio que creas.
Para obtener un control más restringido o detallado, puedes crear funciones personalizadas con uno o más permisos.
Para obtener una lista de las funciones predefinidas y los permisos que contiene cada una, consulta Descripción de las funciones.
Para obtener más información acerca de las funciones personalizadas, consulta Información sobre las funciones personalizadas.
Para obtener más información acerca de las funciones específicas de Compute Engine, consulta las funciones de IAM de Compute Engine en la documentación del producto.
Funciones de IAM para sistemas SAP
Los roles de IAM que necesitan tus programas de SAP dependen de los recursos que usan los programas y de las tareas que realizan.
Por ejemplo, si usas Terraform o Deployment Manager para implementar tu sistema SAP y especificar una cuenta de servicio en el archivo de configuración de Terraform o Deployment Manager, la cuenta de servicio que especificas debe incluir, al menos, los roles siguientes:
- Usuario de cuenta de servicio: uso obligatorio.
- Administrador de instancias de Compute: uso obligatorio.
- Visualizador de objetos de almacenamiento: se requiere para descargar los medios de instalación de un bucket de Cloud Storage durante la implementación.
- Escritor de registros: se requiere para escribir la implementación y otros mensajes en Logging.
Después de que se implementa el sistema SAP, es posible que la VM de host y los programas de SAP no necesiten los mismos permisos que se requerían durante la implementación. Puedes editar la cuenta de servicio de VM para quitar funciones, o bien cambiar la cuenta de servicio que usa la VM.
Algunos programas de SAP o programas relacionados requieren funciones adicionales y, si no se ejecutan en Google Cloud, podrían requerir una cuenta de servicio independiente. Por ejemplo:
- El agente de Backint de Cloud Storage para SAP HANA requiere que la función de Administrador de objetos de almacenamiento cree una copia de seguridad y recupere elementos desde Cloud Storage.
- El agente de Google Cloud para SAP requiere roles como Visualizador de Compute, Visualizador de Monitoring y Escritor de métricas de Monitoring. Para obtener más información, consulta Otorga roles de IAM necesarios.
- Los servicios de datos de SAP, cuando están configurados para replicar datos de SAP a BigQuery, requieren la función de editor de datos de BigQuery y la de usuario de trabajo de BigQuery.