

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

# Amazon Location Service의 보안
<a name="security"></a>

AWS에서는 클라우드 보안을 가장 중요하게 생각합니다. AWS 고객은 보안에 가장 보안에 민감한 조직의 요구 사항에 부합하도록 빌드된 데이터 센터 및 네트워크 아키텍처의 혜택을 누릴 수 있습니다.

보안은 AWS와 사용자의 공동 책임입니다. [공동 책임 모델](https://aws.amazon.com/compliance/shared-responsibility-model/)은 이 사항을 클라우드*의* 보안 및 클라우드 *내* 보안으로 설명합니다.
+ **클라우드의 보안** - AWS는 AWS 클라우드에서 AWS 서비스를 실행하는 인프라를 보호합니다. AWS는 또한 안전하게 사용할 수 있는 서비스를 제공합니다. 서드 파티 감사자는 [AWS 규정 준수 프로그램](https://aws.amazon.com/compliance/programs/)의 일환으로 보안 효과를 정기적으로 테스트하고 검증합니다. Amazon Location Service에 적용되는 규정 준수 프로그램에 대한 자세한 내용은 [규정 준수 프로그램의 범위에 속하는 AWS 서비스](https://aws.amazon.com/compliance/services-in-scope/)를 참조하세요.
+ **클라우드 내 보안** – 귀하의 책임은 귀하가 사용하는 AWS서비스에 의해 결정됩니다. 또한 귀하는 귀사의 데이터 민감도, 귀사의 요구 사항, 관련 법률 및 규정을 비롯한 기타 요소에 대해서도 책임이 있습니다.

이 설명서는 Amazon Location을 사용할 때 공동 책임 모델을 적용하는 방법을 이해하는 데 도움이 됩니다. 다음 항목에서는 보안 및 규정 준수 목적에 맞게 Amazon Location을 구성하는 방법을 보여줍니다. 또한 Amazon Location 리소스를 모니터링하고 보호하는 데 도움이 되는 다른 AWS 서비스를 사용하는 방법을 배우게 됩니다.

**Topics**
+ [Amazon Location Service의 데이터 보호](data-protection.md)
+ [Amazon Location Service의 사고 대응](incident-response.md)
+ [Amazon Location Service에 대한 규정 준수 확인](compliance-validation.md)
+ [Amazon Location Service의 복원성](disaster-recovery-resiliency.md)
+ [Amazon Location Service의 인프라 보안](infrastructure-security.md)
+ [AWS PrivateLink Amazon Location용](privatelink-interface-endpoints.md)
+ [Amazon Location의 구성 및 취약성 분석](vulnerability-analysis-and-management.md)
+ [교차 서비스 혼동된 대리인 방지](cross-service-confused-deputy-prevention.md)
+ [Amazon Location Service의 모범 사례](best-practices.md)

# Amazon Location Service의 데이터 보호
<a name="data-protection"></a>

AWS [공동 책임 모델](https://aws.amazon.com/compliance/shared-responsibility-model/)은 Amazon Location Service의 데이터 보호에 적용됩니다. 이 모델에서 설명하는 것처럼 AWS는 모든 AWS 클라우드를 실행하는 글로벌 인프라를 보호할 책임이 있습니다. 사용자는 이 인프라에 호스팅되는 콘텐츠에 대한 통제 권한을 유지할 책임이 있습니다. 사용하는 AWS 서비스의 보안 구성과 관리 태스크에 대한 책임도 사용자에게 있습니다. 데이터 프라이버시에 대한 자세한 내용은 [데이터 프라이버시 FAQ](https://aws.amazon.com/compliance/data-privacy-faq/)를 참조하세요. 유럽의 데이터 보호에 대한 자세한 내용은 *AWS 보안 블로그*의 [AWS 공동 책임 모델 및 GDPR](https://aws.amazon.com/blogs/security/the-aws-shared-responsibility-model-and-gdpr/) 블로그 게시물을 참조하세요.

데이터를 보호하려면 AWS 계정자격 증명을 보호하고 AWS IAM Identity Center또는 AWS Identity and Access Management(IAM)를 통해 개별 사용자 계정을 설정하는 것이 좋습니다. 이렇게 하면 개별 사용자에게 자신의 직무를 충실히 이행하는 데 필요한 권한만 부여됩니다. 또한 다음과 같은 방법으로 데이터를 보호하는 것이 좋습니다.
+ 각 계정에 다중 인증(MFA)을 사용하세요.
+ SSL/TLS를 사용하여 AWS리소스와 통신하세요. TLS 1.2는 필수이며 TLS 1.3을 권장합니다.
+ AWS CloudTrail로 API 및 사용자 활동 로깅을 설정하세요. AWS 활동 캡처에 CloudTrail 추적을 사용하는 방법에 대한 자세한 내용은 *AWS CloudTrail사용 설명서*의 [CloudTrail 추적 작업](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-trails.html)을 참조하세요.
+ AWS 암호화 솔루션을 AWS 서비스내의 모든 기본 보안 컨트롤과 함께 사용하세요.
+ Amazon S3에 저장된 민감한 데이터를 검색하고 보호하는 데 도움이 되는 Amazon Macie와 같은 고급 관리형 보안 서비스를 사용하세요.
+ 명령줄 인터페이스 또는 API를 통해 AWS에 액세스할 때 FIPS 140-3 검증된 암호화 모듈이 필요한 경우, FIPS 엔드포인트를 사용합니다. 사용 가능한 FIPS 엔드포인트에 대한 자세한 내용은 [Federal Information Processing Standard(FIPS) 140-3](https://aws.amazon.com/compliance/fips/)을 참조하세요.

고객의 이메일 주소와 같은 기밀 정보나 중요한 정보는 태그나 **이름** 필드와 같은 자유 형식 텍스트 필드에 입력하지 않는 것이 좋습니다. 여기에는 Amazon MQ 또는 기타 AWS 서비스에서 콘솔, API, AWS CLI 또는 AWS SDK를 사용하여 작업하는 경우가 포함됩니다. 이름에 사용되는 태그 또는 자유 형식 텍스트 필드에 입력하는 모든 데이터는 청구 또는 진단 로그에 사용될 수 있습니다. 외부 서버로 URL을 제공할 때 해당 서버에 대한 요청을 검증하기 위해 자격 증명 정보를 URL에 포함해서는 안 됩니다.



# 데이터 개인 정보 보호
<a name="data-privacy"></a>

Amazon Location Service를 사용하면 조직의 데이터에 대한 통제권을 유지할 수 있습니다. Amazon Location은 고객 메타데이터와 계정 정보를 제거하여 데이터 공급자에게 전송되는 모든 쿼리를 익명화합니다.

Amazon Location은 추적 및 지오펜싱에 데이터 공급자를 사용하지 않습니다. 즉, 민감한 데이터는 AWS 계정에 그대로 남아 있습니다. 이를 통해 시설, 자산 및 직원 위치와 같은 민감한 위치 정보를 제3자로부터 보호하고, 사용자 개인 정보를 보호하고, 애플리케이션의 보안 위험을 줄일 수 있습니다.

자세한 내용은 [AWS데이터 개인정보 보호 FAQ](https://aws.amazon.com/compliance/data-privacy-faq/)를 참조하세요.

# Amazon Location에서의 데이터 보존
<a name="data-retention"></a>

다음 특성은 Amazon Location에서 서비스에 대한 데이터를 수집하고 저장하는 방식과 관련이 있습니다.
+ **Amazon Location Service Trackers** – Trackers API를 사용하여 엔터티의 위치를 추적하면 해당 좌표를 저장할 수 있습니다. 디바이스 위치는 서비스에 의해 삭제되기 전에 30일 동안 저장됩니다.
+ **Amazon Location Service Geofences** – Geofences API를 사용하여 관심 영역을 정의하면 서비스는 사용자가 제공한 지오메트리를 저장합니다. 이는 명시적으로 삭제해야 합니다.
**참고**  
AWS 계정을 삭제하면 계정 내 모든 리소스가 삭제됩니다. 자세한 내용은 [AWS데이터 개인정보 보호 FAQ](https://aws.amazon.com/compliance/data-privacy-faq/)를 참조하세요.

# Amazon Location Service의 저장 데이터 암호화
<a name="encryption-at-rest"></a>

Amazon Location Service는 기본적으로 암호화를 제공하여 AWS 소유 암호화 키를 사용하여 민감한 고객 저장 데이터를 보호합니다.
+ **AWS 소유 키** - Amazon Location은 기본적으로 이러한 키를 사용하여 개인 식별 데이터를 자동으로 암호화합니다. AWS 소유 키를 보거나 관리하거나 사용하거나 사용을 감사할 수 없습니다. 하지만 데이터를 암호화하는 키를 보호하기 위해 어떤 작업을 수행하거나 어떤 프로그램을 변경할 필요가 없습니다. 자세한 내용은 *AWS Key Management Service 개발자 안내서*에서 [AWS 소유 키](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-owned-cmk)를 참조하세요.

기본적으로 저장 데이터를 암호화하면 민감한 데이터 보호와 관련된 운영 오버헤드와 복잡성을 줄이는 데 도움이 됩니다. 동시에 엄격한 암호화 규정 준수 및 규제 요구 사항을 충족하는 안전한 애플리케이션을 구축할 수 있습니다.

이 암호화 계층을 비활성화하거나 대체 암호화 유형을 선택할 수는 없지만 트래커 및 지오펜스 컬렉션 리소스를 생성할 때 고객 관리형 키를 선택하여 기존 AWS 소유 암호화 키에 두 번째 암호화 계층을 추가할 수 있습니다.
+ **고객 관리형 키** - Amazon Location은 사용자가 생성, 소유 및 관리하는 대칭 고객 관리형 키를 사용하여 기존 AWS 소유 암호화에 두 번째 암호화 계층을 추가할 수 있도록 지원합니다. 이 암호화 계층을 완전히 제어할 수 있으므로 다음과 같은 작업을 수행할 수 있습니다.
  + 키 정책 수립 및 유지
  + IAM 정책 및 권한 부여 수립 및 유지
  + 키 정책 활성화 및 비활성화
  + 키 암호화 자료 교체
  +  태그 추가
  + 키 별칭 만들기
  + 키 삭제 일정 수립

  자세한 내용은 *AWS Key Management Service 개발자 안내서*의 [고객 관리 키](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk)를 참조하세요.

다음 표에는 Amazon Location에서 개인 식별 데이터를 암호화하는 방법이 요약되어 있습니다.


| 데이터 유형 | AWS 소유 키 암호화 | 고객 관리 키 암호화(선택 사항) | 
| --- | --- | --- | 
| Position[디바이스 위치 세부 정보](https://docs.aws.amazon.com/location/latest/APIReference/API_WaypointTracking_DevicePosition.html)가 포함된 포인트 지오메트리입니다. | 활성화됨 | 활성화됨 | 
| PositionProperties[위치 업데이트와 연결된](https://docs.aws.amazon.com/location/latest/APIReference/API_WaypointTracking_DevicePosition.html) 키-값 쌍 세트입니다. | 활성화됨 | 활성화됨 | 
| GeofenceGeometry지오펜스 영역을 나타내는 다각형 [지오펜스 지오메트리](https://docs.aws.amazon.com/location/latest/APIReference/API_WaypointGeofencing_GeofenceGeometry.html)입니다. | 활성화됨 | 활성화됨 | 
| DeviceId트래커 리소스에 [디바이스 위치 업데이트를 업로드](https://docs.aws.amazon.com/location/latest/APIReference/API_WaypointTracking_DevicePositionUpdate.html)할 때 지정되는 디바이스 식별자입니다. | 활성화됨 | 지원되지 않음 | 
| GeofenceId[지오펜스 지오메트리](https://docs.aws.amazon.com/location/latest/APIReference/API_WaypointGeofencing_PutGeofence.html) 또는 특정 지오펜스 컬렉션의 [지오펜스 배치](https://docs.aws.amazon.com/location/latest/APIReference/API_WaypointGeofencing_BatchPutGeofence.html)를 저장할 때 지정되는 식별자입니다. | 활성화됨 | 지원되지 않음 | 

**참고**  
Amazon Location은 AWS 소유 키를 사용하여 저장 데이터 암호화를 자동으로 활성화하여 개인 식별 데이터를 무료로 보호합니다.  
그러나 고객 관리형 키 사용에는 AWS KMS 요금이 적용됩니다. 요금에 대한 자세한 내용은 [AWS Key Management Service 요금](https://aws.amazon.com/kms/pricing/)을 참조하십시오.

에 대한 자세한 내용은 [란 무엇입니까 AWS Key Management Service?](https://docs.aws.amazon.com/kms/latest/developerguide/overview.html)를 AWS KMS참조하십시오.

## Amazon Location Service가에서 권한 부여를 사용하는 방법 AWS KMS
<a name="encryption-grant"></a>

Amazon Location에서 고객 관리형 키를 사용하려면 [권한 부여](https://docs.aws.amazon.com/kms/latest/developerguide/grants.html)가 필요합니다.

고객 관리형 키로 암호화된 [트래커 리소스](https://docs.aws.amazon.com/location/latest/developerguide/trackers.html) 또는 [지오펜스 컬렉션을](https://docs.aws.amazon.com/location/latest/developerguide/geofences.html) 생성하면 Amazon Location은 [CreateGrant](https://docs.aws.amazon.com/kms/latest/APIReference/API_CreateGrant.html) 요청을에 전송하여 사용자를 대신하여 권한을 생성합니다 AWS KMS. 의 권한 부여 AWS KMS 는 Amazon Location에 고객 계정의 KMS 키에 대한 액세스 권한을 부여하는 데 사용됩니다.

Amazon Location은 다음 내부 작업에 대해 고객 관리형 키를 사용하기 위한 권한 부여가 필요합니다.
+ [DescribeKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html) 요청을에 전송 AWS KMS 하여 트래커 또는 지오펜스 컬렉션을 생성할 때 입력한 대칭 고객 관리형 KMS 키 ID가 유효한지 확인합니다.
+ [GenerateDataKeyWithoutPlaintext](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKeyWithoutPlaintext.html) 요청을에 전송 AWS KMS 하여 고객 관리형 키로 암호화된 데이터 키를 생성합니다.
+  AWS KMS 에 [Decrypt](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html) 요청을 보내 암호화된 데이터 키를 복호화하여 데이터를 암호화하는 데 사용할 수 있도록 합니다.

언제든지 권한 부여에 대한 액세스 권한을 취소하거나 고객 관리형 키에 대한 서비스 액세스를 제거할 수 있습니다. 그렇게 하면 Amazon Location은 고객 관리형 키로 암호화된 데이터에 액세스할 수 없게 되며, 이는 해당 데이터에 의존하는 작업에 영향을 미칩니다. 예를 들어 Amazon Location에서 액세스할 수 없는 암호화된 트래커에서 [디바이스 위치를 가져오려고](https://docs.aws.amazon.com/location/latest/APIReference/API_WaypointTracking_GetDevicePosition.html) 시도하면 작업에서 `AccessDeniedException` 오류가 반환됩니다.

## 고객 관리형 키 생성
<a name="create-key"></a>

 AWS Management Console또는 AWS KMS APIs.

**대칭형 고객 관리형 키를 생성하려면**

*AWS Key Management Service 개발자 안내서*의 [대칭형 고객 관리형 키 생성](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html#create-symmetric-cmk) 단계를 따르세요.

**키 정책**

키 정책에서는 고객 관리형 키에 대한 액세스를 제어합니다. 모든 고객 관리형 키에는 키를 사용할 수 있는 사람과 키를 사용하는 방법을 결정하는 문장이 포함된 정확히 하나의 키 정책이 있어야 합니다. 고객 관리형 키를 만들 때 키 정책을 지정할 수 있습니다. 자세한 내용은 *AWS Key Management Service 개발자 안내서*의 [고객 관리 키에 대한 액세스 관리](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html)를 참조하세요.

Amazon Location 리소스와 함께 고객 관리형 키를 사용하려면 키 정책에서 다음 API 작업을 허용해야 합니다.
+ `[kms:CreateGrant](https://docs.aws.amazon.com/kms/latest/APIReference/API_CreateGrant.html)` – 고객 관리형 키에 권한 부여를 추가합니다. Amazon Location에 필요한 [권한 부여 작업](https://docs.aws.amazon.com/kms/latest/developerguide/grants.html#terms-grant-operations)에 대한 액세스를 허용하는 지정된 KMS 키에 대한 제어 액세스 권한을 부여합니다. 자세한 내용은 *AWS Key Management Service 개발자 안내서*에서 [권한 부여 사용](https://docs.aws.amazon.com/kms/latest/developerguide/grants.html)을 참조하세요.

  이를 통해 Amazon Location은 다음을 수행할 수 있습니다.
  + 데이터 키는 암호화에 바로 사용되지 않기 때문에 `GenerateDataKeyWithoutPlainText`을(를) 호출하여 암호화된 데이터 키를 생성하여 저장합니다.
  + 저장된 암호화된 데이터 키를 사용하여 암호화된 데이터에 액세스하려면 `Decrypt`를 호출합니다.
  + 사용 중지하는 보안 주체를 설정하여 `RetireGrant`에 대한 서비스를 허용합니다.
+ `[kms:DescribeKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html)` - Amazon Location에서 키의 유효성을 확인할 수 있도록 고객 관리형 키 세부 정보를 제공합니다.

다음은 Amazon Location에 추가할 수 있는 정책 설명 예시입니다.

```
  "Statement" : [ 
    {
      "Sid" : "Allow access to principals authorized to use Amazon Location",
      "Effect" : "Allow",
      "Principal" : {
        "AWS" : "*"
      },
      "Action" : [ 
        "kms:DescribeKey", 
        "kms:CreateGrant"
      ],
      "Resource" : "*",
      "Condition" : {
        "StringEquals" : {
          "kms:ViaService" : "geo.region.amazonaws.com",
          "kms:CallerAccount" : "111122223333"
        }
    },
    {
      "Sid": "Allow access for key administrators",
      "Effect": "Allow",
      "Principal": {
        "AWS": "arn:aws:iam::111122223333:root"
       },
      "Action" : [ 
        "kms:*"
       ],
      "Resource": "arn:aws:kms:region:111122223333:key/key_ID"
    },
    {
      "Sid" : "Allow read-only access to key metadata to the account",
      "Effect" : "Allow",
      "Principal" : {
        "AWS" : "arn:aws:iam::111122223333:root"
      },
      "Action" : [ 
        "kms:Describe*",
        "kms:Get*",
        "kms:List*",
        "kms:RevokeGrant"
      ],
      "Resource" : "*"
    }
  ]
```

[정책에서 사용 권한을 지정](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html)하는 방법에 대한 자세한 내용은 *AWS Key Management Service 개발자 안내서*를 참조하세요.

[키 액세스 문제 해결](https://docs.aws.amazon.com/kms/latest/developerguide/policy-evaluation.html#example-no-iam)에 대한 자세한 내용은 *AWS Key Management Service 개발자 안내서*를 참조하세요.

## Amazon Location에 대한 고객 관리형 키 지정
<a name="enable-custom-encryption"></a>

고객 관리 키를 다음 리소스에 대한 2차 계층 암호화로 지정할 수 있습니다.
+ [트래커 생성](start-create-tracker.md)
+ [Amazon Location Service Geofences 시작하기](geofence-gs.md)

리소스를 생성할 때 Amazon Location이 리소스에 저장된 식별 가능한 개인 데이터를 암호화하는 데 사용하는 **KMS ID**를 입력하여 데이터 키를 지정할 수 있습니다.
+ **KMS ID** - AWS KMS 고객 관리형 [키의 키 식별자](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#key-id)입니다. 키 ID, 키 ARN, 별칭 이름 또는 별칭 ARN을 입력합니다.

## Amazon Location Service 암호화 컨텍스트
<a name="location-encryption-context"></a>

[암호화 컨텍스트](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context)는 데이터에 대한 추가 컨텍스트 정보를 포함하는 선택적 키-값 페어 세트입니다.

AWS KMS 는 암호화 컨텍스트를 [추가 인증 데이터](https://docs.aws.amazon.com/kms/latest/cryptographic-details/crypto-primitives.html)로 사용하여 [인증된 암호화](https://docs.aws.amazon.com/kms/latest/cryptographic-details/crypto-primitives.html)를 지원합니다. 데이터 암호화 요청에 암호화 컨텍스트를 포함하면는 암호화 컨텍스트를 암호화된 데이터에 AWS KMS 바인딩합니다. 데이터를 해독하려면 요청에 동일한 암호화 컨텍스트를 포함합니다.

**Amazon Location Service 암호화 컨텍스트**

Amazon Location은 모든 암호화 작업에서 동일한 암호화 컨텍스트를 사용합니다. 여기서 키는 AWS KMS `aws:geo:arn`이고 값은 리소스 [Amazon 리소스 이름](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html)(ARN)입니다.

**Example**  

```
"encryptionContext": {
    "aws:geo:arn": "arn:aws:geo:us-west-2:111122223333:geofence-collection/SAMPLE-GeofenceCollection"
}
```

**모니터링을 위한 암호화 컨텍스트 사용**

대칭형 고객 관리 키를 사용하여 트래커 또는 지오펜스 컬렉션을 암호화하는 경우 감사 기록 및 로그의 암호화 컨텍스트를 사용하여 고객 관리 키가 사용되는 방식을 식별할 수도 있습니다. 암호화 컨텍스트는 [AWS CloudTrail 또는 Amazon CloudWatch Logs에서 생성된 로그](#example-custom-encryption)에도 표시됩니다.

**암호화 컨텍스트를 사용하여 고객 관리형 키에 대한 액세스 제어**

그러나 암호화 컨텍스트를 사용하여 키 정책 및 IAM 정책에서 대칭 `conditions`에 대한 액세스를 제어할 수도 있습니다. 권한 부여에 암호화 컨텍스트 제약 조건을 사용할 수도 있습니다.

Amazon Location은 권한 부여 시 암호화 컨텍스트 제약 조건을 사용하여 계정 또는 리전의 고객 관리형 키에 대한 액세스를 제어합니다. 권한 부여 제약 조건에 따라 권한 부여가 허용하는 작업은 지정된 암호화 컨텍스트를 사용해야 합니다.

**Example**  
다음은 특정 암호화 컨텍스트에서 고객 관리형 키에 대한 액세스 권한을 부여하는 키 정책 설명의 예입니다. 이 정책 설명의 조건에 따라 권한 부여에는 암호화 컨텍스트를 지정하는 암호화 컨텍스트 제약 조건이 있어야 합니다.  

```
{
    "Sid": "Enable DescribeKey",
    "Effect": "Allow",
    "Principal": {
        "AWS": "arn:aws:iam::111122223333:role/ExampleReadOnlyRole"
     },
     "Action": "kms:DescribeKey",
     "Resource": "*"
},
{
     "Sid": "Enable CreateGrant",
     "Effect": "Allow",
     "Principal": {
         "AWS": "arn:aws:iam::111122223333:role/ExampleReadOnlyRole"
     },
     "Action": "kms:CreateGrant",
     "Resource": "*",
     "Condition": {
         "StringEquals": {
             "kms:EncryptionContext:aws:geo:arn": "arn:aws:geo:us-west-2:111122223333:tracker/SAMPLE-Tracker"
          }
     }
}
```

## Amazon Location Service의 암호화 키 모니터링
<a name="example-custom-encryption"></a>

Amazon Location Service 리소스와 함께 AWS KMS 고객 관리형 키를 사용하는 경우 [AWS CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-user-guide.html) 또는 [Amazon CloudWatch Logs](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/WhatIsCloudWatchLogs.html)를 사용하여 Amazon Location이 보내는 요청을 추적할 수 있습니다 AWS KMS.

다음 예제는 고객 관리형 키로 암호화된 데이터에 액세스`DescribeKey`하기 위해 Amazon Location에서 호출한 KMS 작업을 모니터링하기 위한 `CreateGrant``GenerateDataKeyWithoutPlainText`, `Decrypt`, 및 AWS CloudTrail 이벤트입니다.

------
#### [ CreateGrant ]

 AWS KMS 고객 관리형 키를 사용하여 트래커 또는 지오펜스 컬렉션 리소스를 암호화하는 경우 Amazon Location은 사용자를 대신하여 AWS 계정의 KMS 키에 액세스하라는 `CreateGrant` 요청을 보냅니다. Amazon Location에서 생성하는 권한 부여는 AWS KMS 고객 관리형 키와 연결된 리소스에만 적용됩니다. 또한 Amazon Location은 리소스를 삭제하면 `RetireGrant` 작업을 사용하여 권한 부여를 제거합니다.

다음 예제 이벤트는 `CreateGrant` 작업을 기록합니다.

```
{
    "eventVersion": "1.08",
    "userIdentity": {
        "type": "AssumedRole",
        "principalId": "AROAIGDTESTANDEXAMPLE:Sampleuser01",
        "arn": "arn:aws:sts::111122223333:assumed-role/Admin/Sampleuser01",
        "accountId": "111122223333",
        "accessKeyId": "AKIAIOSFODNN7EXAMPLE3",
        "sessionContext": {
            "sessionIssuer": {
                "type": "Role",
                "principalId": "AROAIGDTESTANDEXAMPLE:Sampleuser01",
                "arn": "arn:aws:sts::111122223333:assumed-role/Admin/Sampleuser01",
                "accountId": "111122223333",
                "userName": "Admin"
            },
            "webIdFederationData": {},
            "attributes": {
                "mfaAuthenticated": "false",
                "creationDate": "2021-04-22T17:02:00Z"
            }
        },
        "invokedBy": "geo.amazonaws.com"
    },
    "eventTime": "2021-04-22T17:07:02Z",
    "eventSource": "kms.amazonaws.com",
    "eventName": "CreateGrant",
    "awsRegion": "us-west-2",
    "sourceIPAddress": "172.12.34.56",
    "userAgent": "ExampleDesktop/1.0 (V1; OS)",
    "requestParameters": {
        "retiringPrincipal": "geo.region.amazonaws.com",
        "operations": [
            "GenerateDataKeyWithoutPlaintext",
            "Decrypt",
            "DescribeKey"
        ],
        "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE",
        "granteePrincipal": "geo.region.amazonaws.com"
    },
    "responseElements": {
        "grantId": "0ab0ac0d0b000f00ea00cc0a0e00fc00bce000c000f0000000c0bc0a0000aaafSAMPLE"
    },
    "requestID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE",
    "eventID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE",
    "readOnly": false,
    "resources": [
        {
            "accountId": "111122223333",
            "type": "AWS::KMS::Key",
            "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE"
        }
    ],
    "eventType": "AwsApiCall",
    "managementEvent": true,
    "eventCategory": "Management",
    "recipientAccountId": "111122223333"
}
```

------
#### [ GenerateDataKeyWithoutPlainText ]

트래커 또는 지오펜스 컬렉션 리소스에 대해 AWS KMS 고객 관리형 키를 활성화하면 Amazon Location에서 고유한 테이블 키를 생성합니다. 리소스에 대한 AWS KMS 고객 관리 AWS KMS 형 키를 지정하는 `GenerateDataKeyWithoutPlainText` 요청을에 보냅니다.

다음 예제 이벤트는 `GenerateDataKeyWithoutPlainText` 작업을 기록합니다.

```
{
    "eventVersion": "1.08",
    "userIdentity": {
        "type": "AWSService",
        "invokedBy": "geo.amazonaws.com"
    },
    "eventTime": "2021-04-22T17:07:02Z",
    "eventSource": "kms.amazonaws.com",
    "eventName": "GenerateDataKeyWithoutPlaintext",
    "awsRegion": "us-west-2",
    "sourceIPAddress": "172.12.34.56",
    "userAgent": "ExampleDesktop/1.0 (V1; OS)",
    "requestParameters": {
        "encryptionContext": {
            "aws:geo:arn": "arn:aws:geo:us-west-2:111122223333:geofence-collection/SAMPLE-GeofenceCollection"
        },
        "keySpec": "AES_256",
        "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE"
    },
    "responseElements": null,
    "requestID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE",
    "eventID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE",
    "readOnly": true,
    "resources": [
        {
            "accountId": "111122223333",
            "type": "AWS::KMS::Key",
            "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE"
        }
    ],
    "eventType": "AwsApiCall",
    "managementEvent": true,
    "eventCategory": "Management",
    "recipientAccountId": "111122223333",
    "sharedEventID": "57f5dbee-16da-413e-979f-2c4c6663475e"
}
```

------
#### [ Decrypt ]

암호화된 트래커 또는 지오펜스 컬렉션에 액세스하면 Amazon Location에서 `Decrypt` 작업을 호출하여 저장된 암호화 데이터 키를 사용하여 암호화된 데이터에 액세스합니다.

다음 예제 이벤트는 `Decrypt` 작업을 기록합니다.

```
{
    "eventVersion": "1.08",
    "userIdentity": {
        "type": "AWSService",
        "invokedBy": "geo.amazonaws.com"
    },
    "eventTime": "2021-04-22T17:10:51Z",
    "eventSource": "kms.amazonaws.com",
    "eventName": "Decrypt",
    "awsRegion": "us-west-2",
    "sourceIPAddress": "172.12.34.56",
    "userAgent": "ExampleDesktop/1.0 (V1; OS)",
    "requestParameters": {
        "encryptionContext": {
            "aws:geo:arn": "arn:aws:geo:us-west-2:111122223333:geofence-collection/SAMPLE-GeofenceCollection"
        },
        "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE",
        "encryptionAlgorithm": "SYMMETRIC_DEFAULT"
    },
    "responseElements": null,
    "requestID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE",
    "eventID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE",
    "readOnly": true,
    "resources": [
        {
            "accountId": "111122223333",
            "type": "AWS::KMS::Key",
            "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE"
        }
    ],
    "eventType": "AwsApiCall",
    "managementEvent": true,
    "eventCategory": "Management",
    "recipientAccountId": "111122223333",
    "sharedEventID": "dc129381-1d94-49bd-b522-f56a3482d088"
}
```

------
#### [ DescribeKey ]

Amazon Location은 `DescribeKey` 작업을 사용하여 트래커 또는 지오펜스 컬렉션과 관련된 AWS KMS 고객 관리 키가 계정 및 리전에 존재하는지 확인합니다.

다음 예제 이벤트는 `DescribeKey` 작업을 기록합니다.

```
{
    "eventVersion": "1.08",
    "userIdentity": {
        "type": "AssumedRole",
        "principalId": "AROAIGDTESTANDEXAMPLE:Sampleuser01",
        "arn": "arn:aws:sts::111122223333:assumed-role/Admin/Sampleuser01",
        "accountId": "111122223333",
        "accessKeyId": "AKIAIOSFODNN7EXAMPLE3",
        "sessionContext": {
            "sessionIssuer": {
                "type": "Role",
                "principalId": "AROAIGDTESTANDEXAMPLE:Sampleuser01",
                "arn": "arn:aws:sts::111122223333:assumed-role/Admin/Sampleuser01",
                "accountId": "111122223333",
                "userName": "Admin"
            },
            "webIdFederationData": {},
            "attributes": {
                "mfaAuthenticated": "false",
                "creationDate": "2021-04-22T17:02:00Z"
            }
        },
        "invokedBy": "geo.amazonaws.com"
    },
    "eventTime": "2021-04-22T17:07:02Z",
    "eventSource": "kms.amazonaws.com",
    "eventName": "DescribeKey",
    "awsRegion": "us-west-2",
    "sourceIPAddress": "172.12.34.56",
    "userAgent": "ExampleDesktop/1.0 (V1; OS)",
    "requestParameters": {
        "keyId": "00dd0db0-0000-0000-ac00-b0c000SAMPLE"
    },
    "responseElements": null,
    "requestID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE",
    "eventID": "ff000af-00eb-00ce-0e00-ea000fb0fba0SAMPLE",
    "readOnly": true,
    "resources": [
        {
            "accountId": "111122223333",
            "type": "AWS::KMS::Key",
            "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-123456SAMPLE"
        }
    ],
    "eventType": "AwsApiCall",
    "managementEvent": true,
    "eventCategory": "Management",
    "recipientAccountId": "111122223333"
}
```

------

## 자세히 알아보기
<a name="Learn-more-data-at-rest-encryption"></a>

다음 리소스에서 키에 대한 추가 정보를 확인할 수 있습니다.
+ [AWS Key Management Service 기본 개념](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html)에 대한 자세한 내용은 *AWS Key Management Service 개발자 안내서*를 참조하세요.
+ 의 [보안 모범 사례에 대한 AWS Key Management Service](https://docs.aws.amazon.com/kms/latest/developerguide/kms-security.html) 자세한 내용은 *AWS Key Management Service 개발자 안내서*를 참조하세요.

# Amazon Location Service의 전송 중 데이터 암호화
<a name="encryption-in-transit"></a>

Amazon Location은 Transport Layer Security(TLS) 1.2 암호화 프로토콜을 사용하여 모든 네트워크 간 데이터를 자동으로 암호화하여 서비스를 오가는 전송 중 데이터를 보호합니다. Amazon Location Service API로 전송된 직접 HTTPS 요청은 보안 연결을 설정하기 위해 [AWS 서명 버전 4 알고리즘](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_sigv-create-signed-request.html)을 사용하여 서명됩니다.

# Amazon Location Service의 사고 대응
<a name="incident-response"></a>

 AWS에서는 보안을 가장 중요하게 생각합니다. AWS 클라우드 [공동 책임 모델의](https://aws.amazon.com/compliance/shared-responsibility-model/) 일환으로는 보안에 가장 민감한 조직의 요구 사항을 충족하는 데이터 센터 및 네트워크 아키텍처를 AWS 관리합니다. AWS 고객은 클라우드에서 보안을 유지할 책임이 있습니다. 즉, 액세스할 수 있는 AWS 도구 및 기능에서 구현하도록 선택한 보안을 제어합니다.

클라우드에서 실행되는 애플리케이션의 목표를 충족하는 보안 기준을 설정하면 대응할 수 있는 편차를 감지할 수 있습니다. 보안 인시던트 대응은 복잡한 주제일 수 있으므로 인시던트 대응(IR)과 선택 사항이 기업 목표에 미치는 영향을 더 잘 이해할 수 있도록 [AWS 보안 인시던트 대응 가이드](https://docs.aws.amazon.com/whitepapers/latest/aws-security-incident-response-guide/aws-security-incident-response-guide.html), [AWS 보안 모범 사례](https://aws.amazon.com/architecture/security-identity-compliance/?cards-all.sort-by=item.additionalFields.sortDate&cards-all.sort-order=desc) 백서 및 [AWS 클라우드 채택 프레임워크(AWS CAF)](https://aws.amazon.com/cloud-adoption-framework/#Security_Perspective) 리소스를 검토하는 것이 좋습니다.

# Amazon Location Service의 로깅 및 모니터링
<a name="security-logging-and-monitoring"></a>

로깅 및 모니터링은 사고 대응의 중요한 부분입니다. 이를 통해 편차를 탐지하고 조사하고 대응할 수 있는 보안 기준을 설정할 수 있습니다. Amazon Location Service의 로깅 및 모니터링을 구현하면 프로젝트와 리소스의 안정성, 가용성 및 성능을 유지할 수 있습니다.

AWS 는 인시던트 대응을 위해 데이터를 로깅하고 수집하는 데 도움이 되는 몇 가지 도구를 제공합니다.

**AWS CloudTrail**  
Amazon Location Service는 사용자 AWS CloudTrail, 역할 또는 서비스가 수행한 작업에 대한 레코드를 제공하는 AWS 서비스인와 통합됩니다. 여기에는 Amazon Location Service 콘솔의 작업과 Amazon Location API 작업에 대한 프로그래밍 방식 호출이 포함됩니다. 이러한 작업 기록을 이벤트라고 합니다. 자세한 내용은 [를 사용하여 Amazon Location Service 로깅 및 모니터링을 AWS CloudTrail](https://docs.aws.amazon.com/location/latest/developerguide/cloudtrail.html) 참조하세요.

**Amazon CloudWatch**  
Amazon CloudWatch를 사용하여 Amazon Location Service 계정에 대한 지표를 수집하고 분석할 수 있습니다. CloudWatch 경보를 활성화하여 지표가 특정 조건을 충족하고 지정된 임계값에 도달하면 알림을 받을 수 있습니다. 경보를 생성하면 CloudWatch는 사용자가 정의한 Amazon Simple Notification Service에 알림을 보냅니다. 자세한 내용은 [Amazon CloudWatch를 통한 Amazon Location Service 모니터링](https://docs.aws.amazon.com/location/latest/developerguide/cloudwatch.html)을 참조하세요.

**AWS Health 대시보드**  
[AWS Health 대시보드](https://status.aws.amazon.com/)를 사용하여 Amazon Location Service 서비스의 상태를 확인할 수 있습니다. AWS 환경에 영향을 미칠 수 있는 이벤트 또는 문제에 대한 기록 데이터를 모니터링하고 볼 수도 있습니다. 자세한 내용은 [AWS Health 사용 설명서](https://docs.aws.amazon.com/health/latest/ug/what-is-aws-health.html)를 참조하십시오.

# Amazon Location Service에 대한 규정 준수 확인
<a name="compliance-validation"></a>

AWS 서비스가 특정 규정 준수 프로그램의 범위에 포함되는지 알아보려면 [규정 준수 프로그램 제공 범위 내 AWS 서비스](https://aws.amazon.com/compliance/services-in-scope/)를 참조하고 관심 있는 규정 준수 프로그램을 선택하십시오. 일반적인 정보는 [AWS 규정 준수 프로그램](https://aws.amazon.com/compliance/programs/)을 참조하세요.

AWS Artifact(을)를 사용하여 타사 감사 보고서를 다운로드할 수 있습니다. 자세한 내용은 [AWS Artifact에서 보고서 다운로드](https://docs.aws.amazon.com/artifact/latest/ug/downloading-documents.html)를 참조하세요.

AWS 서비스 사용 시 규정 준수 책임은 데이터의 민감도, 회사의 규정 준수 목표 및 관련 법률 및 규정에 따라 결정됩니다. AWS 서비스 사용 시 규정 준수 책임에 대한 자세한 내용은 [AWS 보안 설명서](https://docs.aws.amazon.com/security/)를 참조하세요.

# Amazon Location Service의 복원성
<a name="disaster-recovery-resiliency"></a>

AWS 글로벌 인프라는 AWS 리전 및 가용 영역을 중심으로 구축됩니다. AWS 리전에서는 물리적으로 분리되고 격리된 다수의 가용 영역을 제공하며 이러한 가용 영역은 짧은 대기 시간, 높은 처리량 및 높은 중복성을 갖춘 네트워크에 연결되어 있습니다. 가용 영역을 사용하면 중단 없이 영역 간에 자동으로 장애 극복 조치가 이루어지는 애플리케이션 및 데이터베이스를 설계하고 운영할 수 있습니다. 가용 영역은 기존의 단일 또는 다중 데이터 센터 인프라보다 가용성, 내결함성, 확장성이 뛰어납니다.

AWS 리전 및 가용 영역에 대한 자세한 정보는 [AWS 글로벌 인프라](https://aws.amazon.com/about-aws/global-infrastructure/)를 참조하세요.

AWS 글로벌 인프라 외에도 Amazon Location은 데이터 복원성과 백업 요구 사항을 지원하는 다양한 기능을 제공합니다.

# Amazon Location Service의 인프라 보안
<a name="infrastructure-security"></a>

관리형 서비스인 Amazon Location Service는 AWS 글로벌 네트워크 보안으로 보호됩니다. AWS 보안 서비스와 AWS의 인프라 보호 방법에 대한 자세한 내용은 [AWS 클라우드 보안](https://aws.amazon.com/security/)을 참조하세요. 인프라 보안에 대한 모범 사례를 사용하여 AWS 환경을 설계하려면 *보안 원칙 AWS Well‐Architected Framework*의 [인프라 보호](https://docs.aws.amazon.com/wellarchitected/latest/security-pillar/infrastructure-protection.html)를 참조하세요.

AWS에서 게시한 API 호출을 사용하여 네트워크를 통해 Amazon Location에 액세스합니다. 고객은 다음을 지원해야 합니다.
+ Transport Layer Security(TLS) TLS 1.2는 필수이며 TLS 1.3을 권장합니다.
+ DHE(Ephemeral Diffie-Hellman) 또는 ECDHE(Elliptic Curve Ephemeral Diffie-Hellman)와 같은 완전 전송 보안(PFS)이 포함된 암호 제품군 Java 7 이상의 최신 시스템은 대부분 이러한 모드를 지원합니다.

# AWS PrivateLink Amazon Location용
<a name="privatelink-interface-endpoints"></a>

 AWS PrivateLink for Amazon Location을 사용하면 가상 프라이빗 클라우드(Amazon *VPC)에서 인터페이스 Amazon* VPC 엔드포인트(인터페이스 엔드포인트)를 프로비저닝할 수 있습니다. 이러한 엔드포인트는 VPN 및를 통해 온프레미스에 Direct Connect있거나 [Amazon VPC 피어링](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html)을 AWS 리전 통해 다른에 있는 애플리케이션에서 직접 액세스할 수 있습니다. AWS PrivateLink 및 인터페이스 엔드포인트를 사용하면 애플리케이션에서 Amazon Location으로의 프라이빗 네트워크 연결을 단순화할 수 있습니다.

VPC의 애플리케이션은 Amazon Location 작업을 위해 Amazon Location 인터페이스 VPC 엔드포인트와 통신하는 데 퍼블릭 IP 주소가 필요하지 않습니다. 인터페이스 엔드포인트는 Amazon VPC의 서브넷에서 프라이빗 IP 주소가 할당된 하나 이상의 탄력적 네트워크 인터페이스(ENI)로 표시됩니다. 인터페이스 엔드포인트를 통한 Amazon Location에 대한 요청은 Amazon 네트워크에 유지됩니다. Direct Connect 또는 AWS Virtual Private Network ()를 통해 온프레미스 애플리케이션에서 Amazon VPC의 인터페이스 엔드포인트에 액세스할 수도 있습니다Site-to-Site VPN. Amazon VPC를 온프레미스 네트워크에 연결하는 방법에 대한 자세한 내용은 [Direct Connect 사용 설명서](https://docs.aws.amazon.com/directconnect/latest/UserGuide/Welcome.html) 및 [AWS Site-to-Site VPN](https://docs.aws.amazon.com/vpn/latest/s2svpn/VPC_VPN.html) 사용 설명서를 참조하세요.

인터페이스 엔드포인트에 대한 일반적인 정보는 **AWS PrivateLink 안내서의 [인터페이스 VPC 엔드포인트(AWS PrivateLink)](https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html)를 참조하세요.

**Topics**
+ [Amazon Location Service용 Amazon VPC 엔드포인트 유형](#types-of-vpc-endpoints-for-al)
+ [Amazon Location Service AWS PrivateLink 용 사용 시 고려 사항](#privatelink-considerations)
+ [Amazon Location Service용 인터페이스 엔드포인트 생성](#al-creating-vpc)
+ [Amazon Location 인터페이스 엔드포인트에서 Amazon Location API 작업에 액세스](#accessing-apis-from-interface-endpoints)
+ [온프레미스 DNS 구성 업데이트](#updating-on-premises-dns-config)
+ [Amazon Location에 대한 Amazon VPC 엔드포인트 정책 생성](#creating-vpc-endpoint-policy)

## Amazon Location Service용 Amazon VPC 엔드포인트 유형
<a name="types-of-vpc-endpoints-for-al"></a>

한 가지 유형의 Amazon VPC 엔드포인트, 즉 *인터페이스 엔드포인트*( 사용)를 사용하여 Amazon Location Service에 액세스할 수 있습니다 AWS PrivateLink. *인터페이스 엔드포인트*는 프라이빗 IP 주소를 통해 온프레미스의 Amazon VPC 내에서 또는 Amazon VPC 피어링을 사용하여 다른 AWS 리전 의 Amazon VPC에서 Amazon Location으로 요청을 라우팅합니다. 자세한 내용은 [Amazon VPC 피어링이란?](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) 및 [Transit Gateway와 Amazon VPC 피어링 비교](https://docs.aws.amazon.com/whitepapers/latest/building-scalable-secure-multi-vpc-network-infrastructure/vpc-to-vpc-connectivity.html)를 참조하세요.

인터페이스 엔드포인트는 게이트웨이 엔드포인트와 호환됩니다. Amazon VPC에 기존 게이트웨이 엔드포인트가 있는 경우, 동일한 Amazon VPC에서 두 가지 유형의 엔드포인트를 모두 사용할 수 있습니다.

Amazon Location의 인터페이스 엔드포인트에는 다음과 같은 속성이 있습니다.
+ 네트워크 트래픽은 AWS 네트워크에 남아 있습니다.
+ Amazon VPC의 프라이빗 IP 주소를 사용하여 Amazon Location Service에 액세스
+ 온프레미스에서의 액세스 허용
+ Amazon VPC 피어링 또는를 AWS 리전 사용하여 다른의 Amazon VPC 엔드포인트에서 액세스 허용 AWS Transit Gateway
+ 인터페이스 엔드포인트는 다음으로 구동됩니다.

## Amazon Location Service AWS PrivateLink 용 사용 시 고려 사항
<a name="privatelink-considerations"></a>

Amazon VPC 고려 사항은 for Amazon Location Service AWS PrivateLink 에 적용됩니다. 자세한 내용은 *AWS PrivateLink 가이드*의 [인터페이스 엔드포인트 고려 사항](https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html) 및 [AWS PrivateLink 할당량](https://docs.aws.amazon.com/vpc/latest/privatelink/vpc-limits-endpoints.html)을 참조하십시오. 또한 다음과 같은 제한 사항이 적용됩니다.

AWS PrivateLink Amazon Location Service용는 다음을 지원하지 않습니다.
+ Transport Layer Security (TLS) 1.1
+ 프라이빗 및 하이브리드 도메인 이름 시스템(DNS) 서비스

Amazon VPC 엔드포인트:
+ `GetGlyphs`, `GetSprites`, `GetStyleDescriptor`를 포함한 [Amazon Location Service Maps API](https://docs.aws.amazon.com/location/latest/APIReference/API_Operations_Amazon_Location_Service_Maps_V2.html) 작업을 지원하지 않습니다.
+ 교차 리전 요청을 지원하지 않습니다. API 직접 호출을 Amazon Location Service로 발행할 계획인 동일 리전에서 엔드포인트를 생성해야 합니다.
+ Amazon Route 53을 통해 Amazon이 제공하는 DNS만 지원합니다. 자신의 DNS를 사용하는 경우에는 조건적인 DNS 전송을 사용합니다. 자세한 내용은 *Amazon VPC 사용 설명서*의 [DHCP 옵션 세트](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_DHCP_Options.html)를 참조하세요.
+ VPC 엔드포인트에 연결된 보안 그룹을 통해 VPC의 프라이빗 서브넷에서 443 포트로 들어오는 연결을 허용해야 합니다.

활성화한 각 AWS PrivateLink 엔드포인트에 대해 초당 최대 5만 개의 요청을 제출할 수 있습니다.

**참고**  
 AWS PrivateLink 엔드포인트에 대한 네트워크 연결 제한 시간은 Amazon Location 오류 응답 범위 내에 있지 않으므로 AWS PrivateLink 엔드포인트에 연결하는 애플리케이션에서 적절하게 처리해야 합니다.

## Amazon Location Service용 인터페이스 엔드포인트 생성
<a name="al-creating-vpc"></a>

Amazon VPC 콘솔 또는 AWS Command Line Interface (AWS CLI)를 사용하여 Amazon Location의 인터페이스 엔드포인트를 생성할 수 있습니다. 자세한 내용은 *AWS PrivateLink 안내서*의 [인터페이스 엔드포인트 생성](https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html)을 참조하세요.

6개의 VPC 엔드포인트가 있으며, Amazon Location Service에서 제공하는 각 기능에 대해 하나씩 있습니다.


| 카테고리 | 엔드포인트 | 
| --- | --- | 
| Maps |  `com.amazonaws.region.geo.maps`  | 
| Places |  `com.amazonaws.region.geo.places`  | 
| Routes |  `com.amazonaws.region.geo.routes`  | 
| Geofences | `com.amazonaws.region.geo.geofencing` | 
| Trackers |  `com.amazonaws.region.geo.tracking`  | 
| Metadata |  `com.amazonaws.region.geo.metadata`  | 

**예: **

```
com.amazonaws.us-east-2.geo.maps
```

엔드포인트를 만든 다음 프라이빗 DNS 호스트 이름을 활성화할 수 있습니다. 활성화하려면 VPC 엔드포인트를 생성할 때 VPC 콘솔에서 **프라이빗 DNS 이름 활성화**를 선택합니다.

인터페이스 엔드포인트에 프라이빗 DNS를 사용하도록 설정하는 경우, 리전에 대한 기본 DNS 이름(예: )을 사용하여 Amazon Location Service 서비스에 API 요청을 할 수 있습니다. 다음 예제에서는 기본 리전 DNS 이름 형식을 보여줍니다.
+ `maps.geo.region.amazonaws.com`
+ `places.geo.region.amazonaws.com`
+ `routes.geo.region.amazonaws.com`
+ `tracking.geo.region.amazonaws.com`
+ `geofencing.geo.region.amazonaws.com`
+ `metadata.geo.region.amazonaws.com`

이전 DNS 이름은 IPv4 도메인용입니다. 인터페이스 엔드포인트에 다음 IPV6 DNS 이름을 사용할 수도 있습니다.
+ `maps.geo.region.api.aws`
+ `places.geo.region.api.aws`
+ `routes.geo.region.api.aws`
+ `tracking.geo.region.api.aws`
+ `geofencing.geo.region.api.aws`
+ `metadata.geo.region.api.aws`

## Amazon Location 인터페이스 엔드포인트에서 Amazon Location API 작업에 액세스
<a name="accessing-apis-from-interface-endpoints"></a>

[AWS CLI](https://docs.aws.amazon.com/cli/latest/reference/location/) 또는 [AWS SDKs](https://docs.aws.amazon.com/location/latest/developerguide/dev-sdks.html)를 사용하여 Amazon Location 인터페이스 엔드포인트를 통해 Amazon Location API 작업에 액세스할 수 있습니다.

**예: VPC 엔드포인트 생성**

```
aws ec2 create-vpc-endpoint \
--region us-east-1 \
--service-name location-service-name \
--vpc-id client-vpc-id \
--subnet-ids client-subnet-id \
--vpc-endpoint-type Interface \
--security-group-ids client-sg-id
```

**예: VPC 엔드포인트 수정**

```
aws ec2 modify-vpc-endpoint \
--region us-east-1 \
--vpc-endpoint-id client-vpc-endpoint-id \
--policy-document policy-document \ #example optional parameter
--add-security-group-ids security-group-ids \ #example optional parameter 
# any additional parameters needed, see PrivateLink documentation for more details
```

## 온프레미스 DNS 구성 업데이트
<a name="updating-on-premises-dns-config"></a>

엔드포인트별 DNS 이름을 사용하여 Amazon Location의 인터페이스 엔드포인트에 액세스할 때는 온프레미스 DNS 확인자를 업데이트할 필요가 없습니다. 퍼블릭 Amazon Location DNS 도메인의 인터페이스 엔드포인트의 프라이빗 IP 주소로 엔드포인트별 DNS 이름을 확인할 수 있습니다.

인터페이스 엔드포인트를 사용하여 Amazon VPC의 게이트웨이 엔드포인트 또는 인터넷 게이트웨이 없이 Amazon Location에 액세스

Amazon VPC의 인터페이스 엔드포인트는 Amazon 네트워크를 통해 Amazon VPC 내 애플리케이션과 온프레미스 애플리케이션을 모두 Amazon Location로 라우팅할 수 있습니다.

## Amazon Location에 대한 Amazon VPC 엔드포인트 정책 생성
<a name="creating-vpc-endpoint-policy"></a>

Amazon Location에 대한 액세스를 제어하는 Amazon VPC 엔드포인트에 엔드포인트 정책을 연결할 수 있습니다. 이 정책은 다음 정보를 지정합니다.
+ 작업을 수행할 수 있는 AWS Identity and Access Management (IAM) 보안 주체
+ 수행할 수 있는 작업
+ 작업을 수행할 수 있는 리소스

**예:** Amazon Location Service Places APIs에 액세스하기 위한 샘플 VPCe 정책:

```
{
	"Version": "2012-10-17",		 	 	 
	"Statement": [
		{
			"Sid": "Allow-access-to-location-service-places-opeartions",
			"Effect": "Allow",
			"Action": [
				"geo-places:*",
				"geo:*"
			],
			"Resource": [
				"arn:aws:geo-places:us-east-1::provider/default",
				"arn:aws:geo:us-east-1:*:place-index/*"
			]
		}
	]
}
```

# Amazon Location의 구성 및 취약성 분석
<a name="vulnerability-analysis-and-management"></a>

구성 및 IT 제어는 AWS 와 고객 간의 공동 책임입니다. 자세한 내용은 AWS [공동 책임 모델을](https://aws.amazon.com/compliance/shared-responsibility-model/) 참조하세요.

# 교차 서비스 혼동된 대리인 방지
<a name="cross-service-confused-deputy-prevention"></a>

혼동된 대리자 문제는 작업을 수행할 권한이 없는 엔터티가 권한이 더 많은 엔터티에게 작업을 수행하도록 강요할 수 있는 보안 문제입니다. 에서 AWS교차 서비스 가장은 혼동된 대리자 문제를 초래할 수 있습니다. 교차 서비스 가장은 한 서비스(*직접 호출하는 서비스*)가 다른 서비스(*직접 호출되는 서비스*)를 직접 호출할 때 발생할 수 있습니다. 직접 호출하는 서비스는 다른 고객의 리소스에 대해 액세스 권한이 없는 방식으로 작동하게 권한을 사용하도록 조작될 수 있습니다. 이를 방지하기 위해 AWS 에서는 계정의 리소스에 대한 액세스 권한이 부여된 서비스 위탁자를 사용하여 모든 서비스에 대한 데이터를 보호하는 데 도움이 되는 도구를 제공합니다.

Amazon Location Service는 사용자를 대신하여 다른 서비스에 대한 호출 AWS 서비스 역할을 하지 않으므로이 경우 이러한 보호를 추가할 필요가 없습니다. 혼동된 대리자 문제에 대해 자세히 알아보려면, *AWS Identity and Access Management 사용 설명서*의 [혼동된 대리자 문제](https://docs.aws.amazon.com/IAM/latest/UserGuide/confused-deputy.html)를 참조하세요.

# Amazon Location Service의 모범 사례
<a name="best-practices"></a>

이 항목에서는 Amazon Location Service를 사용하는 데 도움이 되는 모범 사례를 제공합니다. 이러한 모범 사례는 Amazon Location Service를 최대한 활용하는 데 도움이 될 수 있지만 완전한 솔루션은 아닙니다. 환경에 해당하는 권장 사항만 따라야 합니다.

**Topics**
+ [보안](#security-best-practice)

## 보안
<a name="security-best-practice"></a>

보안 위험을 관리하거나 방지하려면 다음 모범 사례를 고려하세요.
+ ID 페더레이션 및 IAM 역할을 사용하여 Amazon Location 리소스에 대한 액세스를 관리, 제어 또는 제한할 수 있습니다. 자세한 내용은 *IAM 사용 설명서*의 [IAM 모범 사례](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html) 섹션을 참조하세요.
+ 최소 권한 원칙에 따라 Amazon Location Service 리소스에 필요한 최소 액세스 권한만 부여하세요.
+ 웹 애플리케이션에 사용되는 Amazon Location Service 리소스의 경우 `aws:referer` IAM 조건을 사용하여 액세스를 제한하여 허용 목록에 포함된 사이트 이외의 사이트에서의 사용을 제한하세요.
+ 모니터링 및 로깅 도구를 사용하여 리소스 액세스 및 사용을 추적하세요. 자세한 내용은 사용 AWS CloudTrail 설명서의 [Amazon Location Service의 로깅 및 모니터링](security-logging-and-monitoring.md) 및 [추적에 대한 데이터 이벤트 로깅](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-data-events-with-cloudtrail.html)을 참조하세요.
+ 보안 연결(예: `https://`로 시작)을 사용하여 보안을 강화하고 서버와 브라우저 간에 데이터가 전송되는 동안 공격으로부터 사용자를 보호하세요.

### Amazon Location Service의 탐지 보안 모범 사례
<a name="security-best-practices-detective"></a>

다음과 같은 Amazon Location Service 모범 사례는 보안 사고를 탐지하는 데 도움이 됩니다.

** AWS 모니터링 도구 구현**  
모니터링은 사고 대응에 매우 중요하며 Amazon Location Service 리소스 및 솔루션의 안정성과 보안을 유지합니다. 를 통해 사용할 수 있는 여러 도구 및 서비스에서 모니터링 도구를 구현 AWS 하여 리소스 및 기타 AWS 서비스를 모니터링할 수 있습니다.  
예를 들어, Amazon CloudWatch를 사용하면 Amazon Location Service의 지표를 모니터링하고 지표가 사용자가 설정한 특정 조건을 충족하고 정의한 임계값에 도달하면 알림을 받도록 경보를 설정할 수 있습니다. 경보를 생성할 때 CloudWatch가 Amazon Simple Notification Service를 사용하여 경고 알림을 보내도록 설정할 수 있습니다. 자세한 내용은 [Amazon Location Service의 로깅 및 모니터링](security-logging-and-monitoring.md) 단원을 참조하십시오.

** AWS 로깅 도구 활성화**  
로깅은 Amazon Location Service에서 사용자, 역할 또는 AWS 서비스가 수행한 작업에 대한 레코드를 제공합니다. 와 같은 로깅 도구를 구현 AWS CloudTrail 하여 비정상적인 API 활동을 탐지하는 작업에 대한 데이터를 수집할 수 있습니다.  
추적을 생성할 때 이벤트를 기록하도록 CloudTrail을 구성할 수 있습니다. 이벤트는 리소스에서 또는 리소스 내에서 수행되는 리소스 작업의 기록으로서 Amazon Location에 대한 요청, 요청이 이루어진 IP 주소, 요청한 사람, 요청이 이루어진 시간 및 추가 데이터가 포함됩니다. 자세한 내용은 AWS CloudTrail 사용 설명서의 [추적에 대한 데이터 이벤트 로깅](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-data-events-with-cloudtrail.html)을 참조하세요.

### Amazon Location Service의 예방적 보안 모범 사례
<a name="security-best-practices-preventive"></a>

다음과 같은 Amazon Location Service 모범 사례를 통해 보안 사고를 예방할 수 있습니다.

**보안 연결 사용**  
전송 중에 민감한 정보를 안전하게 유지하기 위해 항상 암호화된 연결(예: `https://`(으)로 시작하는 연결)을 사용하세요.

**리소스에 대한 최소 권한 액세스 구현**  
Amazon Location 리소스에 대한 사용자 지정 정책을 생성하는 경우 작업을 수행하는 데 필요한 권한만 부여하세요. 최소한의 권한으로 시작하고 필요에 따라 추가 권한을 부여하는 것이 좋습니다. 오류나 악의적인 공격으로 인해 발생할 수 있는 위험과 영향을 줄이려면 최소 권한 액세스를 구현하는 것이 필수적입니다. 자세한 내용은 [AWS Identity and Access Management 를 사용하여 인증](security-iam.md) 섹션을 참조하세요.

**전역적으로 고유한 ID를 디바이스 ID로 사용**  
디바이스 ID에는 다음 규칙을 사용하세요.  
+ 디바이스 ID는 고유해야 합니다.
+ 디바이스 ID는 다른 시스템의 외부 키로 사용될 수 있으므로 비밀로 설정해서는 안 됩니다.
+ 디바이스 ID에는 전화 디바이스 ID 또는 이메일 주소와 같은 개인 식별 정보(PII) 가 포함되어서는 안 됩니다.
+ 디바이스 ID는 예측할 수 없어야 합니다. UUID와 같은 불투명 식별자를 사용하는 것이 좋습니다.

**디바이스 위치 속성에 PII를 포함하지 않음**  
디바이스 업데이트를 보낼 때(예: [DevicePositionUpdate](https://docs.aws.amazon.com/location/latest/APIReference/API_WaypointTracking_DevicePositionUpdate.html) 사용) 전화번호나 이메일 주소와 같은 개인 식별 정보(PII)를 `PositionProperties`에 포함하지 마세요.