Pengantar

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

Bagian berikut memperkenalkan Anda pada produk API dan konsep utama terkait.

Apa yang dimaksud dengan produk API?

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

Secara khusus, produk API memaketkan 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 menggabungkan resource untuk membuat kumpulan fitur khusus, seperti yang ditunjukkan pada gambar berikut.

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

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

Selain itu, Anda dapat mengontrol akses ke resource API dalam produk API. Misalnya, Anda dapat memaketkan resource yang hanya dapat diakses oleh developer internal atau hanya oleh pelanggan berbayar.

Produk API adalah mekanisme pusat untuk otorisasi dan kontrol akses ke API Anda. Di Apigee, kunci API disediakan, bukan untuk API itu sendiri, melainkan untuk produk API. Dengan kata lain, kunci API disediakan untuk paket resource dengan paket pembelian terlampir.

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

  • Aplikasi yang meminta diizinkan untuk mengakses resource API tertentu.
  • Aplikasi yang meminta tidak melebihi kuota yang diizinkan.
  • Jika ditentukan, cakupan OAuth yang ditentukan dalam produk API cocok dengan cakupan yang terkait dengan token akses yang ditampilkan oleh aplikasi.

Memahami konsep utama

Tinjau konsep utama berikut sebelum Anda membuat produk API.

Kunci API

Saat Anda mendaftarkan aplikasi developer di organisasi Anda, aplikasi tersebut harus dikaitkan dengan setidaknya satu produk API. Sebagai hasil dari pemasangan aplikasi dengan satu atau beberapa produk API, Edge akan menetapkan kunci pengguna unik ke 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 pengguna secara langsung.
  • Jika API menggunakan verifikasi Token OAuth, aplikasi harus meneruskan token yang telah diturunkan dari kunci konsumen.

Penerapan kunci API tidak terjadi secara otomatis. Baik menggunakan kunci pengguna maupun token OAuth sebagai kredensial permintaan, Proxy API akan 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, pemanggil mana pun dapat memanggil API Anda. Untuk mengetahui informasi selengkapnya, lihat kebijakan Verifikasi Kunci API.

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

  • Dapatkan kredensial yang diteruskan dengan permintaan. Dalam kasus verifikasi token OAuth, Edge akan memverifikasi bahwa token tidak kedaluwarsa, lalu mencari kunci konsumen yang digunakan untuk membuat token.
  • Ambil daftar produk API yang telah dikaitkan dengan kunci pengguna.
  • Konfirmasi bahwa Proxy API saat ini disertakan dalam Produk API, dan jika jalur resource saat ini (jalur URL) diaktifkan di Produk API.
  • Pastikan kunci pengguna tidak kedaluwarsa 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 menggunakan kebijakan yang sesuai.

Persetujuan otomatis versus manual persetujuan

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 mana pun yang menambahkan produk API. Untuk mengetahui informasi selengkapnya, lihat Mendaftarkan aplikasi dan mengelola kunci API API.

Kuota

Kuota dapat melindungi server backend Anda dari traffic tinggi, dan membedakan lini produk Anda. Misalnya, Anda dapat memaketkan resource dengan kuota tinggi sebagai produk premium dan menggunakan paket yang sama dengan kuota yang lebih rendah sebagai produk dasar. Kuota dapat membantu melindungi server Anda dari kewalahan jika produk populer dan menerima banyak permintaan.

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

Cakupan OAuth

Sebagai tingkat keamanan tambahan, Anda dapat menentukan cakupan OAuth apa pun, sebagai daftar yang dipisahkan koma, yang harus ada dalam token akses yang dikirim melalui produk. Saat membuat produk, Anda harus 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 mengetahui informasi selengkapnya tentang cara menggunakan 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 Khusus Internal. Pilih label yang paling sesuai dengan target audiens produk API.

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

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

  • Untuk portal developer Drupal 10, Anda dapat mengonfigurasi akses ke produk API Khusus Pribadi atau Khusus Internal di portal developer, seperti yang dijelaskan dalam Mengonfigurasi izin akses ke produk API.
  • Untuk portal developer Drupal 7, Anda tidak dapat menambahkan produk API Khusus Pribadi atau Khusus Internal ke portal developer. Untuk menyediakan produk API Khusus Pribadi atau Khusus Internal 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.