Identity and Access Management (IAM) te permite otorgar acceso detallado a recursos específicos de Google Cloud y evitar el acceso no deseado a otros. Este modelo te ayuda a adoptar el principio de privilegio mínimo, que ayuda a garantizar que solo otorgues el acceso necesario a tus recursos.
Cuando configuras políticas de permisos, controlas quién (usuarios) tiene qué acceso (roles) a qué recursos. Para administrar el acceso a los proyectos, configura roles y permisos de IAM, o usa políticas de denegación para evitar que las principales usen permisos específicos. Para obtener más información, consulta Administra el acceso a proyectos, carpetas y organizaciones.
Si recién comienzas a usar Google Cloud, puedes establecer tu jerarquía de recursos y otorgar acceso inicial como parte del proceso de configuración deGoogle Cloud .
Permisos y roles
Para controlar el acceso a los recursos, Google Cloud exige que las cuentas que realizan solicitudes a la API
tengan los roles de IAM adecuados. Los roles de IAM
incluyen permisos que permiten a los usuarios realizar acciones específicas en
los recursos deGoogle Cloud . Por ejemplo, el permiso resourcemanager.projects.delete
permite que un usuario borre un proyecto.
No se les otorgan permisos a los usuarios directamente, sino funciones, que incluyen uno o más permisos. Otorgas estos roles en un recurso en particular, pero también se aplican a todos los subordinados de ese recurso en la jerarquía de recursos.
Permisos
Para administrar proyectos, el emisor debe tener un rol que incluya los siguientes permisos. El rol se otorga en el recurso de organización o la carpeta que contiene los proyectos:
| Método | Permisos necesarios |
|---|---|
resourcemanager.projects.create |
resourcemanager.projects.create |
resourcemanager.projects.delete |
resourcemanager.projects.delete |
resourcemanager.projects.get |
resourcemanager.projects.getSi otorgas este permiso, también se otorgará acceso para obtener el nombre de la cuenta de facturación asociada con el proyecto mediante el método de API de Billing billing.projects.getBillingInfo |
resourcemanager.projects.getIamPolicy |
resourcemanager.projects.getIamPolicy |
resourcemanager.projects.list |
resourcemanager.projects.list |
resourcemanager.projects.search |
resourcemanager.projects.get |
resourcemanager.projects.setIamPolicy |
resourcemanager.projects.setIamPolicy |
resourcemanager.projects.testIamPermissions |
No requiere ningún permiso. |
resourcemanager.projects.undelete |
resourcemanager.projects.undelete |
resourcemanager.projects.patch |
Se requiere el permiso resourcemanager.projects.update a fin de actualizar los metadatos de un proyecto. Para actualizar el elemento superior de un proyecto
y moverlo a un recurso de organización, se requiere
el permiso resourcemanager.projects.create en el
recurso de organización. |
projects.move |
projects.move |
Usa roles predefinidos
Los roles predefinidos de IAM te permiten administrar los permisos disponibles para los usuarios. Para obtener una lista completa de los roles que se pueden otorgar a nivel de proyecto, consulta Información sobre los roles.
En la siguiente tabla, se enumeran los roles predefinidos que puedes usar para otorgar acceso a un proyecto. Cada rol incluye una descripción de su propósito y los permisos que contiene.
| Rol | Permisos |
|---|---|
Creador de proyectos( Proporciona acceso para crear proyectos nuevos. Una vez que un usuario crea un proyecto, se le otorga de forma automática la función de propietario para ese proyecto. Recursos de nivel más bajo en los que puedes otorgar esta función:
|
|
Eliminador de proyectos( Proporciona acceso para borrar proyectos de Google Cloud . Recursos de nivel más bajo en los que puedes otorgar esta función:
|
|
Migrador de proyectos( Proporciona acceso para actualizar y mover proyectos. Recursos de nivel más bajo en los que puedes otorgar esta función:
|
|
Administrador de IAM de proyecto( Proporciona permisos para administrar las políticas de permisos en los proyectos. Recursos de nivel más bajo en los que puedes otorgar este rol:
|
|
Navegador( Acceso de lectura para navegar en la jerarquía de un proyecto, incluida la carpeta, la organización y la política de permisos. esta función no incluye el permiso para ver los recursos del proyecto Recursos de nivel más bajo en los que puedes otorgar este rol:
|
|
Funciones básicas
Usa roles básicos solo cuando sea necesario. Estos roles tienen privilegios elevados y otorgan permisos amplios en todos los servicios de Google Cloud . Para obtener más información sobre cuándo usar los roles básicos, consulta Roles básicos.
| Rol | Descripción | Permisos |
|---|---|---|
roles/owner |
Acceso completo a todos los recursos. | Todos los permisos para todos los recursos. |
roles/editor |
Tiene acceso de edición a la mayoría de los recursos. | Crear y actualizar el acceso a la mayoría de los recursos |
roles/viewer |
Tiene acceso de lectura a la mayoría de los recursos. | Acceso para obtener y enumerar la mayoría de los recursos. |
Crea funciones personalizadas
Además de los roles predefinidos que se describen en este tema, también puedes crear roles personalizados, que son colecciones de permisos que adaptas a tus necesidades. Cuando crees un rol personalizado para usarlo con Resource Manager, ten en cuenta los siguientes puntos:- Los permisos list y get, como
resourcemanager.projects.get/list, siempre se deben otorgar como un par. - Cuando tu rol personalizado incluye los permisos
folders.listyfolders.get, también debe incluirprojects.listyprojects.get. - Ten en cuenta que el permiso
setIamPolicypara los recursos de organización, carpeta y proyecto permite que el usuario otorgue todos los demás permisos, por lo que se debe asignar con cuidado.
Control de acceso a nivel de proyecto
Puedes otorgar roles a los usuarios a nivel de proyecto con la Google Cloud console, la API de Cloud Resource Manager y Google Cloud CLI. Para obtener instrucciones, consulta Otorga, cambia y revoca el acceso.
Funciones predeterminadas
Cuando creas un proyecto, recibes el rol roles/owner, que te otorga
control total sobre el proyecto. Puedes cambiar este rol predeterminado en una política de permiso.
Controles del servicio de VPC
Los Controles del servicio de VPC pueden proporcionar seguridad adicional cuando se usa la API de Cloud Resource Manager. Para obtener más información sobre los Controles del servicio de VPC, consulta la Descripción general de los Controles del servicio de VPC.
Para obtener información sobre las limitaciones actuales del uso de Resource Manager con los Controles del servicio de VPC, consulta la página sobre los productos admitidos y las limitaciones.