Gestionar la habilitación de servicios
La activación jerárquica de servicios te permite gestionar la habilitación de servicios que se hereda a través de la Google Cloud jerarquía de recursos. Para obtener más información, consulta el resumen.
En este documento se explica cómo usar Google Cloud CLI para gestionar la habilitación de servicios en proyectos, carpetas y organizaciones.
Antes de empezar
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
Install the Google Cloud CLI.
-
Si utilizas un proveedor de identidades (IdP) externo, primero debes iniciar sesión en la CLI de gcloud con tu identidad federada.
-
Para inicializar gcloud CLI, ejecuta el siguiente comando:
gcloud init -
Create or select a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Create a Google Cloud project:
gcloud projects create PROJECT_ID
Replace
PROJECT_IDwith a name for the Google Cloud project you are creating. -
Select the Google Cloud project that you created:
gcloud config set project PROJECT_ID
Replace
PROJECT_IDwith your Google Cloud project name.
-
Si vas a usar un proyecto que ya tengas para seguir esta guía, verifica que tienes los permisos necesarios para completarla. Si has creado un proyecto, ya tienes los permisos necesarios.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the Service Usage API:
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.gcloud services enable serviceusage.googleapis.com
-
Install the Google Cloud CLI.
-
Si utilizas un proveedor de identidades (IdP) externo, primero debes iniciar sesión en la CLI de gcloud con tu identidad federada.
-
Para inicializar gcloud CLI, ejecuta el siguiente comando:
gcloud init -
Create or select a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Create a Google Cloud project:
gcloud projects create PROJECT_ID
Replace
PROJECT_IDwith a name for the Google Cloud project you are creating. -
Select the Google Cloud project that you created:
gcloud config set project PROJECT_ID
Replace
PROJECT_IDwith your Google Cloud project name.
-
Si vas a usar un proyecto que ya tengas para seguir esta guía, verifica que tienes los permisos necesarios para completarla. Si has creado un proyecto, ya tienes los permisos necesarios.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the Service Usage API:
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.gcloud services enable serviceusage.googleapis.com
- Si no indicas el Google Cloud recurso que quieres gestionar, los comandos de este documento se aplicarán de forma predeterminada al proyecto actual. Por ejemplo,
gcloud beta services list --enableddevuelve una lista de los servicios habilitados del proyecto actual.Puedes obtener el ID del proyecto actual:
gcloud config list --format='text(core.project)'
-
Para ver los servicios, sigue estos pasos:
-
serviceusage.effectivepolicy.get -
serviceusage.services.list -
serviceusage.services.get
-
-
Habilita los servicios:
-
serviceusage.consumerpolicy.get -
serviceusage.consumerpolicy.update -
serviceusage.groups.listExpandedMembers
-
-
Inhabilitar servicios:
-
serviceusage.consumerpolicy.get -
serviceusage.consumerpolicy.update -
serviceusage.consumerpolicy.analyze
-
Debe especificar una de las siguientes marcas:
--availablepara mostrar los servicios que se pueden habilitar para su uso.--enabledpara ver una lista de los servicios que están habilitados para el consumo.
Puedes usar otras marcas para filtrar y limitar los servicios que se muestran.
SERVICE: el nombre del servicio que quieras habilitar. Para habilitar varios servicios, usa nombres de servicios delimitados por espacios. Por ejemplo, el siguiente comando habilita los servicios de claves de API y BigQuery:gcloud beta services enable apikeys.googleapis.com bigquery.googleapis.com.PROJECT_ID: tu Google Cloud ID de proyecto. También puedes omitir la marca para usar el proyecto actual de forma predeterminada.SERVICE: el nombre del servicio que quieras habilitar. Para habilitar varios servicios, usa nombres de servicio delimitados por espacios. Por ejemplo:gcloud beta services enable apikeys.googleapis.com bigquery.googleapis.com.FOLDER_ID: tu Google Cloud ID de carpeta.SERVICE: el nombre del servicio que quieras habilitar. Para habilitar varios servicios, usa nombres de servicio delimitados por espacios. Por ejemplo:gcloud beta services enable apikeys.googleapis.com bigquery.googleapis.com.ORGANIZATION_ID: el Google Cloud ID de recurso de tu organización.--asyncpara volver inmediatamente sin esperar a que se complete la operación en curso.--skip-dependencypara saltar la habilitación de las dependencias de servicios. De lo contrario, todas las dependencias de servicio están habilitadas de forma predeterminada.Puedes inspeccionar las dependencias de los servicios. Para obtener más información, consulta Lista de dependencias de servicios.
--validate-onlypara validar la habilitación sin realizar la operación.Si intentas habilitar un servicio que ya está habilitado, recibirás un error que indica que el servicio ya está habilitado y presente en la política de consumidor. Si el servicio ya está habilitado, pero sus dependencias no, el comando se ejecutará correctamente.
Si habilitas un servicio a nivel de carpeta u organización, es posible que la restricción de la política de la organización
constraints/serviceuser.servicesno funcione como se espera. Te recomendamos que utilices la restricción Restrict Resource Service Usage. Para obtener más información, consulta Restringir el uso de recursos.Google Cloud Crea y gestiona cuentas de servicio para muchos Google Cloud servicios. Estas cuentas de servicio se denominan agentes de servicio. Si se produce un error
service account not found, puede que tengas que crear un agente de servicio con el comandogcloud beta services identity create.SERVICE: el nombre del servicio que quieras inhabilitar. Para inhabilitar varios servicios, usa nombres de servicio delimitados por espacios. Por ejemplo:gcloud beta services disable apikeys.googleapis.com bigquery.googleapis.com.PROJECT_ID: tu Google Cloud ID de proyecto. También puedes omitir la marca para usar el proyecto actual de forma predeterminada.SERVICE: el nombre del servicio que quieras inhabilitar. Para inhabilitar varios servicios, usa nombres de servicio delimitados por espacios. Por ejemplo:gcloud beta services disable apikeys.googleapis.com bigquery.googleapis.com.FOLDER_ID: tu Google Cloud ID de carpeta.SERVICE: el nombre del servicio que quieras inhabilitar. Para inhabilitar varios servicios, usa nombres de servicio delimitados por espacios. Por ejemplo:gcloud beta services disable apikeys.googleapis.com bigquery.googleapis.com.ORGANIZATION_ID: el Google Cloud ID de recurso de tu organización.--asyncpara volver inmediatamente sin esperar a que se complete la operación en curso.--bypass-api-usage-checkpara omitir las comprobaciones de uso. De lo contrario, el sistema devolverá un error si el servicio que quieres inhabilitar se ha usado en los últimos 30 días o se ha habilitado en los últimos 3 días.Puede especificar una de las siguientes marcas:
--bypass-dependency-service-checkpara omitir la comprobación de las dependencias. Los servicios habilitados que dependan del servicio que estés inhabilitando seguirán habilitados.--disable-dependency-servicespara inhabilitar el servicio y los servicios habilitados que dependan del servicio que estés inhabilitando.
Puedes inspeccionar las dependencias de los servicios. Para obtener más información, consulta Lista de dependencias de servicios.
--forcepara continuar aunque haya servicios habilitados que dependan del servicio, o si el servicio se ha usado en los últimos 30 días o se ha habilitado en los últimos 3 días. También se inhabilitarán los servicios dependientes.Las marcas
--bypass-api-usage-check,--bypass-dependency-service-checky--disable-dependency-servicestienen prioridad sobre la marca--force.Usar las marcas
--disable-dependency-servicesy--bypass-api-usage-checkes lo mismo que usar la marca--force. El servicio y sus dependencias se inhabilitan sin comprobar su uso.--validate-onlypara validar la inhabilitación sin llevar a cabo la operación.- Habilitar el servicio BigQuery sin sus dependencias:
gcloud beta services enable bigquery.googleapis.com --skip-dependency
Resultado:
Operation [operations/ucpat.p39-581601899707-73a57d57-aa46-4d0b-a5ee-57034a42f2b3] complete. Result: { "@type":"type.googleapis.com/google.api.serviceusage.with Hierarchical Service Activationbeta.ConsumerPolicy", "createTime":"2025-01-31T20:17:37.272343Z", "enableRules":[ { "services":[ "services/apikeys.googleapis.com", "services/compute.googleapis.com", "services/oslogin.googleapis.com", "services/serviceusage.googleapis.com", "services/bigquery.googleapis.com" ] } ], "etag":"W/\"W9nsVJK0V1m7ee7tM7pFDg==\"", "name":"projects/PROJECT_ID/consumerPolicies/default", "updateTime":"2025-09-11T23:05:22.758394Z" }
- Habilitar el servicio BigQuery con sus dependencias:
gcloud beta services enable bigquery.googleapis.com
Resultado:
Operation [operations/ucpat.p39-581601899707-73192b0f-053c-46ee-911a-7eca6b8fe899] complete. Result: { "@type":"type.googleapis.com/google.api.serviceusage.with Hierarchical Service Activationbeta.ConsumerPolicy", "createTime":"2025-01-31T20:17:37.272343Z", "enableRules":[ { "services":[ "services/apikeys.googleapis.com", "services/compute.googleapis.com", "services/oslogin.googleapis.com", "services/serviceusage.googleapis.com", "services/cloudresourcemanager.googleapis.com", "services/dataplex.googleapis.com", "services/bigquery.googleapis.com", "services/bigquerystorage.googleapis.com", "services/bigqueryconnection.googleapis.com", "services/analyticshub.googleapis.com", "services/bigquerymigration.googleapis.com", "services/dataform.googleapis.com", "services/bigquerydatapolicy.googleapis.com", "services/bigquerydatatransfer.googleapis.com", "services/bigqueryreservation.googleapis.com" ] } ], "etag":"W/\"FDXMAIdsBW7BrXjL7oP6FA==\"", "name":"projects/PROJECT_ID/consumerPolicies/default", "updateTime":"2025-09-12T19:44:23.675769Z" }
- Intentando inhabilitar el servicio BigQuery con dependencias activas:
gcloud beta services disable bigquery.googleapis.com
Mensaje de error:
ERROR: (gcloud.beta.services.disable) The services are depended on by the following active service(s) {"bigquery.googleapis.com": ["services/bigquerystorage.googleapis.com"]} . Please remove the active dependent services or provide the --disable-dependency-services flag to disable them, or --bypass-dependency-service-check to ignore this check.
- Intentando inhabilitar el servicio BigQuery con un uso reciente:
gcloud beta services disable bigquery.googleapis.com --disable-dependency-services
Mensaje de error:
ERROR: (gcloud.beta.services.disable) The operation "operations/ucpat.p39-581601899707-d35c2e2b-d2a3-47af-a1c0-033ed65df236" resulted in a failure "The services bigquery.googleapis.com,bigquerystorage.googleapis.com have usage in the last 30 days or were enabled in the past 3 days. Please specify force if you want to proceed with the destructive policy change.
- Inhabilitar el servicio BigQuery y sus dependencias y omitir la comprobación de uso:
gcloud beta services disable bigquery.googleapis.com --disable-dependency-services --bypass-api-usage-check
Resultado:
Operation [operations/ucpat.p39-581601899707-5c02aa04-7ad7-4eb6-a6a1-dc68653bcdb4] complete. Result: { "@type":"type.googleapis.com/google.api.serviceusage.v2beta.ConsumerPolicy", "createTime":"2025-01-31T20:17:37.272343Z", "enableRules":[ { "services":[ "services/analyticshub.googleapis.com", "services/apikeys.googleapis.com", "services/bigqueryconnection.googleapis.com", "services/bigquerydatapolicy.googleapis.com", "services/bigquerydatatransfer.googleapis.com", "services/bigquerymigration.googleapis.com", "services/bigqueryreservation.googleapis.com", "services/cloudresourcemanager.googleapis.com", "services/compute.googleapis.com", "services/dataform.googleapis.com", "services/dataplex.googleapis.com", "services/oslogin.googleapis.com", "services/serviceusage.googleapis.com" ] } ], "etag":"W/\"TqbPaELDHlZQOj7As1P06g==\"", "name":"projects/PROJECT_ID/consumerPolicies/default", "updateTime":"2025-09-30T21:39:40.746125Z" }
- Para gestionar las políticas, consulta Gestionar políticas de consumidor.
- Para inspeccionar las dependencias de servicios, consulta Lista de dependencias de servicios.
Roles obligatorios
Para obtener los permisos que necesitas para gestionar la habilitación de servicios, pide a tu administrador que te conceda el rol de gestión de identidades y accesos Administrador de Uso de Servicio (roles/serviceusage.serviceUsageAdmin) en el recurso de destino.
Para obtener más información sobre cómo conceder roles, consulta el artículo Gestionar acceso a proyectos, carpetas y organizaciones.
Este rol predefinido contiene los permisos necesarios para gestionar la habilitación de servicios. Para ver los permisos exactos que se necesitan, despliega la sección Permisos necesarios:
Permisos obligatorios
Para gestionar la habilitación de servicios, se necesitan los siguientes permisos:
También puedes obtener estos permisos con roles personalizados u otros roles predefinidos.
Mostrar servicios
Puedes consultar las APIs y los servicios de Google que están habilitados o disponibles para un proyecto, una carpeta o una organización mediante el comando gcloud beta services list.
La habilitación y la disponibilidad de los servicios se pueden heredar de los ancestros de los recursos. Los servicios habilitados de un recurso incluyen los servicios que están habilitados en el propio recurso y en todos los recursos antecesores.
Proyecto
gcloud beta services list --enabled \
--project=PROJECT_ID
Sustituye PROJECT_ID por el Google Cloud ID de tu proyecto.
También puedes omitir la marca para usar el proyecto actual de forma predeterminada.
Carpeta
gcloud beta services list --enabled \
--folder=FOLDER_ID
Sustituye FOLDER_ID por el Google Cloud ID de carpeta.
Organización
gcloud beta services list --enabled \
--organization=ORGANIZATION_ID
Sustituye ORGANIZATION_ID por el Google Cloud ID de recurso de tu organización.
Ten en cuenta lo siguiente:
Activación de servicios
Puedes habilitar uno o varios servicios en un proyecto, una carpeta o una organización mediante el comando gcloud beta services enable.
Este comando actualiza el ConsumerPolicy del recurso de destino. Para obtener más información, consulta el artículo Gestionar políticas de consumidor.
Proyecto
gcloud beta services enable SERVICE \
--project=PROJECT_ID
Haz los cambios siguientes:
Carpeta
gcloud beta services enable SERVICE \
--folder=FOLDER_ID
Haz los cambios siguientes:
Organización
gcloud beta services enable SERVICE \
--organization=ORGANIZATION_ID
Haz los cambios siguientes:
Marcas admitidas:
Ten en cuenta lo siguiente:
Inhabilitar servicios
Puedes inhabilitar uno o varios servicios de un proyecto, una carpeta o una organización mediante el comando gcloud beta services disable.
Este comando actualiza el ConsumerPolicy del recurso de destino. Para obtener más información, consulta el artículo Gestionar políticas de consumidor.
Proyecto
gcloud beta services disable SERVICE \
--project=PROJECT_ID
Haz los cambios siguientes:
Carpeta
gcloud beta services disable SERVICE \
--folder=FOLDER_ID
Haz los cambios siguientes:
Organización
gcloud beta services disable SERVICE \
--organization=ORGANIZATION_ID
Haz los cambios siguientes:
Marcas admitidas: