

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# AWS IoT FleetWise의 데이터 암호화
<a name="data-encryption"></a>

데이터 암호화는 전송 중( AWS IoT FleetWise를 오가는 동안, 게이트웨이와 서버 간에) 및 저장 중(로컬 디바이스 또는에 저장되는 동안) 데이터를 보호하는 것을 말합니다 AWS 서비스. 클라이언트측 암호화를 사용하여 저장 데이터를 보호할 수 있습니다.

**참고**  
AWS IoT FleetWise 엣지 프로세싱은 AWS IoT FleetWise 게이트웨이 내에서 호스팅되고 로컬 네트워크를 통해 액세스할 수 있는 APIs를 노출합니다. 이러한 APIs는 AWS IoT FleetWise Edge 커넥터가 소유한 서버 인증서가 지원하는 TLS 연결을 통해 노출됩니다. 클라이언트 인증의 경우 이러한 API는 액세스 제어 암호를 사용합니다. 서버 인증서 프라이빗 키와 액세스 제어 암호는 모두 디스크에 저장됩니다. AWS IoT FleetWise 엣지 프로세싱은 저장 시 이러한 자격 증명의 보안을 위해 파일 시스템 암호화를 사용합니다.

서버 측 암호화 및 클라이언트측 암호화에 대한 자세한 내용은 다음 주제를 검토하십시오.

**Topics**
+ [AWS IoT FleetWise의 저장 데이터 암호화](encryption-at-rest.md)
+ [AWS IoT FleetWise의 키 관리](key-management.md)

# AWS IoT FleetWise의 저장 데이터 암호화
<a name="encryption-at-rest"></a>

AWS IoT FleetWise는 AWS 클라우드 및 게이트웨이에 데이터를 저장합니다.

## AWS 클라우드에 저장된 데이터
<a name="cloud-encryption-at-rest"></a>

