

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Gestión de claves en AWS IoT FleetWise
<a name="key-management"></a>

**importante**  
El acceso a ciertas FleetWise funciones de AWS IoT está actualmente restringido. Para obtener más información, consulte [AWS Disponibilidad regional y de funciones en el AWS IoT FleetWise](fleetwise-regions.md).

## AWS Gestión de claves FleetWise en la nube de IoT
<a name="key-cloud"></a>

De forma predeterminada, AWS IoT FleetWise utiliza Claves administradas por AWS para proteger sus datos en el Nube de AWS. Puede actualizar la configuración para usar una clave administrada por el cliente para cifrar los datos en el AWS IoT FleetWise. Puede crear, administrar y ver su clave de cifrado mediante AWS Key Management Service (AWS KMS).

AWS FleetWise El IoT admite el cifrado del lado del servidor con claves administradas por el cliente almacenadas AWS KMS para cifrar los datos de los siguientes recursos.


****  
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/iot-fleetwise/latest/developerguide/key-management.html)

**nota**  
Otros datos y recursos se cifran mediante el cifrado predeterminado con claves gestionadas por el AWS IoT FleetWise. Esta clave se crea y almacena en la FleetWise cuenta de AWS IoT.

Para obtener más información, consulta [¿Qué es AWS Key Management Service?](https://docs.aws.amazon.com/kms/latest/developerguide/overview.html) en la *Guía para AWS Key Management Service desarrolladores*. 

## Activación del cifrado mediante claves KMS (consola)
<a name="CMK-setup"></a>

Para usar claves administradas por el cliente con AWS IoT FleetWise, debes actualizar tu FleetWise configuración de AWS IoT.

**Para habilitar el cifrado mediante claves KMS (consola)**

1. Abre la [ FleetWise consola AWS de IoT](https://console.aws.amazon.com/iotfleetwise/).

1. Vaya a **Configuración**.

1. En **Cifrado**, elija **Editar** para abrir la página **Editar cifrado**. 

1.  En **Tipo de clave de cifrado**, **selecciona Elegir una AWS KMS clave diferente**. Esto habilita el cifrado con las claves administradas por el cliente almacenadas en AWS KMS.
**nota**  
Solo puede usar el cifrado de claves gestionado por el cliente para FleetWise los recursos de AWS IoT. Esto incluye el catálogo de señales, el modelo del vehículo (manifiesto del modelo), el manifiesto del decodificador, el vehículo, la flota y la campaña.

1. Elija la clave KMS con una de las siguientes opciones:
   + **Para usar una clave KMS existente**: elija el alias de su clave KMS de la lista. 
   + **Para crear una nueva clave KMS**, selecciona **Crear una AWS KMS clave**.
**nota**  
Esto abre la AWS KMS consola. Para obtener más información sobre la creación de una clave KMS, consulte [Creación de claves](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html) en la *Guía para desarrolladores de AWS Key Management Service *.

1. Elija **Guardar** para actualizar la configuración.

## Habilitación del cifrado mediante claves KMS (AWS CLI).
<a name="encryption-cli"></a>

Puedes usar la operación de la [PutEncryptionConfiguration](https://docs.aws.amazon.com/iot-fleetwise/latest/APIReference/API_GetEncryptionConfiguration.html)API para habilitar el cifrado de tu FleetWise cuenta de AWS IoT. En el siguiente ejemplo, se utiliza AWS CLI.

Para activar el cifrado, ejecute el siguiente comando:
+ *kms\$1key\$1id*Sustitúyala por el ID de la clave KMS.

```
aws iotfleetwise put-encryption-configuration \
      --encryption-type KMS_BASED_ENCRYPTION \
      --kms-key-id kms_key_id
```

**Example Respuesta**  

```
{
 "kmsKeyId": "customer_kms_key_id",
 "encryptionStatus": "PENDING",
 "encryptionType": "KMS_BASED_ENCRYPTION"
}
```

## Política de claves de KMS
<a name="CMK-policy"></a>

Después de crear una clave de KMS, debe añadir, como mínimo, la siguiente declaración a su política de claves de KMS para que funcione con el AWS IoT FleetWise. El principio del FleetWise servicio de AWS IoT `iotfleetwise.amazonaws.com` en la declaración de política clave del KMS permite que el AWS IoT acceda FleetWise a la clave del KMS.

```
{
  "Sid": "Allow FleetWise to encrypt and decrypt data when customer managed KMS key based encryption is enabled",
  "Effect": "Allow",
  "Principal": {
    "Service": "iotfleetwise.amazonaws.com"
  },
  "Action": [
    "kms:GenerateDataKey*",
    "kms:Encrypt",
    "kms:Decrypt",
    "kms:ReEncrypt*",
    "kms:DescribeKey",
    "kms:CreateGrant",
    "kms:RetireGrant",
    "kms:RevokeGrant"
  ],
  "Resource": "*"
}
```

Como práctica recomendada de seguridad, añada `aws:SourceArn` y `aws:SourceAccount` condicione las claves a la política de claves del KMS. La clave de condición global de IAM `aws:SourceArn` ayuda a garantizar que AWS IoT FleetWise utilice la clave KMS solo para el recurso Amazon Resource Names () específico del servicio. ARNs

Si estableces el valor de`aws:SourceArn`, siempre debe ser así. `arn:aws:iotfleetwise:us-east-1:account_id:*` Esto permite que la clave KMS acceda a todos los FleetWise recursos de AWS IoT para ello Cuenta de AWS. AWS IoT FleetWise admite una clave KMS por cuenta para todos los recursos que contiene Región de AWS. Si se utiliza cualquier otro valor para el `SourceArn` campo de recursos del ARN o no se utiliza el comodín (\$1) en el campo de recursos del ARN, se impide que el AWS FleetWise IoT acceda a la clave KMS.

El valor de `aws:SourceAccount` es el identificador de su cuenta, que se utiliza para restringir aún más la clave de KMS, de modo que solo pueda usarse para su cuenta específica. Si agrega claves a la clave de KMS `aws:SourceAccount` y las `aws:SourceArn` condiciona, asegúrese de que ningún otro servicio o cuenta utilice la clave. Esto ayuda a evitar errores.

La siguiente política incluye una entidad principal de servicio (un identificador de un servicio), así como `aws:SourceAccount` una `aws:SourceArn` configuración para su uso en función de la ID de su cuenta Región de AWS y de la suya.

```
{
  "Sid": "Allow use of the key",
  "Effect": "Allow",
  "Principal": {
    "Service": "iotfleetwise.amazonaws.com"
  },
  "Action": [
    "kms:Encrypt",
    "kms:Decrypt",
    "kms:ReEncrypt*",
    "kms:GenerateDataKey*",
    "kms:DescribeKey"
  ],
  "Resource": "*",
  "Condition": {
    "StringLike": {
      "aws:SourceAccount": "AWS-account-ID"
    },
    "ArnLike": {
      "aws:SourceArn": "arn:aws:iotfleetwise:region:AWS-account-ID:*"
    }
  }
}
```

Para obtener más información sobre cómo editar una política de claves de KMS para usarla con AWS IoT FleetWise, consulte [Cambiar una política clave](https://docs.aws.amazon.com/kms/latest/developerguide/key-policy-modifying.html) en la *Guía para AWS Key Management Service desarrolladores*.

**importante**  
Cuando añada las nuevas secciones a su política de claves de KMS, no cambie ninguna sección existente de la política. AWS El IoT no FleetWise puede realizar operaciones con los datos si el cifrado está habilitado para la AWS IoT FleetWise y se cumple alguna de las siguientes condiciones:  
Se deshabilita o se elimina la clave KMS.
La política de claves de KMS no está configurada correctamente para el servicio.

## Permisos de AWS KMS cifrado
<a name="encryption-permissions"></a>

Si habilitó el AWS KMS cifrado, debe especificar los permisos en la política de roles para poder llamar a AWS IoT FleetWise APIs. La siguiente política permite el acceso a todas FleetWise las acciones de AWS IoT, así como a permisos AWS KMS específicos.

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "iotfleetwise:*",
        "kms:GenerateDataKey*",
        "kms:Encrypt",
        "kms:Decrypt",
        "kms:ReEncrypt*",
        "kms:DescribeKey"
      ],
      "Resource": [
        "*"
      ]
    }
  ]
}
```

------

La siguiente declaración de política es necesaria para que su función pueda invocar el cifrado APIs. Esta declaración de política permite `PutEncryptionConfiguration` y `GetEncryptionConfiguration` actúa desde el AWS IoT FleetWise.

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "iotfleetwise:GetEncryptionConfiguration", 
        "iotfleetwise:PutEncryptionConfiguration",
        "kms:GenerateDataKey*",
        "kms:Encrypt",
        "kms:Decrypt",
        "kms:ReEncrypt*",
        "kms:DescribeKey"
      ],
      "Resource": [
        "*"
      ]
    }
  ]
}
```

