Kunci API

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

Kunci API (dikenal di Apigee Edge sebagai kunci konsumen) adalah nilai string yang diteruskan oleh aplikasi klien ke proxy API Anda. Kunci tersebut secara unik mengidentifikasi aplikasi klien.

Validasi kunci API adalah bentuk keamanan berbasis aplikasi paling sederhana yang dapat Anda konfigurasi untuk API. Aplikasi klien hanya menampilkan kunci API bersama permintaannya, lalu Apigee Edge akan memeriksa apakah kunci API berada dalam status disetujui untuk resource yang diminta. Secara internal, proxy Anda menggunakan kebijakan untuk memverifikasi keaslian kunci API.

Untuk mendukung kesederhanaan ini, Anda perlu melakukan sedikit penyiapan. Untuk mendukung kunci API, Anda harus:

  • Buat produk Apigee Edge API yang menggabungkan proxy API yang ingin Anda lindungi menggunakan kunci API.
  • Buat aplikasi developer Apigee Edge yang mewakili developer aplikasi klien yang aplikasinya akan Anda autentikasi.

    Dalam membuat aplikasi developer, tentukan produk API yang dapat diakses oleh aplikasi developer -- dan yang perlu diberikan kunci API.

  • Ke proxy Anda (yang Anda sertakan dalam produk API), tambahkan kebijakan untuk memverifikasi bahwa kunci API yang masuk sudah valid.

Tutorial Mengamankan API dengan meminta kunci API adalah cara cepat untuk mempelajari cara mengontrol akses ke proxy API menggunakan kunci API.

Cara kerja kunci API

Di Apigee Edge, kunci API disebut sebagai kunci konsumen. Saat Anda mendaftarkan aplikasi developer, Apigee Edge akan menghasilkan kunci dan rahasia konsumen. Apigee Edge menyimpan kunci konsumen untuk validasi di masa mendatang. Setiap kunci konsumen bersifat unik dalam organisasi. Developer aplikasi menyematkan kunci konsumen di aplikasi klien. Aplikasi klien harus menampilkan kunci konsumen untuk setiap permintaan. Layanan API akan memverifikasi kunci konsumen sebelum mengizinkan permintaan aplikasi.

Langkah-langkah tingkat tinggi

Langkah-langkah berikut menjelaskan cara kunci API digunakan oleh Apigee Edge. Langkah-langkah ini juga mencakup kemungkinan adanya keamanan OAuth, karena sering digunakan bersama dengan kunci API.

  1. Buat produk API yang menyertakan proxy API yang harus dilindungi dengan kunci API.
  2. Anda mendaftarkan aplikasi developer di organisasi Anda. Saat Anda melakukan Apigee Edge, akan menghasilkan kunci konsumen dan rahasia konsumen.
  3. Kaitkan aplikasi developer dengan setidaknya satu produk API. Ini adalah produk yang mengaitkan jalur resource dan proxy API dengan persetujuan kunci.
  4. Pada waktu proses, saat aplikasi klien membuat permintaan ke API Anda, aplikasi klien akan mengirimkan kunci konsumen saat membuat permintaan. Dalam praktiknya, kunci konsumen mungkin diteruskan secara eksplisit atau secara implisit disebut melalui token OAuth:
    • Jika API menggunakan verifikasi kunci API, misalnya dengan menerapkan kebijakan VerifyAPIKey, aplikasi klien harus meneruskan kunci konsumen secara eksplisit.
    • Jika API menggunakan verifikasi token OAuth, misalnya dengan menerapkan kebijakan OAuthV2, aplikasi klien harus meneruskan token yang berasal dari kunci konsumen.
  5. Proxy API memvalidasi kredensial permintaan melalui kebijakan VerifyAPIKey atau kebijakan OAuthV2 dengan operasi VerifyAccessToken. Jika Anda tidak menyertakan kebijakan penerapan kredensial di Proxy API, semua pemanggil akan berhasil memanggil API Anda. Untuk informasi selengkapnya, lihat Kebijakan Verifikasi Kunci API.

Memverifikasi kredensial permintaan

Ini adalah ringkasan. Pastikan Anda melihat Menyiapkan validasi kunci API untuk mengetahui detail dan contoh kode.

  1. Jika Anda menggunakan verifikasi token OAuth: Anda telah menerapkan kebijakan OAuth untuk memverifikasi dan aplikasi klien telah meneruskan token OAuth:
    • Apigee Edge memverifikasi bahwa masa berlaku token belum berakhir, lalu mencari kunci konsumen yang digunakan untuk membuat token.
  2. Jika Anda menggunakan kunci API -- Anda telah menerapkan kebijakan VerifyAPIKey dan aplikasi klien telah meneruskan kunci konsumennya:
    1. Apigee Edge memeriksa daftar Produk API yang terkait dengan kunci konsumen.
    2. Edge memeriksa setiap Produk API untuk melihat apakah Proxy API saat ini disertakan dalam Produk API, dan apakah jalur resource saat ini (jalur URL) diaktifkan di Produk API.
    3. Edge juga memverifikasi bahwa kunci konsumen masih berlaku atau dicabut, memeriksa apakah aplikasi tidak dicabut, dan memeriksa apakah developer tidak aktif.
    4. Jika semua hal tersebut benar -- masa berlaku token belum berakhir (jika berlaku), kunci konsumen valid dan disetujui, aplikasi disetujui, developer aktif, proxy tersedia dalam produk, dan resource tersedia di produk -- verifikasi kredensial berhasil.