AWS IoT FleetWise AWS 서비스 는 기본적으로 저장 데이터를 암호화하는 다른에 데이터를 저장합니다. 유휴 시 암호화는 [AWS Key Management Service (AWS KMS)](https://docs.aws.amazon.com/kms/latest/developerguide/overview.html)과 통합되고 이를 통해 AWS IoT FleetWise에서 자산 자산 자산 및 집계 값을 암호화하는 데 사용되는 암호화 키를 관리합니다. 고객 관리형 키를 사용하여 AWS IoT FleetWise에서 자산 속성 값과 집계 값을 암호화하도록 선택할 수 있습니다. 를 통해 암호화 키를 생성, 관리 및 볼 수 있습니다 AWS KMS.

 AWS 소유 키 또는 고객 관리형 키를 선택하여 데이터를 암호화할 수 있습니다.

### 작동 방식
<a name="how-it-works"></a>

저장 시 암호화는 데이터를 암호화하는 데 사용되는 암호화 키를 관리하기 AWS KMS 위해와 통합됩니다.
+ AWS 소유 키 - 기본 암호화 키. AWS IoT FleetWise가이 키를 소유합니다. AWS 계정의 키를 확인, 관리 또는 사용할 수 없습니다. 또한 AWS CloudTrail 로그에서 키에 대한 작업을 볼 수 없습니다. 추가 비용 없이 이 키를 사용할 수 있습니다.
+ 고객 관리형 키 - 키는 사용자가 생성, 소유 및 관리하는 계정에 저장됩니다. KMS 키를 완전히 제어할 수 있습니다. 추가 AWS KMS 요금이 적용됩니다.

### AWS 소유 키
<a name="aws-owned-cmk"></a>

AWS 소유 키 는 계정에 저장되지 않습니다. 이는가 multi AWS 계정. AWS 서비스 can이 데이터를 보호하는 AWS 소유 키 데 사용할 수 있도록 AWS 소유하고 관리하는 KMS 키 모음의 일부입니다.

사용을 확인, 관리 또는 사용하거나 AWS 소유 키감사할 수 없습니다. 하지만 데이터를 암호화하는 키를 보호하기 위해 어떤 작업을 수행하거나 어떤 프로그램을 변경할 필요가 없습니다.

를 사용하는 경우 요금이 부과되지 AWS 소유 키않으며 계정의 할당 AWS KMS 량에 포함되지 않습니다.

### 고객 관리형 키
<a name="customer-managed-cmk"></a>

고객 관리형 키는 사용자가 생성, 소유 및 관리하는 계정의 KMS 키입니다. 다음과 같애ㅣ KMS 키를 완전히 제어할 수 있습니다.
+ 키 정책, IAM 정책 및 권한 부여 수립 및 유지
+ 활성화 및 비활성화
+ 암호화 자료 교체
+  태그 추가
+ 이를 참조하는 별칭 생성 
+ KMS 키 삭제 예약



CloudTrail 및 Amazon CloudWatch Logs를 사용하여 AWS IoT FleetWise가 사용자를 대신하여에 보내는 요청을 추적할 수도 AWS KMS 있습니다.

 고객 관리형 키를 사용하는 경우 계정에 저장된 KMS 키에 대한 액세스 권한을 AWS IoT FleetWise에 부여해야 합니다. AWS IoT FleetWise는 봉투 암호화 및 키 계층 구조를 사용하여 데이터를 암호화합니다. AWS KMS 암호화 키는 이 키 계층 구조의 루트 키를 암호화하는 데 사용됩니다. 자세한 내용은 *AWS Key Management Service 개발자 안내서*의 [봉투 암호화](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#enveloping)를 참조하세요.

다음 예제 정책은 AWS IoT FleetWise에 AWS KMS 키를 사용할 수 있는 권한을 부여합니다.

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "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": "*"
    }
  ]
}
```

------

**중요**  
KMS 키 정책에 새 섹션을 추가할 때 정책의 기존 섹션을 변경하지 마십시오. AWS IoT FleetWise에 암호화가 활성화되어 있고 다음 중 하나에 해당하는 경우 AWS IoT FleetWise는 데이터에 대한 작업을 수행할 수 없습니다.  
KMS 키가 비활성화되었거나 삭제되었습니다.
KMS 키 정책이 서비스에 제대로 구성되어 있지 않습니다.

### 비전 시스템 데이터에 저장 시 암호화 사용
<a name="vision-system-encryption"></a>

**참고**  
비전 시스템 데이터는 평가판 릴리스이며 변경될 수 있습니다.

 AWS IoT FleetWise 계정에서 AWS KMS 키가 활성화된 고객 관리형 암호화를 사용하고 비전 시스템 데이터를 사용하려면 암호화 설정을 복잡한 데이터 유형과 호환되도록 재설정합니다. 이를 통해 AWS IoT FleetWise는 비전 시스템 데이터에 필요한 추가 권한을 설정할 수 있습니다.

**참고**  
비전 시스템 데이터에 대한 암호화 설정을 재설정하지 않은 경우 디코더 매니페스트가 검증 중 상태로 멈출 수 있습니다.

1. [GetEncryptionConfiguration](https://docs.aws.amazon.com/iot-fleetwise/latest/APIReference/API_GetEncryptionConfiguration.html) API 작업을 사용하여 AWS KMS 암호화가 활성화되어 있는지 확인합니다. 암호화 유형이 `FLEETWISE_DEFAULT_ENCRYPTION`이면 추가 작업이 필요하지 않습니다.

1. 암호화 유형이 `KMS_BASED_ENCRYPTION`인 경우 [PutEncryptionConfiguration](https://docs.aws.amazon.com/iot-fleetwise/latest/APIReference/API_PutEncryptionConfiguration.html) API 작업을 사용하여 암호화 유형을 `FLEETWISE_DEFAULT_ENCRYPTION`으로 재설정합니다.

   ```
   aws iotfleetwise put-encryption-configuration \
         --encryption-type FLEETWISE_DEFAULT_ENCRYPTION
   ```

1. [PutEncryptionConfiguration](https://docs.aws.amazon.com/iot-fleetwise/latest/APIReference/API_PutEncryptionConfiguration.html) API 작업을 사용하여 암호화 유형을 `KMS_BASED_ENCRYPTION`으로 재활성화합니다.

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

암호화 활성화에 대한 자세한 내용은 [AWS IoT FleetWise의 키 관리](key-management.md) 섹션을 참조하세요.

# AWS IoT FleetWise의 키 관리
<a name="key-management"></a>

**중요**  
특정 AWS IoT FleetWise 기능에 대한 액세스는 현재 게이트됩니다. 자세한 내용은 [AWS AWS IoT FleetWise의 리전 및 기능 가용성](fleetwise-regions.md) 단원을 참조하십시오.

## AWS IoT FleetWise 클라우드 키 관리
<a name="key-cloud"></a>

기본적으로 AWS IoT FleetWise는 AWS 관리형 키 를 사용하여의 데이터를 보호합니다 AWS 클라우드. 고객 관리형 키를 사용하여 AWS IoT FleetWise의 데이터를 암호화하도록 설정을 업데이트할 수 있습니다. AWS Key Management Service ()를 통해 암호화 키를 생성, 관리 및 볼 수 있습니다AWS KMS.

AWS IoT FleetWise는에 저장된 고객 관리형 키를 사용한 서버 측 암호화를 지원 AWS KMS 하여 다음 리소스에 대한 데이터를 암호화합니다.


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

**참고**  
다른 데이터 및 리소스는 AWS IoT FleetWise에서 관리하는 키를 사용한 기본 암호화를 사용하여 암호화됩니다. 이 키는 생성되어 AWS IoT FleetWise 계정에 저장됩니다.

자세한 내용은 *AWS Key Management Service 개발자 안내서*의 [What is AWS Key Management Service?](https://docs.aws.amazon.com/kms/latest/developerguide/overview.html)를 참조하세요.

## KMS 키를 사용한 암호화 활성화 (콘솔)
<a name="CMK-setup"></a>

 AWS IoT FleetWise에서 고객 관리형 키를 사용하려면 AWS IoT FleetWise 설정을 업데이트해야 합니다.

**KMS 키를 사용하여 암호화를 활성화하려는 경우 (콘솔)**

1. [AWS IoT FleetWise 콘솔](https://console.aws.amazon.com/iotfleetwise/)을 엽니다.

1. **설정으로 이동합니다.**

1. **암호화에서** **편집**을 선택하여 **암호화 편집** 페이지를 엽니다.

1.  **암호화 키 유형**에서 **다른 AWS KMS 키 선택을** 선택합니다. 이렇게 하면 AWS KMS에 저장된 고객 관리 키로 암호화할 수 있습니다.
**참고**  
 AWS IoT FleetWise 리소스에는 고객 관리형 키 암호화만 사용할 수 있습니다. 여기에는 신호 카탈로그, 차량 모델(모델 매니페스트), 디코더 매니페스트, 차량, 플릿 및 캠페인이 포함됩니다.

1. 다음 옵션 중 하나를 선택하여 KMS 키를 사용합니다.
   + **기존 KMS 키를 사용하려면** – 목록에서 KMS 키 별칭을 선택합니다.
   + **새 KMS 키를 생성하려면** - ** AWS KMS 키 생성을** 선택합니다.
**참고**  
그러면 AWS KMS 콘솔이 열립니다. KMS 키 생성에 대한 자세한 내용은 *AWS Key Management Service 개발자 안내서*의 [키 생성](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html)을 참조하세요.

1. 설정을 저장하려면 **저장**을 선택합니다.

## KMS 키를 사용한 암호화 활성화(AWS CLI)
<a name="encryption-cli"></a>

[PutEncryptionConfiguration](https://docs.aws.amazon.com/iot-fleetwise/latest/APIReference/API_GetEncryptionConfiguration.html) API 작업을 사용하여 AWS IoT FleetWise 계정에 대한 암호화를 활성화할 수 있습니다. 다음 예제에서는를 사용합니다 AWS CLI.

암호화를 활성화하려면 다음 명령을 실행합니다.
+ *kms\$1key\$1id*를 KMS 키의 ID로 바꿉니다.

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

**Example response**  

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

## KMS 키 정책
<a name="CMK-policy"></a>

KMS 키를 생성한 후에는 최소한 KMS 키 정책에 다음 문을 추가해야 AWS IoT FleetWise로 작업할 수 있습니다. KMS 키 정책 설명`iotfleetwise.amazonaws.com`의 AWS IoT FleetWise 서비스 보안 주체는 AWS IoT FleetWise가 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": "*"
}
```