------

## Recuperación tras la eliminación de AWS KMS la clave
<a name="encryption-recovery"></a>

Si eliminas una AWS KMS clave después de habilitar el cifrado con AWS IoT FleetWise, debes restablecer tu cuenta eliminando todos los datos antes de FleetWise volver a usar AWS IoT. Puedes usar la lista y eliminar las operaciones de la API para limpiar los recursos de tu cuenta. 

**Para limpiar los recursos de tu cuenta**

1. Utilice la lista APIs con el `listResponseScope` parámetro establecido en`METADATA_ONLY`. Proporciona una lista de recursos, incluidos los nombres de los recursos y otros metadatos, como ARNs las marcas de tiempo.

1. Use delete APIs para eliminar recursos individuales.

Debe limpiar los recursos en el siguiente orden.

1. Campaigns (Campañas)

   1. Enumera todas las campañas con el `listResponseScope` parámetro establecido en`METADATA_ONLY`.

   1. Elimina las campañas.

1. Flotas y vehículos

   1. Enumere todas las flotas con el `listResponseScope` parámetro establecido en. `METADATA_ONLY`

   1. Enumere todos los vehículos de cada flota con el `listResponseScope` parámetro establecido en. `METADATA_ONLY`

   1. Desvincule todos los vehículos de cada flota.

   1. Elimine las flotas.

   1. Elimine los vehículos.

1. Manifiestos del decodificador

   1. Enumere todos los manifiestos del decodificador con el `listResponseScope` parámetro establecido en. `METADATA_ONLY`

   1. Elimine todos los manifiestos del decodificador.

1. Modelos de vehículos (manifiestos de modelos)

   1. Enumere todos los modelos de vehículos con el `listResponseScope` parámetro establecido en`METADATA_ONLY`.

   1. Elimine todos los modelos de vehículos.

1. Plantillas de estado

   1. Enumere todas las plantillas de estado con el `listResponseScope` parámetro establecido en`METADATA_ONLY`.

   1. Elimine todas las plantillas de estado.

1. Catálogos de señales

   1. Enumere todos los catálogos de señales.

   1. Elimine todos los catálogos de señales.