

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

# API 키 모범 사례
<a name="api-keys-best-practices"></a>

다음 모범 사례에 따라 API 키를 보호하고 수명 주기를 관리합니다.

## API 키 관리
<a name="api-keys-manage-best-practices"></a>

API 키에는 하나 이상의 AWS 계정리소스 또는 API에 대한 액세스를 제공하는 일반 텍스트 *값*이 포함됩니다. 누군가 API 키를 복사해도 동일한 리소스 및 API에 액세스할 수 있습니다. 잠재적 영향을 최소화하려면 다음 모범 사례를 검토하세요.
+  **API 키 제한** 

  위의 상황을 방지하려면 API 키를 제한하는 것이 가장 좋습니다. 키를 생성할 때 키를 사용할 수 있는 도메인, Android 앱 또는 Apple 앱을 지정할 수 있습니다.
+  **API 키 수명 관리** 

  무기한으로 작동하는 API 키를 생성할 수 있습니다. 하지만 임시 API 키를 생성하거나 정기적으로 API 키를 교체하거나 기존 API 키를 취소하려는 경우에는 *API 키 만료*를 사용할 수 있습니다.
  + API 키를 생성하거나 업데이트할 때 API 키의 만료 시간을 설정할 수 있습니다.
  + API 키가 만료 시간에 도달하면 키가 자동으로 비활성화됩니다. 비활성 키는 더 이상 요청에 사용할 수 없습니다.
  + 만료 시간을 제거하여 임시 키를 영구 키로 변경할 수 있습니다.
  + API 키를 비활성화한 후 90일이 지나면 삭제할 수 있습니다.
  + 지난 7일 이내에 사용된 API 키를 비활성화하려고 하면 변경을 확인하라는 메시지가 표시됩니다.
  + Amazon Location Service API 또는를 사용하는 경우 `ForceUpdate` 파라미터를 로 AWS CLI설정합니다. `true`그렇지 않으면 오류가 발생합니다.

## 요청 오리진별로 API 키 사용 제한
<a name="restrict-usage-by-origin"></a>

특정 도메인 또는 모바일 애플리케이션에 대한 액세스를 제한하는 클라이언트 제한으로 API 키를 구성할 수 있습니다. 도메인별로 제한하는 경우 HTTP Referer 헤더가 사용자가 제공한 값과 일치하는 경우에만 요청이 승인됩니다. Android 또는 Apple 애플리케이션에서 제한하는 경우 애플리케이션 식별자 HTTP 헤더 필드가 사용자가 제공한 값과 일치하는 경우에만 요청이 승인됩니다.

자세한 내용은 *Amazon Location Service API 참조*의 [ApiKeyRestrictions](https://docs.aws.amazon.com/location/latest/APIReference/API_geoapikeys_ApiKeyRestrictions.html) 섹션을 참조하세요.

 **Android 애플리케이션 식별자:** 
+ `X-Android-Package`:

  일반적으로 역도메인 형식을 따르는 앱 `build.gradle` 파일에 정의된 Android 애플리케이션의 고유 식별자입니다.

  예제:

   `com.mydomain.appname` 
+ `X-Android-Cert`:

  Android APK에 서명하는 데 사용되는 서명 인증서의 SHA-1 해시입니다.

  예제:

   `BB:0D:AC:74:D3:21:E1:43:67:71:9B:62:91:AF:A1:66:6E:44:5D:75` 

 **Apple 애플리케이션 식별자:** 
+ `X-Apple-Bundle-Id `:

  일반적으로 역도메인 형식을 따르는 앱의 `Info.plist`에 정의된 Apple(iOS, macOS 등) 애플리케이션의 고유 식별자입니다.

  예제:

   `com.mydomain.appname` 