보안 모범 사례로 KMS 키 정책에 `aws:SourceArn` 및 `aws:SourceAccount` 조건 키를 추가합니다. IAM 전역 조건 키는 AWS IoT FleetWise가 서비스별 리소스 Amazon 리소스 이름(ARNs)에만 KMS 키를 사용하도록 하는 `aws:SourceArn` 데 도움이 됩니다.

의 값을 설정하는 경우 항상 이어야 `aws:SourceArn`합니다`arn:aws:iotfleetwise:us-east-1:account_id:*`. 이렇게 하면 KMS 키가 이에 대한 모든 AWS IoT FleetWise 리소스에 액세스할 수 있습니다 AWS 계정. AWS IoT FleetWise는 해당의 모든 리소스에 대해 계정당 하나의 KMS 키를 지원합니다 AWS 리전. 에 다른 값을 사용하거나 ARN 리소스 필드에 와일드카드(\$1)를 사용하지 `SourceArn`않으면 AWS IoT FleetWise가 KMS 키에 액세스하지 못합니다.

의 값은 계정 ID`aws:SourceAccount`로, 특정 계정에만 사용할 수 있도록 KMS 키를 추가로 제한하는 데 사용됩니다. KMS 키에 `aws:SourceAccount` 및 `aws:SourceArn` 조건 키를 추가하는 경우 다른 서비스 또는 계정에서 키를 사용하지 않는지 확인합니다. 이렇게 하면 실패를 방지하는 데 도움이 됩니다.

