Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Kebijakan keamanan untuk REST API di API Gateway
Kebijakan keamanan adalah kombinasi yang telah ditentukan dari versi TLS minimum dan suite sandi yang ditawarkan oleh API Gateway. Saat klien Anda membuat handshake TLS ke API atau nama domain kustom Anda, kebijakan keamanan memberlakukan versi TLS dan cipher suite yang diterima oleh API Gateway. Kebijakan keamanan melindungi API dan nama domain kustom Anda dari masalah keamanan jaringan seperti manipulasi dan penyadapan antara klien dan server.
API Gateway mendukung kebijakan keamanan lama dan kebijakan keamanan yang ditingkatkan. TLS_1_0dan TLS_1_2 merupakan kebijakan keamanan warisan. Gunakan kebijakan keamanan ini untuk kompatibilitas mundur. Kebijakan apa pun yang dimulai dengan SecurityPolicy_ adalah kebijakan keamanan yang ditingkatkan. Gunakan kebijakan ini untuk beban kerja yang diatur, tata kelola lanjutan, atau untuk menggunakan kriptografi pascakuantum. Jika Anda menggunakan kebijakan keamanan yang ditingkatkan, Anda juga harus menetapkan mode akses titik akhir untuk tata kelola tambahan. Untuk informasi selengkapnya, lihat Mode akses titik akhir.
Bagaimana API Gateway menerapkan kebijakan keamanan
Contoh berikut menunjukkan bagaimana API Gateway menerapkan kebijakan keamanan menggunakan kebijakan SecurityPolicy_TLS13_1_3_2025_09 keamanan sebagai contoh.
Kebijakan SecurityPolicy_TLS13_1_3_2025_09 keamanan menerima lalu lintas TLS 1.3 dan menolak lalu lintas TLS 1.2 dan TLS 1.0. Untuk lalu lintas TLS 1.3, kebijakan keamanan menerima suite sandi berikut:
TLS_AES_128_GCM_SHA256TLS_AES_256_GCM_SHA384TLS_CHACHA20_POLY1305_SHA256
API Gateway tidak menerima suite cipher lainnya. Misalnya, kebijakan keamanan akan menolak lalu lintas TLS 1.3 apa pun yang menggunakan AES128-SHA cipher suite. Untuk informasi selengkapnya tentang versi TLS dan sandi yang didukung, lihat. Kebijakan keamanan yang didukung
Untuk memantau protokol TLS dan sandi yang digunakan klien untuk mengakses Gateway API Anda, Anda dapat menggunakan variabel $context.cipherSuite konteks $context.tlsVersion dan di log akses Anda. Untuk informasi selengkapnya, lihat Memantau REST API di API Gateway.
Mode akses titik akhir
Mode akses titik akhir adalah parameter tambahan yang harus Anda tentukan untuk API REST atau nama domain kustom apa pun yang menggunakan kebijakan keamanan yang ditingkatkan yang dimulai dengan SecurityPolicy_. Anda melakukan ini saat membuat sumber daya atau mengubah kebijakan keamanan dari kebijakan lama menjadi kebijakan yang disempurnakan.
Saat mode akses titik akhir disetel keSTRICT, permintaan apa pun ke REST API atau nama domain kustom Anda harus melewati pemeriksaan berikut:
-
Permintaan harus berasal dari jenis titik akhir API Gateway yang sama dengan sumber daya Anda. Permintaan ini bisa berasal dari titik akhir Regional, titik akhir yang dioptimalkan untuk edge, atau titik akhir privat.
-
Jika Anda menggunakan titik akhir Regional atau pribadi, API Gateway menggunakan pencocokan host SNI. Jika Anda menggunakan titik akhir yang dioptimalkan tepi, API Gateway sesuai dengan perlindungan fronting CloudFront domain. Untuk informasi selengkapnya, lihat Fronting https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/CNAMEs.html#alternate-domain-names-restrictions domain.
Jika salah satu dari kondisi ini tidak terpenuhi, API Gateway menolak permintaan. Sebaiknya gunakan mode STRICT akses titik akhir bila memungkinkan.
Untuk memigrasikan API atau nama domain yang ada untuk menggunakan mode akses titik akhir yang ketat, perbarui kebijakan keamanan Anda terlebih dahulu ke kebijakan keamanan yang disempurnakan dan setel mode akses titik akhirBASIC. Setelah Anda memvalidasi lalu lintas dan log akses, setel mode akses titik akhir keSTRICT. Saat Anda memigrasikan mode akses titik akhir dari STRICT keBASIC, titik akhir Anda tidak akan tersedia selama sekitar 15 menit saat perubahan menyebar.
Anda tidak boleh mengatur mode akses titik akhir STRICT untuk arsitektur aplikasi tertentu dan sebagai gantinya mengatur mode akses titik akhir keBASIC. Tabel berikut menunjukkan beberapa arsitektur aplikasi dan rekomendasi sehingga REST API atau nama domain kustom Anda dapat menggunakan mode akses STRICT titik akhir.
| Arsitektur | Migrasi yang disarankan |
|---|---|
Menggunakan titik akhir VPC untuk mengakses nama domain kustom publik. |
Arsitektur ini menggunakan lalu lintas tipe lintas titik akhir. Kami menyarankan Anda bermigrasi keNama domain kustom untuk API pribadi di API Gateway. |
|
Menggunakan metode apa pun untuk memanggil API pribadi yang tidak menggunakan nama domain khusus atau nama DNS pribadi. |
Arsitektur ini menciptakan ketidakcocokan antara header host dan SNI yang digunakan dalam jabat tangan TLS dan tidak melewati CloudFront batasan fronting domain. Kami menyarankan Anda memigrasikan VPC Anda untuk menggunakan DNS pribadi. |
Menggunakan sharding domain untuk mendistribusikan konten di beberapa domain atau subdomain. |
Arsitektur ini menciptakan ketidakcocokan antara header host dan SNI yang digunakan dalam jabat tangan TLS dan tidak melewati CloudFront batasan fronting domain. Kami menyarankan Anda menggunakan |
Berikut ini adalah pertimbangan untuk menggunakan mode akses titik akhir:
-
Jika mode akses titik akhir dari API atau nama domain adalah
STRICT, Anda tidak dapat mengubah jenis titik akhir. Untuk mengubah jenis titik akhir, pertama-tama ubah mode akses titik akhir menjadiBASIC. -
Setelah Anda mengubah mode akses titik akhir dari
BASICkeSTRICT, ada penundaan 15 menit bagi API Gateway untuk menerapkan mode akses titik akhir yang ketat. -
Saat mengubah kebijakan keamanan dari kebijakan yang dimulai dengan menjadi kebijakan
SecurityPolicy_lama, Anda harus membatalkan pengaturan mode akses titik akhir ke"".
Pertimbangan-pertimbangan
Berikut ini adalah pertimbangan kebijakan keamanan untuk REST API di API Gateway:
-
Anda dapat mengimpor kebijakan keamanan dalam file definisi OpenAPI. Untuk informasi selengkapnya, lihat kebijakan keamanan x-amazon-apigateway-.
-
API Anda dapat dipetakan ke nama domain khusus dengan kebijakan keamanan yang berbeda dari API Anda. Saat Anda memanggil nama domain kustom tersebut, API Gateway menggunakan kebijakan keamanan domain khusus untuk menegosiasikan jabat tangan TLS. Jika Anda menonaktifkan titik akhir API default, ini mungkin memengaruhi cara pemanggil dapat memanggil API Anda.
-
Jika Anda mengubah kebijakan keamanan, diperlukan waktu sekitar 15 menit untuk menyelesaikan pembaruan. Anda dapat memantau
apiStatusAPI Anda. Saat API Anda diperbarui,apiStatussudahUPDATINGdan ketika selesai, itu akan terjadiAVAILABLE. Jika status API Anda adaUPDATING, Anda masih dapat memanggilnya. -
API Gateway mendukung kebijakan keamanan pada semua API. Namun, Anda hanya dapat memilih kebijakan keamanan untuk REST API. API Gateway hanya mendukung kebijakan
TLS_1_2keamanan untuk HTTP atau WebSocket API. -
Anda tidak dapat memperbarui kebijakan keamanan untuk API dari
TLS_1_0keTLS_1_2. -
Beberapa kebijakan keamanan mendukung suite sandi ECDSA dan RSA. Jika Anda menggunakan jenis kebijakan ini dengan nama domain khusus, rangkaian sandi cocok dengan jenis kunci sertifikat yang disediakan pelanggan, baik RSA atau ECDSA. Jika Anda menggunakan jenis kebijakan ini dengan REST API, suite cipher cocok dengan suite cipher yang kompatibel dengan jenis sertifikat RSA.