Pengantar

Anda sedang melihat dokumentasi Apigee Edge.
Buka dokumentasi Apigee X.
info

Bagian berikut memperkenalkan produk API dan konsep utama yang terkait.

Apa yang dimaksud dengan produk API?

Sebagai penyedia API, Anda membuat produk API untuk memaketkan API dan menyediakannya bagi developer aplikasi untuk digunakan. Anda dapat menganggap produk API sebagai lini produk.

Secara khusus, produk API menggabungkan hal-hal berikut:

  • Kumpulan resource API (URI)
  • Paket pembelian
  • Metadata khusus untuk bisnis Anda untuk pemantauan atau analisis (opsional)

Resource API yang dipaketkan dalam produk API dapat berasal dari satu atau beberapa API, sehingga Anda dapat memadukan resource untuk membuat set fitur khusus, seperti yang ditampilkan dalam gambar berikut.

Anda dapat membuat beberapa produk API untuk mengatasi kasus penggunaan yang memenuhi kebutuhan tertentu. Misalnya, Anda dapat membuat produk API yang memaketkan sejumlah resource pemetaan agar developer dapat mengintegrasikan peta ke dalam aplikasi dengan mudah. Selain itu, Anda dapat menetapkan properti yang berbeda pada setiap produk API, seperti tingkat harga yang berbeda. Misalnya, Anda mungkin menawarkan kombinasi produk API berikut:

  • Produk API menawarkan batas akses rendah, seperti 1.000 permintaan per hari, dengan harga murah. Produk API kedua yang menyediakan akses ke sumber daya yang sama, tetapi dengan batas akses dan harga yang lebih tinggi.
  • Produk API gratis yang menawarkan akses hanya baca ke berbagai resource. Produk API kedua yang menyediakan akses baca/tulis ke resource yang sama dengan biaya kecil.

Selain itu, Anda dapat mengontrol akses ke resource API di produk API. Misalnya, Anda dapat memaketkan resource yang dapat diakses oleh developer internal saja atau oleh pelanggan yang membayar saja.

Produk API adalah mekanisme sentral untuk otorisasi dan kontrol akses ke API Anda. Di Apigee, kunci API disediakan, bukan untuk API itu sendiri, tetapi untuk produk API. Dengan kata lain, kunci API disediakan untuk paket resource dengan paket layanan yang terpasang.

Developer aplikasi mengakses produk API Anda dengan mendaftarkan aplikasi mereka, seperti yang dijelaskan dalam Mendaftarkan aplikasi. Saat aplikasi mencoba mengakses produk API, otorisasi akan diberlakukan oleh Apigee saat runtime untuk memastikan bahwa:

  • Aplikasi yang meminta diizinkan mengakses resource API tertentu.
  • Aplikasi yang meminta tidak melampaui kuota yang diizinkan.
  • Jika ditentukan, cakupan OAuth yang ditetapkan dalam produk API akan cocok dengan yang terkait dengan token akses yang diberikan oleh aplikasi.

Memahami konsep utama

Tinjau konsep utama berikut sebelum Anda membuat produk API.

Kunci API

Saat mendaftarkan aplikasi developer di organisasi Anda, aplikasi tersebut harus dikaitkan dengan setidaknya satu produk API. Sebagai hasil dari penyambungan dengan satu atau beberapa produk API, Edge menetapkan kunci konsumen yang unik untuk aplikasi tersebut.

Kunci konsumen atau token akses bertindak sebagai kredensial permintaan. Developer aplikasi menyematkan kunci konsumen ke dalam aplikasi, sehingga saat aplikasi membuat permintaan ke API yang dihosting oleh Edge, aplikasi akan meneruskan kunci konsumen dalam permintaan dengan salah satu cara berikut:

  • Jika API menggunakan verifikasi kunci API, aplikasi harus meneruskan kunci konsumen secara langsung.
  • Jika API menggunakan verifikasi Token OAuth, aplikasi harus meneruskan token yang diperoleh dari kunci konsumen.

Penerapan kunci API tidak terjadi secara otomatis. Baik menggunakan kunci konsumen atau token OAuth sebagai kredensial permintaan, Proxy API memvalidasi kredensial permintaan di proxy API Anda dengan menyertakan kebijakan VerifyAPIKey atau kebijakan OAuth/VerifyAccessToken, dalam alur yang sesuai. Jika Anda tidak menyertakan kebijakan penerapan kredensial di Proxy API, semua pemanggil dapat memanggil API Anda. Untuk mengetahui informasi selengkapnya, lihat Kebijakan Verifikasi Kunci API.

