Mengelola APIs - AWS Bimbingan Preskriptif

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Mengelola APIs

Manajemen API yang tepat membuat layanan mikro Anda dapat diakses oleh konsumen internal dan eksternal. AWS menawarkan berbagai layanan yang dapat Anda gunakan bersama untuk mengekspos layanan mikro Anda dengan aman. APIs Layanan ini memungkinkan Anda untuk menegakkan keamanan untuk Anda APIs dan menerapkan pemantauan dan pengamatan dari lokasi pusat. Anda juga dapat menggunakan Amazon CloudFront untuk meningkatkan kinerja jika pengguna Anda APIs secara geografis jauh dari tempat Wilayah AWS layanan di-host.

Amazon API Gateway

Amazon API Gateway adalah layanan terkelola penuh yang memungkinkan pengembang membuat, menerbitkan, memelihara, memantau, dan mengamankan REST dan WebSocket APIs dalam skala apa pun. Anda dapat menggunakan API Gateway untuk menerapkan banyak pola yang dijelaskan di bagian Pola komunikasi panduan ini.

Ada dua jenis utama REST APIs: REST dan HTTP. Kedua jenis mendukung RESTful APIs tetapi menawarkan fitur yang berbeda. Untuk menentukan mana yang paling sesuai dengan kebutuhan Anda, lihat Memilih antara REST APIs dan HTTP APIs dalam dokumentasi API Gateway. Bagian panduan ini berfokus pada API Gateway REST APIs.

Menggunakan API Gateway sebagai titik masuk untuk Anda APIs menyediakan satu tempat untuk menerapkan masalah umum, seperti validasi permintaan dan keamanan. API Gateway REST APIs menawarkan validasi permintaan, yang memungkinkan Anda menentukan format permintaan Anda dengan menggunakan JSON Schema. API Gateway memvalidasi permintaan masuk terhadap skema yang Anda tentukan dan menolak permintaan yang salah format.

Autentikasi dan otorisasi

API Gateway REST APIs mendukung mekanisme autentikasi (AuthN) dan otorisasi (AuthZ) berikut:

  • IAM — Jika Anda menggunakan IAM, permintaan ke API Anda harus ditandatangani dengan menggunakan AWS Signature Version 4 (SigV4).

  • Amazon Cognito — API Gateway akan memvalidasi token pembawa yang disajikan sebagai telah dikeluarkan oleh kumpulan pengguna Amazon Cognito. Anda juga dapat mengonfigurasi kumpulan pengguna Amazon Cognito untuk diintegrasikan dengan penyedia identitas pihak ketiga (iDP), jika Anda sudah menggunakannya. Anda juga dapat menggunakan kumpulan pengguna Amazon Cognito untuk autentikasi machine-to-machine (M2M).

  • AWS Lambda authorizer — API Gateway akan memanggil fungsi Lambda yang Anda tentukan untuk melakukan pemeriksaan apa pun yang Anda inginkan, untuk menentukan apakah permintaan harus diotorisasi.

Untuk informasi selengkapnya, lihat Mengontrol dan mengelola akses ke REST APIs di dokumentasi API Gateway.

Kunci API dan batas tarif

Anda dapat mengontrol siapa yang diizinkan untuk menelepon Anda APIs dan pada tingkat berapa dengan menggunakan kunci API dan paket penggunaan. Kunci API tidak boleh digunakan untuk otentikasi tetapi dapat digunakan bersama dengan skema yang disebutkan sebelumnya. Pengguna tidak selalu perlu menyediakan kunci API mereka sendiri—misalnya, otorisasi Lambda dapat mengembalikan kunci API untuk pengguna. Paket penggunaan memungkinkan Anda menentukan throughput, batas burst, dan kuota bulanan. Untuk informasi selengkapnya, lihat Paket penggunaan dan kunci API untuk REST APIs di dokumentasi API Gateway.

Publik dan swasta APIs

API Gateway REST APIs yang dapat diakses melalui internet mendukung dua jenis titik akhir:

  • Dioptimalkan tepi, yang berarti bahwa permintaan pemanggil diarahkan ke CloudFront titik kehadiran terdekat (POP). Hal ini dapat menghasilkan peningkatan kinerja untuk klien yang berbeda secara geografis.

  • Regional, yang berarti bahwa permintaan rute ke sumber daya dalam tertentu Wilayah AWS. Ini adalah pilihan yang baik ketika semua klien Anda berada di dekat Wilayah tempat API Anda digunakan.

API Gateway REST APIs juga mendukung titik akhir API pribadi, yang dapat diakses dari cloud pribadi virtual (VPC) dengan menggunakan titik akhir VPC antarmuka. Anda juga dapat berbagi REST pribadi dengan aman APIs dengan membuat titik akhir VPC antarmuka di titik lain dan bahkan VPCs lainnya. Akun AWS Untuk informasi selengkapnya, lihat jenis titik akhir API untuk REST APIs di dokumentasi API Gateway.

Kapan menggunakan API Gateway

API Gateway adalah pilihan yang baik untuk layanan RESTful web dan WebSocket koneksi real-time. Saat Anda menggunakan WebSocket APIs API Gateway, Anda dapat menambahkan perilaku untuk peristiwa connect dan disconnect, seperti menyimpan koneksi IDs di penyimpanan data eksternal yang terkait dengan atribut klien. Anda juga dapat merutekan permintaan ke perilaku kustom dengan menggunakan atribut pesan.

Baik REST dan WebSocket APIs dapat langsung berintegrasi dengan banyak Layanan AWS tanpa memerlukan sumber daya komputasi terpisah seperti fungsi Lambda. Hal ini dapat meningkatkan performa dan mengurangi biaya.

REST APIs mendukung perutean berbasis jalur dan berbasis header, dan Anda dapat menggunakannya secara terpisah atau bersama-sama. Pola umum adalah menyediakan REST API sebagai pintu depan untuk sejumlah APIs, untuk menerapkan masalah bersama seperti yang dibahas sebelumnya, dan kemudian berperilaku seperti proxy terbalik dan merutekan permintaan resmi ke titik akhir API yang benar.