El control de acceso determina quién tiene permiso para acceder a los servicios y recursos en un proyecto de Google Cloud . En App Engine, existen varios casos de uso diferentes para configurar el control de acceso:
Otorga a los miembros del equipo acceso a tu proyecto de Google Cloud para que puedan configurar servicios e implementar apps.
Otorga a la app acceso a servicios de Google Cloud, como Cloud Storage. Todos los servicios de Cloud requieren autenticación y autorización para cada llamada a la API, incluidas las llamadas que se originan en tu app de App Engine.
Otorgarles a los usuarios acceso a recursos de un proyecto de Google Cloud Si bien este caso de uso no es común, puede haber situaciones en las que la app necesite solicitar acceso a un recurso de Cloud en nombre de un usuario. Por ejemplo, es posible que tu app necesite acceder a datos que pertenecen a los usuarios.
En esta página, se proporciona una descripción general de la configuración del control de acceso en cada caso de uso.
Para obtener información general sobre cómo Google Cloud Platform maneja el control de acceso, consulta la Descripción general de la administración de identidades y accesos (IAM).
Otorga acceso a los miembros de tu equipo
Para otorgar acceso a un desarrollador a tu proyecto de Google Cloud , crea uno de estos elementos o ambos:
Una cuenta de usuario asociada con una Cuenta de Google, cuyo propósito es representar a una persona específica en tu proyecto
Se puede usar una cuenta de usuario para autenticar desde las siguientes herramientas:
- Google Cloud console
- Google Cloud CLI
- IDE y herramientas de compilación que usan gcloud CLI para implementar y probar apps de App Engine
Una cuenta de servicio, cuyo propósito no es representar a una persona sino a una aplicación o un proceso. Usa cuentas de servicio en tus procesos automatizados de compilación, de prueba y de implementación, especialmente si varios desarrolladores pueden ejecutar estos procesos.
Se puede usar una cuenta de servicio para autenticar desde las siguientes herramientas:
- gcloud CLI
- IDE y herramientas de compilación que usan herramientas de gcloud CLI para implementar y probar apps de App Engine
Crea una cuenta de usuario
Abre la página IAM en la consola de Google Cloud .
Haz clic en Seleccionar un proyecto, elige un proyecto y haz clic en Abrir.
Haz clic en Agregar.
Ingresa una dirección de correo electrónico.
Selecciona funciones que otorguen acceso a las características de App Engine.
Si el usuario también necesita acceder a otros servicios de Cloud, selecciona funciones que otorguen acceso a otros servicios de Cloud.
Haz clic en Guardar.
Ahora el usuario puede acceder a la consola de Google Cloud y autorizar la CLI de gcloud.
También puedes crear cuentas de usuario desde gcloud, la API de REST o las bibliotecas cliente.
Crea una cuenta de servicio
Abre la página Cuentas de servicio en la consola de Google Cloud .
Selecciona tu proyecto y haz clic en Abrir.
Haz clic en Crear cuenta de servicio.
Ingresa un nombre de cuenta de servicio. Debe ser un nombre fácil de usar para mostrar.
Haz clic en Crear.
Selecciona funciones que otorguen acceso a las características de App Engine.
Si la cuenta de servicio también necesita acceder a otros servicios de Cloud, selecciona funciones que otorguen acceso a otros servicios de Cloud.
Haz clic en Continuar.
Si lo deseas, puedes especificar cuentas de usuario con la capacidad de administrar la cuenta de servicio. También puedes especificar cuentas de usuario con la capacidad de usar la cuenta de servicio para acceder indirectamente a todos los recursos a los que tiene acceso la cuenta de servicio.
Haz clic en Guardar.
Aparecerá una lista de las cuentas de servicio existentes.
Si necesitas usar tu cuenta de servicio fuera deGoogle Cloud, sigue las instrucciones para crear una clave de cuenta de servicio (opcional).
Próximos pasos
- Si usas la cuenta de servicio en tus procesos automatizados de compilación y de implementación, autoriza gcloud CLI con una cuenta de servicio.
- Si usas la cuenta de servicio con un IDE, sigue las instrucciones que proporciona el IDE.
- Si necesitas usar una identidad única para una versión de tu aplicación de App Engine cuando accedes a otros Google Cloud servicios o ejecutas tareas, puedes especificar una cuenta de servicio administrada por el usuario en App Engine.
Otórgale a tu app acceso a los servicios de Cloud
Cada llamada a un servicio de Cloud debe estar autenticada y autorizada, incluidas las llamadas provenientes de una aplicación de App Engine y destinadas a otros servicios de Cloud, como Cloud Storage.
De forma predeterminada, las llamadas de tu aplicación de App Engine a servicios pertenecientes al mismo proyecto están autorizadas. El flujo predeterminado funciona de la siguiente manera:
Para iniciar llamadas a un servicio de Cloud, tu app crea un objeto cliente que contiene las credenciales y otros datos que tu app necesita para interactuar con el servicio. Si no especificas las credenciales en el constructor del cliente, este busca las credenciales en el entorno de la app.
A continuación, se muestra un ejemplo de cómo crear un cliente para Cloud Storage:
Go
Java
Node.js