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

# Claves gestionadas por el cliente

> Usa tu propia clave de AWS KMS para cifrar los datos en reposo de tu despliegue dedicado de Devin Enterprise.

<div id="overview">
  ## Descripción general
</div>

De forma predeterminada, Cognition cifra todos los datos de los clientes en reposo mediante claves gestionadas por Cognition. Para las organizaciones que necesitan control directo sobre sus claves de cifrado, Devin es compatible con **claves gestionadas por el cliente (CMK)** mediante [AWS Key Management Service (KMS)](https://aws.amazon.com/kms/).

Con CMK, proporcionas tu propia clave de AWS KMS y Cognition la utiliza para cifrar los datos almacenados en tu tenant dedicado, incluidos los datos de sesión y las instantáneas de VM. Esto te da control total sobre el ciclo de vida de la clave, incluida la capacidad de rotarla, deshabilitarla o revocar el acceso en cualquier momento.

<Note>
  CMK está disponible exclusivamente para despliegues **Enterprise Dedicated** y debe configurarse durante la configuración inicial del despliegue. Para obtener más información sobre los modelos de despliegue, consulta [Despliegue Enterprise](/es/enterprise/deployment/overview).
</Note>

<div id="how-it-works">
  ## Cómo funciona
</div>

En un despliegue dedicado Enterprise, Devin almacena los datos del cliente en buckets de Amazon S3 dentro de tu tenant dedicado. Cuando se habilita CMK:

1. Tu clave de AWS KMS se utiliza para el **cifrado del lado del servidor** de todos los datos escritos en estos buckets de S3.
2. La infraestructura de Cognition usa la clave para cifrar los datos al escribirse y descifrarlos al leerse.
3. Conservas la propiedad de la clave en tu propia cuenta de AWS y puedes gestionar su ciclo de vida de forma independiente.

Si no proporcionas una clave de KMS, Cognition crea y gestiona una clave de cifrado en tu nombre.

<div id="prerequisites">
  ## Requisitos previos
</div>

Antes de configurar CMK, asegúrate de contar con lo siguiente:

* Un despliegue **Enterprise Dedicated** con Cognition (CMK debe configurarse durante el despliegue inicial)
* Una **clave de AWS KMS** en la **misma región de AWS** que tu despliegue de Devin
* Permisos para modificar la política de tu clave de KMS y crear alias de claves

<Info>
  Ponte en contacto con el equipo de cuentas de Cognition para confirmar la región de AWS de tu tenant dedicado.
</Info>

<div id="setup">
  ## Configuración
</div>

<div id="step-1-create-or-select-a-kms-key">
  ### Paso 1: Crear o seleccionar una clave de KMS
</div>

Usa una clave simétrica existente de AWS KMS o [crea una nueva](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html) en la misma región que tu tenant dedicado de Cognition. La clave debe ser una **clave de cifrado simétrica** (el tipo de clave predeterminado de AWS KMS).

<div id="step-2-add-a-key-alias">
  ### Paso 2: Agregar un alias de clave
</div>

Agrega el alias **`devin-customer-managed-key`** a tu clave de KMS. La infraestructura de Cognition requiere este alias exacto para localizar y usar la clave para el cifrado.

<Tabs>
  <Tab title="Consola de AWS">
    1. Abre la [consola de AWS KMS](https://console.aws.amazon.com/kms).
    2. Selecciona tu clave y ve a la pestaña **Aliases**.
    3. Elige **Create alias**.
    4. Ingresa `devin-customer-managed-key` como nombre del alias.
    5. Guarda el alias.
  </Tab>

  <Tab title="AWS CLI">
    ```bash theme={null}
    aws kms create-alias \
        --alias-name alias/devin-customer-managed-key \
        --target-key-id <your-key-id>
    ```
  </Tab>
</Tabs>

<div id="step-3-configure-the-key-policy">
  ### Paso 3: Configurar la política de la clave
</div>

Actualiza la política de tu clave de KMS para permitir que las cuentas de AWS de Cognition usen la clave para cifrar y descifrar. Agrega la siguiente declaración a la política de tu clave:

```json theme={null}
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "AWS": [
                    "arn:aws:iam::272506498303:root",
                    "arn:aws:iam::063509147090:root"
                ]
            },
            "Action": [
                "kms:Encrypt",
                "kms:Decrypt",
                "kms:ReEncrypt*",
                "kms:GenerateDataKey*",
                "kms:DescribeKey"
            ],
            "Resource": "*"
        }
    ]
}
```

<Tabs>
  <Tab title="Consola de AWS">
    1. Abre la [consola de AWS KMS](https://console.aws.amazon.com/kms).
    2. Selecciona tu clave y ve a la pestaña **Key policy**.
    3. Elige **Edit**.
    4. Agrega la declaración anterior al arreglo `Statement` de la política de tu clave existente.
    5. Guarda la política.
  </Tab>

  <Tab title="AWS CLI">
    ```bash theme={null}
    # Primero, obtén la política actual de tu clave
    aws kms get-key-policy \
        --key-id <your-key-id> \
        --policy-name default \
        --output text > key-policy.json

    # Edita key-policy.json para agregar la declaración anterior
    # y luego aplica la política actualizada
    aws kms put-key-policy \
        --key-id <your-key-id> \
        --policy-name default \
        --policy file://key-policy.json
    ```
  </Tab>
</Tabs>

<div id="step-4-provide-the-key-arn-to-cognition">
  ### Paso 4: Proporciona el ARN de la clave a Cognition
</div>

Envía el ARN de tu clave de KMS al equipo de cuentas de Cognition. El ARN tiene el siguiente formato:

```text theme={null}
arn:aws:kms:<region>:<your-account-id>:key/<key-id>
```

Una vez que Cognition reciba el ARN de tu clave, el equipo configurará tu tenant dedicado para usarlo en el cifrado. No se requiere ninguna otra acción por tu parte.

<div id="key-management">
  ## Gestión de claves
</div>

<div id="key-rotation">
  ### Rotación de claves
</div>

AWS KMS admite la [rotación automática de claves](https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html) para las claves gestionadas por el cliente. Cuando está habilitada, AWS crea automáticamente nuevo material criptográfico para tu clave cada año, mientras conserva el material anterior para descifrar datos previamente cifrados. Cognition recomienda habilitar la rotación automática de claves.

<div id="revoking-access">
  ### Revocar el acceso
</div>

Puedes revocar el acceso de Cognition a tu clave de KMS en cualquier momento eliminando la declaración de política agregada en el [Paso 3](#step-3-configure-the-key-policy). Ten en cuenta que, al revocar el acceso, Cognition no podrá leer ni escribir datos cifrados en tu tenant, lo que afectará al funcionamiento de Devin hasta que se restablezca el acceso.

<Warning>
  Deshabilitar o eliminar tu clave de KMS, o revocar el acceso de Cognition, hará que todos los datos cifrados de clientes en tu tenant queden ilegibles. Asegúrate de comprender las implicaciones antes de hacer cambios en tu clave o en su política.
</Warning>

<div id="monitoring-key-usage">
  ### Supervisión del uso de la clave
</div>

Puedes supervisar todo el uso de tu clave de KMS a través de [AWS CloudTrail](https://docs.aws.amazon.com/kms/latest/developerguide/logging-using-cloudtrail.html). CloudTrail registra cada llamada a la API hecha con tu clave, incluidas las llamadas desde las cuentas de Cognition, lo que proporciona un registro de auditoría completo de las operaciones de cifrado y descifrado.

<div id="faqs">
  ## Preguntas frecuentes
</div>

<AccordionGroup>
  <Accordion title="¿Qué datos se cifran con mi clave de KMS?">
    Tu clave de KMS se utiliza para cifrar los datos del cliente almacenados en Amazon S3 dentro de tu tenant dedicado, incluidos los datos de sesión y las instantáneas de VM.
  </Accordion>

  <Accordion title="¿Puedo usar una clave de KMS de otra región de AWS?">
    No. Tu clave de KMS debe estar en la misma región de AWS que tu despliegue de Devin. Ponte en contacto con tu equipo de cuenta de Cognition para confirmar la región de tu tenant.
  </Accordion>

  <Accordion title="¿Qué ocurre si no proporciono una clave de KMS?">
    Cognition creará y gestionará una clave de cifrado en tu nombre. Todos los datos seguirán cifrados en reposo; CMK simplemente te da control directo sobre la clave.
  </Accordion>

  <Accordion title="¿CMK está disponible para despliegues de Enterprise Cloud?">
    No. Actualmente, CMK solo está disponible para despliegues de Enterprise Dedicated.
  </Accordion>

  <Accordion title="¿Puedo cambiar mi clave de KMS después de la configuración inicial?">
    Sí. Ponte en contacto con tu equipo de cuenta de Cognition para actualizar el ARN de la clave de KMS de tu tenant. Los datos cifrados previamente permanecerán cifrados con la clave original, a menos que se vuelvan a cifrar.
  </Accordion>
</AccordionGroup>
