API Gateway에서 REST API 사용자 지정 도메인에 대한 보안 정책 선택
Amazon API Gateway 사용자 지정 도메인에 대한 보안을 강화하기 위해 API Gateway 콘솔, AWS CLI, 또는 AWS SDK에서 보안 정책을 선택할 수 있습니다.
보안 정책은 API Gateway가 제공하는 최소 TLS 버전과 암호 제품군의 사전 정의된 조합입니다. TLS 버전 1.2 또는 TLS 버전 1.0 보안 정책 중 하나를 선택할 수 있습니다. TLS 프로토콜은 클라이언트와 서버 간의 변조 및 도청과 같은 네트워크 보안 문제를 해결합니다. 클라이언트가 사용자 지정의 도메인을 통해 API에 TLS 핸드셰이크를 설정하면 보안 정책은 클라이언트가 선택할 수 있는 TLS 버전 및 암호 제품군 옵션을 적용합니다.
사용자 지정 도메인 설정에서, 보안 정책은 다음 두 가지 설정을 결정합니다.
-
API Gateway가 API 클라이언트와 통신하는 데 사용하는 최소 TLS 버전
-
API Gateway가 API 클라이언트에 반환하는 콘텐츠를 암호화하는 데 사용하는 암호
TLS 1.0 보안 정책을 선택하면 보안 정책은 TLS 1.0, TLS 1.2 및 TLS 1.3 트래픽을 허용합니다. TLS 1.2 보안 정책을 선택하면 보안 정책은 TLS 1.2 및 TLS 1.3 트래픽을 허용하고 TLS 1.0 트래픽은 거부합니다.
참고
사용자 지정 도메인에 대한 보안 정책만 지정할 수 있습니다. 기본 엔드포인트를 사용하는 API의 경우 API Gateway는 다음 보안 정책을 사용합니다.
엣지 최적화 API의 경우:
TLS-1-0
리전 API의 경우:
TLS-1-0
프라이빗 API의 경우:
TLS-1-2
각 보안 정책의 암호는 이 페이지의 다음 표에 설명되어 있습니다.
주제
사용자 지정 도메인에 대한 보안 정책을 지정하는 방법
사용자 지정 도메인 이름을 생성할 때 사용자 지정 도메인에 대한 보안 정책을 지정합니다. 사용자 정의 도메인을 만드는 방법을 알아보려면, API Gateway API에서 엣지 최적화 사용자 지정 도메인 이름 설정 또는 API Gateway에서 리전 사용자 지정 도메인 이름 설정를 참조합니다.
사용자 지정 도메인 이름의 보안 정책을 변경하려면 사용자 지정 도메인 설정을 업데이트합니다. AWS Management Console, AWS CLI, 또는 AWS SDK를 사용하여 사용자 지정 도메인 이름 설정을 업데이트할 수 있습니다.
API Gateway REST API나 AWS CLI를 사용하는 경우, securityPolicy
파라미터에 새 TLS 버전, TLS_1_0
또는 TLS_1_2
를 지정합니다. 자세한 내용은 Amazon API Gateway REST API 참조의 domainname:update 또는 AWS CLI 참조의 update-domain-name을 참조합니다.
업데이트 작업을 완료하는 데 몇 분 정도 걸릴 수 있습니다.
엣지에 최적화된 사용자 지정 도메인에 대해 지원되는 보안 정책, TLS 프로토콜 버전 및 암호
다음 표에서는 엣지 최적화 사용자 지정 도메인 이름에 대해 지정할 수 있는 보안 정책에 대해 설명합니다.
TLS 프로토콜 |
TLS_1_0 보안 정책 |
TLS_1_2 보안 정책 |
---|---|---|
TLSv1.3 | ||
TLSv1.2 | ||
TLSv1.1 | ||
TLSv1 |
다음 표에서는 각 보안 정책에 사용할 수 있는 TLS 암호를 설명합니다.
TLS 싸이퍼 |
TLS_1_0 보안 정책 |
TLS_1_2 보안 정책 |
---|---|---|
TLS_AES_128_GCM_SHA256 | ||
TLS_AES_256_GCM_SHA384 | ||
TLS_CHACHA20_POLY1305_SHA256 | ||
ECDHE-ECDSA-AES128-GCM-SHA256 | ||
ECDHE-ECDSA-AES128-SHA256 | ||
ECDHE-ECDSA-AES128-SHA | ||
ECDHE-ECDSA-AES256-GCM-SHA384 | ||
ECDHE-ECDSA-CHACHA20-POLY1305 | ||
ECDHE-ECDSA-AES256-SHA384 | ||
ECDHE-ECDSA-AES256-SHA | ||
ECDHE-RSA-AES128-GCM-SHA256 | ||
ECDHE-RSA-AES128-SHA256 | ||
ECDHE-RSA-AES128-SHA | ||
ECDHE-RSA-AES256-GCM-SHA384 | ||
ECDHE-RSA-CHACHA20-POLY1305 | ||
ECDHE-RSA-AES256-SHA384 | ||
ECDHE-RSA-AES256-SHA | ||
AES128-GCM-SHA256 | ||
AES256-GCM-SHA384 | ||
AES128-SHA256 | ||
AES256-SHA | ||
AES128-SHA | ||
DES-CBC3-SHA |
리전 사용자 지정 도메인에 대해 지원되는 보안 정책, TLS 프로토콜 버전 및 암호
다음 표에서는 리전 사용자 지정 도메인 이름에 대한 보안 정책을 설명합니다.
TLS 프로토콜 |
TLS_1_0 보안 정책 |
TLS_1_2 보안 정책 |
---|---|---|
TLSv1.3 |
||
TLSv1.2 |
||
TLSv1.1 |
||
TLSv1 |
다음 표에서는 각 보안 정책에 사용할 수 있는 TLS 암호를 설명합니다.
TLS 싸이퍼 |
TLS_1_0 보안 정책 |
TLS_1_2 보안 정책 |
---|---|---|
TLS_AES_128_GCM_SHA256 |
||
TLS_AES_256_GCM_SHA384 |
||
TLS_CHACHA20_POLY1305_SHA256 |
||
ECDHE-ECDSA-AES128-GCM-SHA256 |
||
ECDHE-RSA-AES128-GCM-SHA256 |
||
ECDHE-ECDSA-AES128-SHA256 |
||
ECDHE-RSA-AES128-SHA256 |
||
ECDHE-ECDSA-AES128-SHA |
||
ECDHE-RSA-AES128-SHA |
||
ECDHE-ECDSA-AES256-GCM-SHA384 |
||
ECDHE-RSA-AES256-GCM-SHA384 |
||
ECDHE-ECDSA-AES256-SHA384 |
||
ECDHE-RSA-AES256-SHA384 |
||
ECDHE-RSA-AES256-SHA |
||
ECDHE-ECDSA-AES256-SHA |
||
AES128-GCM-SHA256 |
||
AES128-SHA256 |
||
AES128-SHA |
||
AES256-GCM-SHA384 |
||
AES256-SHA256 |
||
AES256-SHA |
프라이빗 API에 지원되는 TLS 프로토콜 버전 및 암호
다음 표에서는 프라이빗 API에 대해 지원되는 TLS 프로토콜을 설명합니다. 프라이빗 API에 대한 보안 정책 지정은 지원되지 않습니다.
TLS 프로토콜 |
TLS_1_2 보안 정책 |
---|---|
TLSv1.2 |
다음 표에서는 프라이빗 API에 대한 TLS_1_2
보안 정책에 사용할 수 있는 TLS 암호를 설명합니다.
TLS 싸이퍼 |
TLS_1_2 보안 정책 |
---|---|
ECDHE-ECDSA-AES128-GCM-SHA256 |
|
ECDHE-RSA-AES128-GCM-SHA256 |
|
ECDHE-ECDSA-AES128-SHA256 |
|
ECDHE-RSA-AES128-SHA256 |
|
ECDHE-ECDSA-AES256-GCM-SHA384 | |
ECDHE-RSA-AES256-GCM-SHA384 | |
ECDHE-ECDSA-AES256-SHA384 | |
ECDHE-RSA-AES256-SHA384 | |
AES128-GCM-SHA256 | |
AES128-SHA256 | |
AES256-GCM-SHA384 | |
AES256-SHA256 |
OpenSSL 및 RFC 암호 이름
OpenSSL 및 IETF RFC 5246은 동일한 암호에 대해 서로 다른 이름을 사용합니다. 다음 표에는 각 암호의 RFC 이름에 OpenSSL 이름이 매핑되어 있습니다.
OpenSSL 암호 이름 |
RFC 암호 이름 |
---|---|
TLS_AES_128_GCM_SHA256 |
TLS_AES_128_GCM_SHA256 |
TLS_AES_256_GCM_SHA384 |
TLS_AES_256_GCM_SHA384 |
TLS_CHACHA20_POLY1305_SHA256 |
TLS_CHACHA20_POLY1305_SHA256 |
ECDHE-RSA-AES128-GCM-SHA256 |
TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 |
ECDHE-RSA-AES128-SHA256 |
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 |
ECDHE-RSA-AES128-SHA |
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA |
ECDHE-RSA-AES256-GCM-SHA384 |
TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 |
ECDHE-RSA-AES256-SHA384 |
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 |
ECDHE-RSA-AES256-SHA |
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA |
AES128-GCM-SHA256 |
TLS_RSA_WITH_AES_128_GCM_SHA256 |
AES256-GCM-SHA384 |
TLS_RSA_WITH_AES_256_GCM_SHA384 |
AES128-SHA256 |
TLS_RSA_WITH_AES_128_CBC_SHA256 |
AES256-SHA |
TLS_RSA_WITH_AES_256_CBC_SHA |
AES128-SHA |
TLS_RSA_WITH_AES_128_CBC_SHA |
DES-CBC3-SHA |
TLS_RSA_WITH_3DES_EDE_CBC_SHA |
HTTP API 및 WebSocket API에 대한 정보
HTTP APIs 및 WebSocket APIs에 대한 자세한 내용은 API Gateway의 HTTP API 보안 정책 및 API Gateway의 WebSocket API 보안 정책을 참조합니다.