View a markdown version of this page

Administración de claves en AWS IoT FleetWise - AWS IoT FleetWise

AWS FleetWise El IoT ya no está abierto a nuevos clientes. FleetWise Los clientes actuales de AWS IoT pueden seguir utilizando el servicio. La Guía para la movilidad conectada AWS proporciona orientación sobre cómo desarrollar e implementar servicios modulares para soluciones de movilidad conectada que puedan usarse para lograr capacidades equivalentes a las del AWS IoT FleetWise.

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.

Administración de claves en AWS IoT FleetWise

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.

AWS Administración de claves FleetWise de IoT en la nube

De forma predeterminada, AWS IoT Claves administradas por AWS se FleetWise utiliza para proteger sus datos en el Nube de AWS. Puede actualizar su 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 a través de AWS Key Management Service (AWS KMS).

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

AWS Recurso de IoT FleetWise Tipo de datos: Campos que están cifrados en reposo con claves administradas por el cliente
Catálogo de señales description
Atributo

description, allowedValues, defaultValue, min, max

Actuador

description, allowedValues, min, max

Sensor

description, allowedValues, min, max

Modelo de vehículo (manifiesto del modelo) description
Manifiesto del decodificador description
CanInterface

protocolName, protocolVersion

ObdInterface

solicitudMessageId, etc, gasRequestIntervalSeconds, estándar OBDTransmissionEcu, pid, uso RequestIntervalSeconds ExtendedIds

CanSignal

factor, es, BigEndian isSigned, longitud, ID del mensaje, offset, startBit

ObdSignal

byteLength, offset, pid, pid, scaling, ServiceModeResponseLength, startByte, bit, bit MaskLength RightShift

Vehículo attributes
Campaña description
condición BasedCollectionScheme

expresión, condición, mínimo LanguageVersionTriggerIntervalMs, TriggerMode

TimeBasedCollectionScheme

periodMs

Plantilla de estado description
nota

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

Para obtener más información, consulte ¿Qué es AWS Key Management Service? en la Guía para AWS Key Management Service desarrolladores.

Activación del cifrado mediante claves KMS (consola)

Para usar las 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.

  2. Vaya a Configuración.

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

  4. Para el tipo de clave de cifrado, elige 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 administradas 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.

  5. 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 de KMS, elija 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 en la Guía para desarrolladores de AWS Key Management Service .

  6. Elija Guardar para actualizar la configuración.

Habilite el cifrado mediante claves de KMS (AWS CLI)

Puede usar la operación de la PutEncryptionConfiguration API para habilitar el cifrado de su FleetWise cuenta de AWS IoT. En el siguiente ejemplo se utiliza AWS CLI.

Para activar el cifrado, ejecute el siguiente comando:

  • kms_key_idSustitúyalo por el ID de la clave de KMS.

aws iotfleetwise put-encryption-configuration \ --encryption-type KMS_BASED_ENCRYPTION \ --kms-key-id kms_key_id
ejemplo Respuesta
{ "kmsKeyId": "customer_kms_key_id", "encryptionStatus": "PENDING", "encryptionType": "KMS_BASED_ENCRYPTION" }

Política de claves de KMS

Después de crear una clave de KMS, debe, como mínimo, agregar 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 que iotfleetwise.amazonaws.com figura en la declaración de política de claves de KMS permite FleetWise que AWS IoT acceda a la clave de 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, agregue aws:SourceArn y aws:SourceAccount condicione las claves a la política de claves de KMS. La clave de condición global de IAM aws:SourceArn ayuda a garantizar que AWS IoT FleetWise utilice la clave de KMS solo para los nombres de recursos de Amazon (ARN) de recursos específicos del servicio.

Si establece el valor deaws:SourceArn, siempre debe serlo. arn:aws:iotfleetwise:us-east-1:account_id:* Esto permite que la clave KMS acceda a todos los FleetWise recursos de AWS IoT necesarios para ello Cuenta de AWS. AWS IoT FleetWise admite una clave de KMS por cuenta para todos los recursos de esa cuenta Región de AWS. El uso de cualquier otro valor para el campo de recursos ARNSourceArn, o el no uso del comodín (*) para el campo de recursos ARN, impide que AWS IoT acceda a la FleetWise clave de KMS.

El valor de aws:SourceAccount es el identificador de su cuenta, que se usa para restringir aún más la clave de KMS, de modo que solo se pueda usar para su cuenta específica. Si agregas claves a la clave de KMS aws:SourceAccount y las aws:SourceArn condicionas, asegúrate de que no la utilice ningún otro servicio o cuenta. Esto ayuda a evitar errores.

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

{ "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 la edición de una política de claves de KMS para usarla con AWS IoT FleetWise, consulte Cambiar una política de claves 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 en la política. AWS El IoT no FleetWise puede realizar operaciones con tus datos si el cifrado está habilitado para el 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 para AWS KMS cifrado

Si has habilitado el AWS KMS cifrado, debes especificar los permisos en la política de funciones para poder llamar a FleetWise las API de AWS IoT. 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 las API de cifrado. Esta declaración de política permite PutEncryptionConfiguration y toma GetEncryptionConfiguration medidas 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 después AWS KMS eliminación de claves

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. Usa las API de lista con el listResponseScope parámetro establecido enMETADATA_ONLY. Esto proporciona una lista de recursos, incluidos los nombres de los recursos y otros metadatos, como los ARN y las marcas de tiempo.

  2. Usa las API de eliminación para eliminar recursos individuales.

Debes limpiar los recursos en el siguiente orden.

  1. Campaigns (Campañas)

    1. Enumera todas las campañas con el listResponseScope parámetro establecido enMETADATA_ONLY.

    2. Elimine las campañas.

  2. Flotas y vehículos

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

    2. Enumera todos los vehículos de cada flota con el listResponseScope parámetro establecido en. METADATA_ONLY

    3. Desasocie todos los vehículos de cada flota.

    4. Elimine las flotas.

    5. Elimine los vehículos.

  3. Manifiestos del decodificador

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

    2. Elimine todos los manifiestos del decodificador.

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

    1. Enumera todos los modelos de vehículos con el listResponseScope parámetro establecido enMETADATA_ONLY.

    2. Elimine todos los modelos de vehículos.

  5. Plantillas de estado

    1. Enumera todas las plantillas de estado con el listResponseScope parámetro establecido enMETADATA_ONLY.

    2. Elimine todas las plantillas de estado.

  6. Catálogos de señales

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

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