View a markdown version of this page

Gerenciamento de chaves em AWS IoT FleetWise - AWS IoT FleetWise

AWS A IoT não FleetWise está mais aberta a novos clientes. FleetWise Os clientes de AWS IoT existentes podem continuar usando o serviço. O Guia para Mobilidade Conectada em AWS fornece orientação sobre como desenvolver e implantar serviços modulares para soluções de mobilidade conectada que podem ser usadas para obter recursos equivalentes aos da AWS IoT FleetWise.

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Gerenciamento de chaves em AWS IoT FleetWise

Importante

Atualmente, o acesso a determinados FleetWise recursos da AWS IoT está bloqueado. Para obter mais informações, consulte AWS Disponibilidade de regiões e recursos na AWS IoT FleetWise.

AWS Gerenciamento de chaves de FleetWise nuvem de IoT

Por padrão, AWS a IoT FleetWise usa Chaves gerenciadas pela AWS para proteger seus dados no Nuvem AWS. Você pode atualizar suas configurações para usar uma chave gerenciada pelo cliente para criptografar dados na AWS IoT. FleetWise Você pode criar, gerenciar e visualizar sua chave de criptografia por meio de AWS Key Management Service (AWS KMS).

AWS A IoT FleetWise oferece suporte à criptografia do lado do servidor com chaves gerenciadas pelo cliente armazenadas AWS KMS para criptografar dados para os seguintes recursos.

AWS Recurso de IoT FleetWise Tipo de dados Campos criptografados em repouso com chaves gerenciadas pelo cliente
Catálogo de sinais descrição
Atributo

description, allowedValues, defaultValue, min, max

Actuator

description, allowedValues, min, max

Sensor

description, allowedValues, min, max

Modelo do veículo (manifesto do modelo) descrição
Manifesto do decodificador descrição
CanInterface

protocolName, protocolVersion

ObdInterface

solicitaçãoMessageId, dtcRequestIntervalSeconds, has, padrão OBDTransmissionEcu, pid, uso RequestIntervalSeconds ExtendedIds

CanSignal

factor, is, isSignedBigEndian, length, messageID, offset, startBit

ObdSignal

ByteLength, offset, pid, pid, dimensionamento, serviceModeResponseLength, startByte, bit, bit MaskLength RightShift

Veículo attributes
Campaign descrição
condição BasedCollectionScheme

expressão, condição, mínimo LanguageVersionTriggerIntervalMs, TriggerMode

TimeBasedCollectionScheme

periodMs

Modelo de estado descrição
nota

Outros dados e recursos são criptografados usando a criptografia padrão com chaves gerenciadas pela AWS IoT FleetWise. Essa chave é criada e armazenada na FleetWise conta de AWS IoT.

Para obter mais informações, consulte O que é AWS Key Management Service? no Guia do AWS Key Management Service desenvolvedor.

Habilitar criptografia usando chaves KMS (console)

Para usar chaves gerenciadas pelo cliente com a AWS IoT FleetWise, você deve atualizar suas configurações de AWS IoT FleetWise .

Para ativar a criptografia usando chaves KMS (console)
  1. Abra o FleetWise console AWS de IoT.

  2. Acesse Configurações.

  3. Em Criptografia, selecione Editar para abrir a página Editar criptografia.

  4. Em Tipo de chave de criptografia, escolha Escolher uma AWS KMS chave diferente. Isso permite a criptografia com chaves gerenciadas pelo cliente armazenadas na AWS KMS.

    nota

    Você só pode usar a criptografia de chave gerenciada pelo cliente para FleetWise recursos de AWS IoT. Isso inclui o catálogo de sinais, modelo do veículo (manifesto do modelo), manifesto do decodificador, veículo, frota e campanha.

  5. Selecione a chave KMS com uma das seguintes opções:

    • Para usar uma chave KMS existente — Escolha o alias da chave KMS na lista.

    • Para criar uma nova chave KMS — Escolha Criar uma AWS KMS chave.

      nota

      Isso abre o AWS KMS console. Para obter mais informações sobre como criar uma chave KMS, consulte Criação de chaves no Guia do desenvolvedor do AWS Key Management Service .

  6. Selecione Salvar para atualizar as configurações.

Habilite a criptografia usando chaves KMS (AWS CLI)

Você pode usar a operação da PutEncryptionConfiguration API para ativar a criptografia para sua FleetWise conta de AWS IoT. O exemplo a seguir usa AWS CLI.

Para ativar a criptografia, execute o seguinte comando.

  • kms_key_idSubstitua pelo ID da chave KMS.

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

Política de chaves do KMS

