説明
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"
}
}