API Gateway におけるカスタムドメインの TLS の最小バージョンの選択
セキュリティを強化するため、API Gateway コンソール、AWS CLI、または AWS SDK でセキュリティポリシーを設定して、Amazon API Gateway カスタムドメインに適用される Transport Layer Security (TLS) プロトコルの最小バージョンを選択できます。
セキュリティポリシーとは、Amazon API Gateway が提供する TLS の最小バージョンと暗号スイートの事前定義された組み合わせです。TLS バージョン 1.2 または TLS バージョン 1.0 のセキュリティポリシーを選択できます。TLS プロトコルは、クライアントとサーバーの間の改ざんや傍受などのネットワークセキュリティの問題に対処します。クライアントがカスタムドメインを介して API に TLS ハンドシェイクを確立すると、セキュリティポリシーにより、TLS バージョンと暗号スイートのオプションが適用されます。ここで使用するオプションは、クライアントが選択できます。
カスタムドメインの設定では、セキュリティポリシーによって 2 つの設定が決定されます。
-
API クライアントとの通信に API Gateway が使用する TLS の最小バージョン
-
API クライアントに返すコンテンツを暗号化するために API Gateway が使用する暗号化方式
トピック
API Gateway でカスタムドメインの TLS プロトコルの最小バージョンを指定する方法
カスタムドメインを作成するときに、そのドメインにセキュリティポリシーを指定します。セキュリティポリシーの詳細については、次のセクションの表を参照してください。
以下のセクションでは、カスタムドメイン名を作成する方法について説明します。API Gateway コンソールと CLI での TLS の最小バージョンの指定についても説明しています。
セキュリティポリシーは、ドメイン名の設定を更新することで変更できます。TLS の最小バージョンを変更するには、次のいずれかのコマンドを使用し、TLS_1_0
パラメータで新しい TLS バージョン (TLS_1_2
または securityPolicy
) を指定します。更新が完了するまで最大 60 分かかります。
API Gateway でエッジ最適化 API エンドポイントにサポートされているセキュリティポリシー、TLS プロトコルバージョン、および暗号
以下の表は、エッジ最適化 API の各セキュリティポリシーで API Gateway が使用できるプロトコルと暗号の一覧です。
セキュリティポリシー | ||
---|---|---|
TLS-1-0 | TLS-1-2 | |
サポートされている SSL/TLS プロトコル | ||
TLSv1.3 | ♦ | ♦ |
TLSv1.2 | ♦ | ♦ |
TLSv1.1 | ♦ | |
TLSv1 | ♦ | |
SSLv3 | ||
Ciphers supported | ||
ECDHE-RSA-AES128-GCM-SHA256 | ♦ | ♦ |
ECDHE-RSA-AES128-SHA256 | ♦ | ♦ |
ECDHE-RSA-AES128-SHA | ♦ | |
ECDHE-RSA-AES256-GCM-SHA384 | ♦ | ♦ |
ECDHE-RSA-AES256-SHA384 | ♦ | ♦ |
ECDHE-RSA-AES256-SHA | ♦ | |
AES128-GCM-SHA256 | ♦ | ♦ |
AES256-GCM-SHA384 | ♦ | ♦ |
AES128-SHA256 | ♦ | ♦ |
AES256-SHA | ♦ | |
AES128-SHA | ♦ | |
DES-CBC3-SHA | ♦ | |
RC4-MD5 |
API Gateway でリージョン API エンドポイント、プライベート API エンドポイント、および WebSocket API エンドポイントにサポートされている SSL/TLS プロトコルと暗号
次の表では、リージョン API エンドポイント、プライベート API エンドポイント、および WebSocket API のエンドポイントに指定できるセキュリティポリシーについて説明します。
プライベート API および WebSocket API では、TLS-1-2
のみを指定できます。
セキュリティポリシー | TLS-1-0 | TLS-1-2 |
---|---|---|
TLS Protocols | ||
Protocol-TLSv1 |
♦ | |
Protocol-TLSv1.1 |
♦ | |
Protocol-TLSv1.2 |
♦ | ♦ |
TLS Ciphers | ||
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 |
♦ | |
DES-CBC3-SHA |
♦ |
OpenSSL および RFC の暗号名
OpenSSL および IETF RFC 5246、Transport Layer Security (TLS) プロトコルのバージョン 1.2
OpenSSL の暗号名 | RFC の暗号名 |
---|---|
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 |
RC4-MD5 |
TLS_RSA_WITH_RC4_128_MD5 |