Gestione delle chiavi in AWS IoT FleetWise - AWS IoT FleetWise

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Gestione delle chiavi in AWS IoT FleetWise

Importante

L'accesso a determinate FleetWise funzionalità AWS IoT è attualmente limitato. Per ulteriori informazioni, consulta AWS Disponibilità di aree e funzionalità nell' AWS IoT FleetWise.

AWS Gestione delle chiavi FleetWise cloud IoT

Per impostazione predefinita, AWS IoT FleetWise utilizza Chiavi gestite da AWS per proteggere i dati in Cloud AWS. Puoi aggiornare le impostazioni per utilizzare una chiave gestita dal cliente per crittografare i dati in AWS IoT FleetWise. Puoi creare, gestire e visualizzare la tua chiave di crittografia tramite AWS Key Management Service (AWS KMS).

AWS L'IoT FleetWise supporta la crittografia lato server con chiavi gestite dal cliente archiviate AWS KMS per crittografare i dati per le seguenti risorse.

AWS FleetWise Risorsa IoT Tipo di dati Campi crittografati inattivi con chiavi gestite dal cliente
Catalogo dei segnali description
Attributo

descrizione, AllowedValues, defaultValue, min, max

Actuator

descrizione, AllowedValues, min, max

Sensor

descrizione, AllowedValues, min, max

Modello di veicolo (manifesto del modello) description
Manifesto del decoder description
CanInterface

Nome del protocollo, versione del protocollo

ObdInterface

requestMessageId, dtcRequestInterval Secondi,, Standard OBD hasTransmissionEcu, Secondi, pidRequestInterval useExtendedIds

CanSignal

fattore, isSigned isBigEndian, lunghezza, messageID, offset, startBit

ObdSignal

ByteLength, offset, pid, scaling, ServiceMode, startByte, pidResponseLength bitMaskLength bitRightShift

Veicolo attributes
Campagna description
conditionBasedCollectionSchema

espressione,, minimumTriggerInterval Ms conditionLanguageVersion, TriggerMode

TimeBasedCollectionScheme

Periodo/MS

Modello di stato description
Nota

Altri dati e risorse vengono crittografati utilizzando la crittografia predefinita con chiavi gestite da AWS IoT FleetWise. Questa chiave viene creata e archiviata nell' FleetWise account AWS IoT.

Per ulteriori informazioni, consulta Cos'è AWS Key Management Service? nella Guida per gli AWS Key Management Service sviluppatori.

Abilita la crittografia utilizzando le chiavi KMS (console)

Per utilizzare le chiavi gestite dai clienti con AWS IoT FleetWise, devi aggiornare FleetWise le impostazioni AWS IoT.

Per abilitare la crittografia utilizzando le chiavi KMS (console)
  1. Apri la FleetWise console AWS IoT.

  2. Vai a Impostazioni.

  3. In Crittografia, scegli Modifica per aprire la pagina Modifica crittografia.

  4. Per Tipo di chiave di crittografia, scegli Scegli una AWS KMS chiave diversa. Ciò consente la crittografia con chiavi gestite dal cliente archiviate in AWS KMS.

    Nota

    Puoi utilizzare solo la crittografia a chiave gestita dal cliente per FleetWise le risorse AWS IoT. Ciò include il catalogo dei segnali, il modello del veicolo (manifesto del modello), il manifesto del decodificatore, il veicolo, la flotta e la campagna.

  5. Scegli la tua chiave KMS con una delle seguenti opzioni:

    • Per utilizzare una chiave KMS esistente: scegli l'alias della tua chiave KMS dall'elenco.

    • Per creare una nuova chiave KMS, scegli Crea una chiave. AWS KMS

      Nota

      Questo apre la AWS KMS console. Per ulteriori informazioni sulla creazione di una chiave KMS, consulta Creating keys nella AWS Key Management Service Developer Guide.

  6. Scegli Salva per aggiornare le impostazioni.

Abilita la crittografia utilizzando le chiavi KMS ()AWS CLI

Puoi utilizzare l'operazione PutEncryptionConfigurationAPI per abilitare la crittografia per il tuo FleetWise account AWS IoT. L'esempio seguente utilizza AWS CLI.

Per abilitare la crittografia, esegui il comando seguente.

  • Sostituisci KMS key id con l'ID della chiave KMS.

aws iotfleetwise put-encryption-configuration —kms-key-id KMS key id —encryption-type KMS_BASED_ENCRYPTION
Esempio response
{ "kmsKeyId": "customer_kms_key_id", "encryptionStatus": "PENDING", "encryptionType": "KMS_BASED_ENCRYPTION" }

Policy della chiave KMS

Dopo aver creato una chiave KMS, devi almeno aggiungere la seguente dichiarazione alla tua politica delle chiavi KMS affinché funzioni con l'IoT AWS . FleetWise Il principio del FleetWise servizio AWS IoT iotfleetwise.amazonaws.com nella dichiarazione sulla politica della chiave KMS consente FleetWise a AWS IoT di accedere alla chiave 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:Decrypt", "kms:DescribeKey", "kms:CreateGrant", "kms:RetireGrant", "kms:RevokeGrant" ], "Resource": "*" }