Depois de criar uma chave KMS, você deve, no mínimo, adicionar a seguinte declaração à sua política de chaves KMS para que ela funcione com AWS a IoT. FleetWise O principal do FleetWise serviço de AWS IoT iotfleetwise.amazonaws.com na declaração de política de chaves do KMS permite que a AWS IoT acesse FleetWise a chave 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ática recomendada de segurança, adicione aws:SourceArn e aws:SourceAccount condicione chaves à política de chaves do KMS. A chave de condição global do IAM aws:SourceArn ajuda a garantir que a AWS IoT FleetWise use a chave KMS somente para recursos específicos do serviço Amazon Resource Names (ARNs).

Se você definir o valor deaws:SourceArn, ele sempre deverá serarn:aws:iotfleetwise:us-east-1:account_id:*. Isso permite que a chave KMS acesse todos os FleetWise recursos de AWS IoT para isso. Conta da AWS AWS A IoT FleetWise oferece suporte a uma chave KMS por conta para todos os recursos. Região da AWS Usar qualquer outro valor para oSourceArn, ou não usar o curinga (*) para o campo de recurso ARN, impede que a AWS IoT acesse a FleetWise chave KMS.

O valor de aws:SourceAccount é o ID da sua conta, que é usado para restringir ainda mais a chave KMS para que ela possa ser usada apenas para sua conta específica. Se você adicionar aws:SourceAccount e aws:SourceArn condicionar chaves à chave KMS, certifique-se de que a chave não seja usada por nenhum outro serviço ou conta. Isso ajuda a evitar falhas.

A política a seguir inclui um responsável pelo serviço (um identificador de um serviço), bem como aws:SourceAccount uma aws:SourceArn configuração para uso com base na Região da AWS ID da sua conta.

{ "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 obter mais informações sobre como editar uma política de chaves do KMS para uso com a AWS IoT FleetWise, consulte Alterando uma política de chaves no Guia do AWS Key Management Service desenvolvedor.

Importante

Ao adicionar as novas seções à sua política de chaves do KMS, não altere nenhuma seção existente na política. AWS A IoT não FleetWise pode realizar operações em seus dados se a criptografia estiver habilitada para AWS IoT FleetWise e qualquer uma das seguintes afirmações for verdadeira:

  • A chave KMS está desativada ou excluída.

  • A política de chave KMS não está configurada corretamente para o serviço.

Permissões para AWS KMS criptografia

Se você ativou a AWS KMS criptografia, deverá especificar permissões na política de função para poder chamar as FleetWise APIs de AWS IoT. A política a seguir permite acesso a todas as FleetWise ações de AWS IoT, bem como permissões AWS KMS específicas.

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

A declaração de política a seguir é necessária para que sua função invoque APIs de criptografia. Esta declaração de política permite PutEncryptionConfiguration GetEncryptionConfiguration ações da 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": [ "*" ] } ] }

Recuperação após AWS KMS exclusão de chave

Se você excluir uma AWS KMS chave depois de ativar a criptografia com a AWS IoT FleetWise, deverá redefinir sua conta excluindo todos os dados antes de usar a AWS IoT FleetWise novamente. Você pode usar a lista e excluir as operações da API para limpar recursos em sua conta.

Para limpar recursos em sua conta
  1. Use APIs de lista com o listResponseScope parâmetro definido como. METADATA_ONLY Isso fornece uma lista de recursos, incluindo nomes de recursos e outros metadados, como ARNs e carimbos de data/hora.

  2. Use APIs de exclusão para remover recursos individuais.

Você deve limpar os recursos na seguinte ordem.

  1. Campanhas

    1. Liste todas as campanhas com o listResponseScope parâmetro definido comoMETADATA_ONLY.

    2. Exclua as campanhas.

  2. Frotas e veículos

    1. Liste todas as frotas com o listResponseScope parâmetro definido como. METADATA_ONLY

    2. Liste todos os veículos de cada frota com o listResponseScope parâmetro definido comoMETADATA_ONLY.

    3. Desassocie todos os veículos de cada frota.

    4. Exclua as frotas.

    5. Exclua os veículos.

  3. Manifestos de decodificadores

    1. Liste todos os manifestos do decodificador com o listResponseScope parâmetro definido como. METADATA_ONLY

    2. Exclua todos os manifestos do decodificador.

  4. Modelos de veículos (manifestos de modelos)

    1. Liste todos os modelos de veículos com o listResponseScope parâmetro definido comoMETADATA_ONLY.

    2. Exclua todos os modelos de veículos.

  5. Modelos de estado

    1. Liste todos os modelos de estado com o listResponseScope parâmetro definido comoMETADATA_ONLY.

    2. Exclua todos os modelos de estado.

  6. Catálogos de sinais

    1. Liste todos os catálogos de sinais.

    2. Exclua todos os catálogos de sinais.