> ## Documentation Index
> Fetch the complete documentation index at: https://docs.enclave.ai/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> Enclave in these docs is the code and cloud security platform at enclave.ai. It is not Open Enclave, Intel SGX or other hardware enclaves, or enclave.gg.
> People use Enclave in the web app at https://app.enclave.ai or the desktop app. These docs describe no public Enclave API or CLI, so don't invent endpoints, commands, or config files.
> Connecting an integration needs a person to sign in and approve access in a browser. Tell the user the exact step to take instead of saying you completed it.

# GCP

> Conecta proyectos de Google Cloud con una cuenta de servicio de solo lectura y sin claves almacenadas.

Conecta un proyecto de Google Cloud para que Enclave pueda mapear sus recursos e identidades y vincularlos con tu código. El acceso es de solo lectura, y no se crea ni se almacena ninguna clave de cuenta de servicio.

## Qué necesita Enclave

El comando de configuración crea estos recursos en tu proyecto:

* Un **Workload Identity pool** con un proveedor que solo confía en la identidad del escáner de Enclave.
* Una **cuenta de servicio del escáner** que Enclave suplanta.
* **Asignaciones de roles de solo lectura** para esa cuenta de servicio.

También habilita en el proyecto las API de IAM, IAM Credentials, Cloud Resource Manager, Security Token Service y Cloud Asset.

La cuenta de servicio recibe estos roles:

| Rol | Qué lee |
| - | - |
| `roles/compute.viewer` | Instancias, redes, subredes, firewalls y balanceadores de carga de Compute Engine |
| `roles/container.viewer` | Clústeres de GKE |
| `roles/run.viewer` | Servicios de Cloud Run |
| `roles/cloudfunctions.viewer` | Cloud Functions |
| `roles/dns.reader` | Zonas de Cloud DNS |
| `roles/artifactregistry.reader` | Repositorios de Artifact Registry |
| `roles/storage.bucketViewer` | Solo los metadatos de los buckets de Cloud Storage, no los objetos |
| `roles/iam.securityReviewer` | Políticas de IAM y cuentas de servicio |
| `roles/cloudasset.viewer` | Cloud Asset Inventory |
| `roles/serviceusage.serviceUsageConsumer` | Llamar a las API de lectura anteriores |
| `roles/browser` | Metadatos del proyecto y de la jerarquía |

### Quién puede ejecutar la configuración

Quien ejecute el comando en Cloud Shell necesita **Owner** en el proyecto. O bien todos estos roles:

* `roles/iam.workloadIdentityPoolAdmin`
* `roles/iam.serviceAccountAdmin`
* `roles/serviceusage.serviceUsageAdmin`
* `roles/resourcemanager.projectIamAdmin`

En Enclave, necesitas el rol **Owner** o **Admin**.

## Conectar un proyecto

**1. Abre la página de configuración**

Abre **Settings → Integrations** y haz clic en **Connect** junto a **Google Cloud**.

**2. Escribe el ID de tu proyecto**

Escribe el **GCP project ID** que quieres conectar. Para encontrarlo, ejecuta `gcloud projects list`. Enclave genera un comando de configuración de una línea para ese proyecto.

**3. Ejecuta el comando en Cloud Shell**

Copia el comando y ejecútalo en [Google Cloud Shell](https://shell.cloud.google.com), o en un terminal donde `gcloud` tenga la sesión iniciada.

> [!WARNING]
>
> El comando contiene un token de configuración de un solo uso. No lo guardes en un archivo versionado ni lo pegues en un log compartido.

**4. Espera a que Enclave lo detecte**

Enclave espera a que termine la configuración y avanza por sí solo. Cuando veas **Connection complete!**, el proyecto está conectado y Enclave empieza a analizarlo.

**5. Añade más proyectos**

Haz clic en **Add another project** para conectar otro proyecto, o en **Done** para terminar.

> [!TIP]
>
> Haz clic en **I'll finish later** para guardar la conexión y volver más tarde. Vuelve a abrirla desde **Settings → Integrations → Google Cloud**.

## Gestionar una conexión

Abre **Settings → Integrations → Google Cloud** para ver tus proyectos conectados.

* **Re-validate** comprueba que Enclave todavía puede leer un proyecto.
* **Remove** deja de analizar un proyecto.
* **Add project** conecta otro proyecto.
* **Disconnect GCP** elimina toda la conexión y deja de analizar.

Para revocar el acceso desde Google Cloud, elimina la cuenta de servicio del escáner o el Workload Identity pool que creó la configuración.

## Qué hará Enclave y qué no

* **Hará**: leer la configuración y los metadatos que permiten los roles anteriores.
* **No hará**: crear, cambiar ni eliminar recursos, leer los objetos de tus buckets ni almacenar una credencial de larga duración. Cada análisis usa un token de acceso de corta duración que dura aproximadamente una hora.

## Solución de problemas

> [accordion] La página sigue esperando después de ejecutar el comando
>
> Revisa la salida del comando en Cloud Shell. Si falló, corrige el error y vuelve a abrir la conexión para obtener un comando nuevo. El token de configuración solo funciona una vez, así que no vuelvas a ejecutar un comando antiguo que ya se usó.

> [accordion] El comando falla con un error de permisos
>
> A la cuenta que lo ejecutó le falta un rol. Concede **Owner** o los cuatro roles de administrador que aparecen en [Quién puede ejecutar la configuración](#qui%C3%A9n-puede-ejecutar-la-configuraci%C3%B3n) y ejecuta un comando nuevo.

> [accordion] Enclave no acepta el ID del proyecto
>
> Los ID de proyecto tienen entre 6 y 30 caracteres: letras minúsculas, dígitos y guiones. Empiezan por una letra y terminan en una letra o un dígito. Usa el ID del proyecto, no su nombre ni su número.

> [accordion] Los activos no aparecen en Coverage
>
> Los análisis se ejecutan cuando se conecta un proyecto y, después, una vez al día. Para analizar ahora, haz clic en **Analyze Environment** en [Coverage](https://docs.enclave.ai/es/onboarding/coverage.md).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.