Come best practice di sicurezza, aggiungi aws:SourceArn e aws:SourceAccount condiziona le chiavi alla policy delle chiavi KMS. La chiave di condizione globale IAM aws:SourceArn aiuta a garantire che l' AWS IoT FleetWise utilizzi la chiave KMS solo per la risorsa specifica del servizio Amazon Resource Names (). ARNs

Se imposti il valore diaws:SourceArn, deve sempre esserlo. arn:aws:iotfleetwise:us-east-1:account_id:* Ciò consente alla chiave KMS di accedere a tutte le FleetWise risorse AWS IoT per questo Account AWS. AWS L'IoT FleetWise supporta una chiave KMS per account per tutte le risorse disponibili. Regione AWS L'utilizzo di qualsiasi altro valore per il SourceArn campo di risorse ARN o il mancato utilizzo del carattere jolly (*) per il campo di risorse ARN impedisce all' AWS FleetWise IoT di accedere alla chiave KMS.

Il valore di aws:SourceAccount è l'ID del tuo account, che viene utilizzato per limitare ulteriormente la chiave KMS in modo che possa essere utilizzata solo per il tuo account specifico. Se aggiungi aws:SourceAccount e aws:SourceArn condiziona delle chiavi alla chiave KMS, assicurati che la chiave non venga utilizzata da nessun altro servizio o account. Questo aiuta a evitare errori.

La seguente politica include un servizio principale (un identificatore per un servizio), nonché aws:SourceAccount una aws:SourceArn configurazione per l'uso in base all'ID Regione AWS e all'account dell'utente.

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

Per ulteriori informazioni sulla modifica di una policy chiave KMS da utilizzare con AWS IoT FleetWise, consulta Changing a key policy nella AWS Key Management Service Developer Guide.

Importante

Quando aggiungi le nuove sezioni alla tua politica delle chiavi KMS, non modificare le sezioni esistenti nella politica. AWS L'IoT non FleetWise può eseguire operazioni sui dati se la crittografia è abilitata per l' AWS IoT FleetWise e si verifica una delle seguenti condizioni:

  • La chiave KMS è disabilitata o eliminata.

  • La politica delle chiavi KMS non è configurata correttamente per il servizio.

Autorizzazioni per la crittografia AWS KMS

Se hai abilitato AWS KMS la crittografia, devi specificare le autorizzazioni nella policy del ruolo in modo da poter chiamare l' AWS IoT FleetWise APIs. La seguente policy consente l'accesso a tutte le FleetWise azioni AWS IoT, oltre a permessi AWS KMS specifici.

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

La seguente dichiarazione politica è necessaria per consentire al ruolo dell'utente di richiamare la crittografia. APIs Questa dichiarazione politica consente PutEncryptionConfiguration le GetEncryptionConfiguration azioni dell' AWS IoT FleetWise.

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

Ripristino dopo l'eliminazione AWS KMS della chiave

Se elimini una AWS KMS chiave dopo aver abilitato la crittografia con AWS IoT FleetWise, devi reimpostare l'account eliminando tutti i dati prima di utilizzare FleetWise nuovamente l' AWS IoT. Puoi utilizzare l'elenco ed eliminare le operazioni API per ripulire le risorse del tuo account.

Per ripulire le risorse del tuo account
  1. Usa la lista APIs con il listResponseScope parametro impostato suMETADATA_ONLY. Viene fornito un elenco di risorse, inclusi i nomi delle risorse e altri metadati come i ARNs timestamp.

  2. Usa delete APIs per rimuovere singole risorse.

È necessario pulire le risorse nell'ordine seguente.

  1. Campagne

    1. Elenca tutte le campagne con il listResponseScope parametro impostato suMETADATA_ONLY.

    2. Elimina le campagne.

  2. Flotte e veicoli

    1. Elenca tutte le flotte con il listResponseScope parametro impostato su. METADATA_ONLY

    2. Elenca tutti i veicoli di ogni flotta con il listResponseScope parametro impostato METADATA_ONLY su.

    3. Dissocia tutti i veicoli da ogni flotta.

    4. Elimina le flotte.

    5. Eliminare i veicoli.

  3. Manifesti del decoder

    1. Elenca tutti i manifesti del decoder con il listResponseScope parametro impostato su. METADATA_ONLY

    2. Eliminare tutti i manifesti del decoder.

  4. Modelli di veicoli (manifesti dei modelli)

    1. Elenca tutti i modelli di veicoli con il listResponseScope parametro impostato METADATA_ONLY su.

    2. Elimina tutti i modelli di veicolo.

  5. Modelli di stato

    1. Elenca tutti i modelli di stato con il listResponseScope parametro impostato suMETADATA_ONLY.

    2. Eliminare tutti i modelli di stato.

  6. Cataloghi di segnali

    1. Elenca tutti i cataloghi di segnali.

    2. Elimina tutti i cataloghi di segnali.