설명
API Gateway에서 HTTP를 허용하면 클라이언트와 게이트웨이 사이의 요청과 응답이 암호화되지 않은 채 전송될 수 있습니다. HTTP와 HTTPS를 함께 허용해도 평문 접근은 남습니다.
잠재적 영향
네트워크 트래픽을 가로챌 수 있는 공격자가 인증 헤더나 요청 내용을 읽거나 변조할 수 있습니다.
해결 방법
request_config.protocol을 HTTPS로 설정하고 클라이언트가 HTTPS 주소를 사용하도록 변경하세요. 게이트웨이와 백엔드 사이의 TLS도 별도로 구성하세요.
예시
요청 프로토콜을 바꾸는 발췌 예시입니다. API 그룹, 인증 및 백엔드 설정은 생략했습니다.
변경 전
hcl
resource "alicloud_api_gateway_api" "api_gateway" {
request_config {
protocol = "HTTP"
method = "GET"
path = "/test/path1"
mode = "MAPPING"
}
}
변경 후
hcl
resource "alicloud_api_gateway_api" "api_gateway" {
request_config {
protocol = "HTTPS"
method = "GET"
path = "/test/path1"
mode = "MAPPING"
}
}