Untuk memverifikasi kredensial yang diteruskan dalam permintaan, Edge melakukan langkah-langkah berikut:

  • Dapatkan kredensial yang diteruskan dengan permintaan. Dalam kasus verifikasi token OAuth, Edge memverifikasi bahwa masa berlaku token belum berakhir, lalu mencari kunci konsumen yang digunakan untuk membuat token.
  • Mengambil daftar produk API yang terkait dengan kunci konsumen.
  • Pastikan bahwa Proxy API saat ini disertakan dalam Produk API, dan apakah jalur resource saat ini (jalur URL) diaktifkan di Produk API.
  • Pastikan kunci konsumen belum habis masa berlakunya atau dicabut, periksa apakah aplikasi tidak dicabut, dan periksa apakah developer aplikasi aktif.

Jika semua pemeriksaan di atas lulus, verifikasi kredensial akan berhasil.

Intinya, Edge otomatis membuat kunci konsumen, tetapi penayang API harus menerapkan pemeriksaan kunci di proxy API dengan menggunakan kebijakan yang sesuai.

Persetujuan otomatis versus manual

Secara default, semua permintaan untuk mendapatkan kunci guna mengakses produk API dari aplikasi akan otomatis disetujui. Atau, Anda dapat mengonfigurasi produk API untuk menyetujui kunci secara manual. Dalam hal ini, Anda harus menyetujui permintaan kunci dari aplikasi apa pun yang menambahkan produk API. Untuk mengetahui informasi selengkapnya, lihat Mendaftarkan aplikasi dan mengelola kunci API.

Kuota

Kuota dapat melindungi server backend Anda dari traffic tinggi, dan membedakan lini produk Anda. Misalnya, Anda mungkin ingin memaketkan resource dengan kuota tinggi sebagai produk premium dan menggunakan paket yang sama dengan kuota lebih rendah sebagai produk dasar. Kuota dapat membantu melindungi server Anda agar tidak kelebihan beban jika sebuah produk populer dan menerima permintaan dalam jumlah besar.

Untuk mengetahui informasi tentang cara mengonfigurasi kuota, lihat Kebijakan kuota. Untuk informasi tentang penggunaan setelan kuota produk dalam kebijakan kuota, lihat artikel komunitas berikut Bagaimana cara setelan kuota pada produk API berinteraksi dengan kebijakan kuota di proxy API?.

Cakupan OAuth

Sebagai tingkat keamanan tambahan, Anda dapat menentukan cakupan OAuth, sebagai daftar yang dipisahkan koma, yang harus ada dalam token akses yang dikirim melalui produk. Saat membuat produk, Anda perlu mengetahui semua cakupan yang digunakan organisasi Anda. Cakupan yang Anda tambahkan ke produk harus cocok dengan cakupan yang ada atau produk tersebut tidak aman.

Untuk informasi selengkapnya tentang penggunaan cakupan dengan kebijakan OAuth Edge, lihat Menggunakan cakupan OAuth2.

Tingkat akses

Saat menentukan produk API, Anda dapat menetapkan tingkat akses berikut.

Tingkat akses Deskripsi
Publik Produk API yang tersedia untuk semua developer. Anda dapat menambahkannya ke portal developer terintegrasi atau berbasis Drupal.
Khusus Pribadi atau Internal

Produk API yang dirancang untuk penggunaan pribadi atau internal.

Catatan: Tidak ada perbedaan fungsi antara tingkat akses khusus Pribadi dan Internal. Pilih label yang paling tepat menggambarkan target audiens produk API.

Untuk portal terintegrasi, Anda dapat menambahkan produk API khusus atau pribadi dan membuatnya tersedia untuk developer aplikasi, sesuai kebutuhan.

Untuk portal developer berbasis Drupal, Anda dapat mengelola akses ke produk API khusus Pribadi atau Internal di portal developer, seperti yang dijelaskan di bagian berikut:

  • Untuk portal developer Drupal 9, Anda dapat mengonfigurasi akses ke produk API Pribadi atau Internal saja di portal developer, seperti yang dijelaskan dalam Mengonfigurasi izin akses ke produk API.
  • Untuk portal developer Drupal 7, Anda tidak dapat menambahkan produk API Pribadi atau Internal saja ke portal developer. Agar produk API Pribadi atau Internal khusus tersedia bagi developer aplikasi, Anda harus menambahkannya secara manual ke aplikasi terdaftar dari UI atau API pengelolaan Edge, seperti yang dijelaskan dalam Mendaftarkan aplikasi dan mengelola kunci API. Setelah ditambahkan, developer akan melihat produk API yang terkait dengan aplikasi di portal Anda, seperti yang dijelaskan dalam Mengelola produk API di aplikasi. Jika developer aplikasi menonaktifkan akses ke produk API yang bersifat internal atau pribadi, produk API akan dihapus dari aplikasi dan harus ditambahkan kembali secara manual oleh administrator portal.