De forma predeterminada, los proyectos no pueden crear ni modificar reservas compartidas. En este documento, se explica cómo permitir o restringir que los proyectos de tu Google Cloud organización creen y modifiquen reservas compartidas. Las reservas compartidas te ayudan a maximizar el uso de la capacidad reservada en todos los proyectos, así como a administrar una reserva en lugar de muchas.
Para obtener más información sobre las prácticas recomendadas para crear y usar reservas compartidas, consulta Prácticas recomendadas para las reservas compartidas.
Antes de comenzar
-
Si aún no lo hiciste, configura la autenticación.
La autenticación verifica tu identidad para acceder a Google Cloud servicios y APIs. Para ejecutar
código o muestras desde un entorno de desarrollo local, puedes autenticarte en
Compute Engine seleccionando una de las siguientes opciones:
Selecciona la pestaña según cómo planeas usar las muestras en esta página:
Console
Cuando usas la Google Cloud consola de para acceder a Google Cloud servicios y APIs, no necesitas configurar la autenticación.
gcloud
-
Instala la Google Cloud CLI. Después de la instalación, inicializa Google Cloud CLI con el siguiente comando:
gcloud initSi usas un proveedor de identidad (IdP) externo, primero debes acceder a gcloud CLI con tu identidad federada.
-
- Configura una región y una zona predeterminadas.
Roles obligatorios
Para obtener los permisos que
necesitas para permitir o restringir que los proyectos creen reservas compartidas,
pídele a tu administrador que te otorgue el
rol de IAM de administrador de políticas de la organización (roles/orgpolicy.policyAdmin) en la organización.
Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.
Este rol predefinido contiene los permisos necesarios para permitir o restringir que los proyectos creen reservas compartidas. Para ver los permisos exactos que son necesarios, expande la sección Permisos requeridos:
Permisos necesarios
Se requieren los siguientes permisos para permitir o restringir que los proyectos creen reservas compartidas:
-
Para editar las políticas de la organización:
orgpolicy.policy.seten la organización -
Para ver las políticas de la organización:
orgpolicy.policy.geten la organización
También puedes obtener estos permisos con roles personalizados o otros roles predefinidos.
Permite o restringe que los proyectos creen reservas compartidas
Para permitir o restringir que un proyecto cree reservas compartidas, modifica la
lista de entidades permitidas dentro de la
restricción de la política de la organización Proyectos de propietario de las reservas compartidas (compute.sharedReservationsOwnerProjects).
En las siguientes secciones, se explica cómo ver o editar la restricción de la política de reservas compartidas en tu proyecto o tu organización.
Visualiza la restricción de la política de la organización de reservas compartidas
Para ver si tu proyecto o tu organización tienen habilitada la restricción de proyectos de propietario de las reservas compartidas (compute.sharedReservationsOwnerProjects), selecciona una de las siguientes opciones:
Console
En la consola de Google Cloud , ve a la página Políticas de la organización.
En el selector de proyectos, selecciona el proyecto o la organización para los que deseas ver las políticas de la organización.
En el campo Filtro, ingresa
constraints/compute.sharedReservationsOwnerProjects.En la columna Nombre, haz clic en Proyectos de propietario de las reservas compartidas. Aparecerá la página Detalles de la política.
En la sección Política efectiva, verifica si tu proyecto o tu organización tienen permiso para crear y modificar reservas compartidas.
gcloud
Para ver a qué proyectos permite la restricción compute.sharedReservationsOwnerProjects crear y cambiar reservas compartidas, haz lo siguiente:
Para descargar la política de tu organización como un archivo llamado
policy.yaml, usa elgcloud resource-manager org-policies describecomando:gcloud resource-manager org-policies describe compute.sharedReservationsOwnerProjects \ --organization=ORGANIZATION_ID > policy.yamlReemplaza ORGANIZATION_ID por el ID de tu organización.
Abre el archivo
policy.yamlen un editor de texto de tu elección.Visualiza la restricción
compute.sharedReservationsOwnerProjects. Los proyectos que pueden crear y modificar reservas compartidas se enumeran en el campoallowedValues, como se muestra en el siguiente ejemplo:... constraint: constraints/compute.sharedReservationsOwnerProjects listPolicy: allowedValues: - projects/EXAMPLE_PROJECT_NUMBER1 - projects/EXAMPLE_PROJECT_NUMBER2 - projects/EXAMPLE_PROJECT_NUMBER3 ... ...Opcional: Para borrar el archivo
policy.yaml, haz una de las siguientes acciones:Si usas una terminal de Linux o macOS, ejecuta el siguiente comando:
rm policy.yamlSi usas una terminal de Windows, ejecuta el siguiente comando:
del policy.yaml
Edita la restricción de la política de la organización de reservas compartidas
Para editar qué proyectos de tu organización pueden crear y modificar reservas compartidas, selecciona una de las siguientes opciones:
Console
En la consola de Google Cloud , ve a la página Políticas de la organización.
En el selector de proyectos, selecciona la organización para la que deseas editar las políticas de la organización.
En el campo Filtro, ingresa
constraints/compute.sharedReservationsOwnerProjects.En la columna Nombre, haz clic en Proyectos de propietario de las reservas compartidas. Aparecerá la página Detalles de la política.
Haz clic en Administrar política. Aparecerá la página Detalles de la política.
Selecciona Anular la política superior. Luego, en la sección Aplicación de la política, selecciona cómo deseas aplicar la política:
Combinar con superior: Esta opción combina la política a nivel del proyecto con la política a nivel de la organización. Los proyectos permitidos en cualquier nivel pueden crear reservas compartidas.
Reemplazar: Esta opción anula cualquier política heredada de niveles superiores. Solo los proyectos que se permiten de forma explícita en este nivel pueden crear reservas compartidas.
Haz clic en Agregar una regla.
En la lista Valores de la política, selecciona Personalizado.
En la lista Tipo de política, selecciona una de las siguientes opciones:
Para autorizar que uno o más proyectos creen o modifiquen reservas compartidas, selecciona Permitir.
Para evitar que uno o más proyectos creen o modifiquen reservas compartidas, selecciona Denegar.
En el campo Valor personalizado, ingresa el número del proyecto al que deseas aplicar esta regla. Por cada proyecto adicional al que desees aplicar la regla, haz clic en Agregar valor y, luego, repite este paso.
Para aplicar estos cambios, haz clic en Establecer política. Aparecerá la página Políticas de la organización.
gcloud
Para cambiar a qué proyectos permite la restricción compute.sharedReservationsOwnerProjects crear y cambiar reservas compartidas, usa uno de los siguientes métodos:
Para otorgar permisos a un solo proyecto para crear y modificar reservas compartidas, usa el
gcloud resource-manager org-policies allowcomando. Puedes repetir este comando para cada proyecto al que le quieras otorgar este permiso.gcloud resource-manager org-policies allow compute.sharedReservationsOwnerProjects projects/PROJECT_NUMBER \ --organization=ORGANIZATION_IDReemplaza lo siguiente:
PROJECT_NUMBER: el número del proyecto.
ORGANIZATION_ID: el ID de tu organización.
Para otorgar o revocar los permisos para varios proyectos para crear y modificar reservas compartidas, reemplaza la restricción de la política de la organización. Para ello, completa los siguientes pasos:
Para descargar la política de tu organización como un archivo llamado
policy.yaml, usa elgcloud resource-manager org-policies describecomando:gcloud resource-manager org-policies describe compute.sharedReservationsOwnerProjects \ --organization=ORGANIZATION_ID > policy.yamlAbre el archivo
policy.yamlen un editor de texto de tu elección.Modifica el campo
allowedValuespara enumerar todos los proyectos que pueden crear y modificar reservas compartidas.Para cada proyecto al que desees otorgar permiso, agrega el número del proyecto en una línea nueva dentro del campo
allowedValues.Para cada proyecto al que le quieras revocar el permiso a fin de crear y modificar reservas compartidas, quita el número del proyecto del campo
allowedValues.
El archivo
policy.yamlse ve similar al siguiente ejemplo:... constraint: constraints/compute.sharedReservationsOwnerProjects listPolicy: allowedValues: - projects/EXAMPLE_PROJECT_NUMBER1 - projects/EXAMPLE_PROJECT_NUMBER2 - projects/EXAMPLE_PROJECT_NUMBER3 ... ...Guarda el archivo
policy.yamly cierra el editor de texto.Para actualizar la política de tu organización, usa el
gcloud resource-manager org-policies set-policycomando:gcloud resource-manager org-policies set-policy \ --organization=ORGANIZATION_ID policy.yamlOpcional: Para borrar el archivo
policy.yaml, haz una de las siguientes acciones:Si usas una terminal de Linux o macOS, ejecuta el siguiente comando:
rm policy.yamlSi usas una terminal de Windows, ejecuta el siguiente comando:
del policy.yaml
Los cambios pueden tardar hasta 15 minutos en aplicarse.