Keamanan kilometer terakhir

Halaman ini berlaku untuk Apigee dan Apigee hybrid.

Lihat dokumentasi Apigee Edge.

Keamanan last mile melindungi layanan backend yang di-proxy oleh Layanan API. Sasaran utama keamanan tahap akhir adalah untuk mencegah serangan yang disebut "end-run", yaitu saat developer aplikasi menemukan URL untuk layanan backend dan mengabaikan proxy API apa pun untuk langsung mengakses URL backend.

Berikut adalah opsi utama untuk menyiapkan keamanan last mile:

  • TLS/SSL Klien
  • Autentikasi keluar

TLS/SSL Klien

Mekanisme utama untuk mengamankan last mile adalah TLS/SSL klien, yang juga dikenal sebagai 'autentikasi timbal balik'.

Lihat Opsi untuk mengonfigurasi TLS.

Autentikasi keluar

Keamanan last mile juga dapat diterapkan dengan mewajibkan proxy API untuk menampilkan kredensial ke layanan backend.

Misalnya, Anda mungkin ingin proxy API menampilkan kunci API ke layanan backend Anda. Anda juga dapat membuat proxy API memperoleh dan menampilkan token akses kredensial klien OAuth.

Kunci API

Kunci API dapat diterapkan ke permintaan keluar dari proxy API ke layanan backend. Hal ini mengasumsikan bahwa layanan backend adalah API yang mampu menerbitkan dan memvalidasi kunci API.

Jika Anda menyiapkan proxy API untuk menampilkan kunci API pada permintaan keluar, Anda harus menyimpan kunci API di tempat yang dapat diambil oleh proxy API saat runtime. Salah satu lokasi yang tersedia untuk menyimpan kunci API adalah peta kunci/nilai. Lihat kebijakan Operasi Peta Nilai Kunci.

Anda dapat menggunakan jenis kebijakan AssignMessage untuk menambahkan kunci API sebagai header HTTP, parameter kueri, atau elemen payload ke permintaan keluar. Lihat Menetapkan kebijakan Pesan.

Kredensial klien OAuth

Kredensial klien OAuth dapat digunakan untuk menambahkan lapisan pencabutan ke kunci API. Jika layanan backend Anda mendukung kredensial klien OAuth, Anda dapat mengonfigurasi proxy API untuk menampilkan token akses kredensial klien untuk setiap permintaan.

Proxy API harus dikonfigurasi untuk melakukan panggilan untuk mendapatkan token akses dari endpoint token Anda. Proxy API juga diperlukan untuk menyimpan token akses ke dalam cache, agar tidak mendapatkan token akses baru untuk setiap panggilan.

Ada sejumlah pendekatan yang dapat digunakan untuk menerapkan kredensial klien keluar.

Anda dapat mengubah contoh ini untuk memanggil endpoint token guna mendapatkan token akses. Contoh ini menggunakan JavaScript untuk melampirkan token ke permintaan keluar sebagai header Otorisasi HTTP. Anda juga dapat menggunakan Tetapkan Kebijakan pesan untuk tujuan ini.

SAML

Jenis kebijakan GenerateSAMLAssertion dapat digunakan untuk melampirkan pernyataan SAML ke pesan permintaan XML keluar, dari proxy API ke layanan backend. Hal ini memungkinkan layanan backend untuk melakukan autentikasi dan otorisasi pada permintaan yang diterima dari proxy API.

Lihat kebijakan Pernyataan SAML.