HTTPS は、Secure Sockets Layer (SSL) を使用してデータを暗号化することにより、標準の HTTP プロトコルにセキュリティレイヤーを追加します。これにより、転送中のデータセキュリティが保証されます。
API Gateway では、HTTPS を使用して API リクエストを保護できます。各 API が HTTP のみ、HTTPS のみ、またはその両方をサポートするように設定できます。ご利用の API で HTTPS を有効化するには、次の手順に従います。
ステップ1:前提条件
開始する前に、以下をご用意ください。
お客様が所有し、管理している独立ドメイン。
そのドメイン名に対応する SSL 証明書。
SSL 証明書とその秘密鍵。どちらも PEM フォーマットである必要があります。注意:API Gateway は Nginx ベースのサービスである Tengine を使用しているため、Nginx 互換の PEM フォーマットの証明書が必要です。
SSL 証明書と秘密鍵は、通常、XXXXX.pem と XXXXX.key のような 2 つのファイルで提供されます。どちらもテキストエディターで開くことができます。
キー:
-----BEGIN RSA PRIVATE KEY-----
MIIEpAIBAAKCAQEA8GjIleJ7rlo86mtbwcDnUfqzTQAm4b3zZEo1aKsfAuwcvCud
....
-----END RSA PRIVATE KEY-----PEM:
-----BEGIN CERTIFICATE-----
MIIFtDCCBJygAwIBAgIQRgWF1j00cozRl1pZ+ultKTANBgkqhkiG9w0BAQsFADBP
...
-----END CERTIFICATE----- ステップ2:SSL 証明書のバインド
API Gateway コンソールにログインします。左側のナビゲーションウィンドウで、 を選択します。SSL 証明書をバインドしたい API グループの名前をクリックします。SSL 証明書をバインドする前に、まず API グループに [独立ドメイン] をバインドする必要があります。
ドメイン名が含まれる行の [SSL 証明書] 列にある [証明書の選択] をクリックします。
[独立ドメイン] に SSL 証明書を追加します。
証明書名には、漢字、英字、数字、アンダースコア (_)、ハイフン (-) を使用できます。長さは 4~50 文字で、先頭は英字または漢字である必要があります。証明書の内容と秘密鍵は PEM 形式でエンコードする必要があり、20 KB を超えることはできません。ファイルをインポートするには、[アップロード] ボタンをクリックします。HTTPS 相互認証の場合は、[クリックして CA 証明書を追加] リンクをクリックして CA 証明書を追加します。
証明書名:証明書を識別するためのカスタム名。
証明書の内容:XXXXX.pem 証明書ファイルの全内容。
秘密鍵: XXXXX.key 秘密鍵ファイルの内容。 [OK] をクリックして証明書をバインドします。
ステップ3:API 設定の調整
SSL 証明書をバインドした後、各 API のアクセスプロトコルを制御できます。サポートされているプロトコルは、HTTP、HTTPS、またはその両方です。セキュリティ上の理由から、すべての API が HTTPS を使用するように設定することを推奨します。
[API Gateway コンソール]で、 に移動し、対象の API を見つけます。
対象の API の名前をクリックし、右上隅にある[編集]をクリックします。
[基本情報] ステップで、[次へ] をクリックして [API リクエストの定義] ステップに進みます。[プロトコル] セクションで、目的のプロトコルを選択します。
[HTTP] と [HTTPS] の両方を選択します。
プロトコルの有効な値は次のとおりです。
HTTP:HTTP 経由でのみ API アクセスを許可し、HTTPS 経由でのアクセスを拒否します。
HTTPS:HTTPS 経由でのみ API アクセスを許可し、HTTP 経由でのアクセスを拒否します。
HTTP と HTTPS:両方のプロトコル経由での API アクセスを許可します。これにより、ご利用の API で HTTPS アクセスが有効になります。