다음 정책에는 서비스 보안 주체(서비스의 식별자)와 `aws:SourceAccount` 및 계정 ID를 기반으로 사용하도록 `aws:SourceArn` 설정된 AWS 리전 가 포함됩니다.

```
{
  "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:*"
    }
  }
}
```

 AWS IoT FleetWise에서 사용할 KMS 키 정책 편집에 대한 자세한 내용은 *AWS Key Management Service 개발자 안내서*의 [키 정책 변경을](https://docs.aws.amazon.com/kms/latest/developerguide/key-policy-modifying.html) 참조하세요.

**중요**  
KMS 키 정책에 새 섹션을 추가할 때 정책의 기존 섹션을 변경하지 마십시오. AWS IoT FleetWise에 암호화가 활성화되어 있고 다음 중 하나에 해당하는 경우 AWS IoT FleetWise는 데이터에 대한 작업을 수행할 수 없습니다.  
KMS 키가 비활성화되었거나 삭제되었습니다.
KMS 키 정책이 서비스에 제대로 구성되어 있지 않습니다.

## AWS KMS 암호화 권한
<a name="encryption-permissions"></a>

 AWS KMS 암호화를 활성화한 경우 AWS IoT FleetWise APIs를 호출할 수 있도록 역할 정책에서 권한을 지정해야 합니다. 다음 정책은 모든 AWS IoT FleetWise 작업과 AWS KMS 특정 권한에 대한 액세스를 허용합니다.

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

****  

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

------

다음 정책 설명은 역할이 암호화 APIs를 호출하는 데 필요합니다. 이 정책 설명은 AWS IoT FleetWise의 `PutEncryptionConfiguration` 및 `GetEncryptionConfiguration` 작업을 허용합니다.

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

****  

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

------

## AWS KMS 키 삭제 후 복구
<a name="encryption-recovery"></a>

 AWS IoT FleetWise로 암호화를 활성화한 후 AWS KMS 키를 삭제하는 경우 AWS IoT FleetWise를 다시 사용하기 전에 모든 데이터를 삭제하여 계정을 재설정해야 합니다. 목록 및 삭제 API 작업을 사용하여 계정의 리소스를 정리할 수 있습니다.

**계정의 리소스를 정리하려면**

1. `listResponseScope` 파라미터가 로 설정된 목록 APIs를 사용합니다`METADATA_ONLY`. 이는 리소스 이름 및 ARNs 및 타임스탬프와 같은 기타 메타데이터를 포함한 리소스 목록을 제공합니다.

1. 삭제 APIs 사용하여 개별 리소스를 제거합니다.

다음 순서로 리소스를 정리해야 합니다.

1. Campaigns

   1. `listResponseScope` 파라미터가 로 설정된 모든 캠페인을 나열합니다`METADATA_ONLY`.

   1. 캠페인을 삭제합니다.

1. 플릿 및 차량

   1. `listResponseScope` 파라미터가 로 설정된 모든 플릿을 나열합니다`METADATA_ONLY`.

   1. `listResponseScope` 파라미터가 로 설정된 각 플릿의 모든 차량을 나열합니다`METADATA_ONLY`.

   1. 각 플릿에서 모든 차량의 연결을 해제합니다.

   1. 플릿을 삭제합니다.

   1. 차량을 삭제합니다.

1. 디코더 매니페스트

   1. `listResponseScope` 파라미터가 로 설정된 모든 디코더 매니페스트를 나열합니다`METADATA_ONLY`.

   1. 모든 디코더 매니페스트를 삭제합니다.

1. 차량 모델(모델 매니페스트)

   1. `listResponseScope` 파라미터가 로 설정된 모든 차량 모델을 나열합니다`METADATA_ONLY`.

   1. 모든 차량 모델을 삭제합니다.

1. 상태 템플릿

   1. `listResponseScope` 파라미터가 로 설정된 모든 상태 템플릿을 나열합니다`METADATA_ONLY`.

   1. 모든 상태 템플릿을 삭제합니다.

1. 신호 카탈로그

   1. 모든 신호 카탈로그를 나열합니다.

   1. 모든 신호 카탈로그를 삭제합니다.