Praktik terbaik untuk mengelola kunci API

Saat Anda menggunakan kunci API di aplikasi, pastikan kunci tersebut tetap aman selama penyimpanan dan transmisi. Menampilkan kunci API Anda kepada publik dapat menyebabkan tagihan tidak terduga pada akun Anda atau akses yang tidak sah ke data Anda. Untuk membantu menjaga kunci API Anda tetap aman, terapkan praktik terbaik berikut.

Menambahkan pembatasan kunci API ke kunci Anda

Dengan menambahkan batasan, Anda dapat membatasi penggunaan kunci API, sehingga mengurangi dampak kunci API yang disusupi.

Untuk mengetahui informasi selengkapnya, lihat artikel Menerapkan pembatasan kunci API.

Hindari penggunaan parameter kueri untuk memberikan kunci API Anda ke Google API

Memberikan kunci API Anda ke API sebagai parameter kueri akan menyertakan kunci API Anda dalam URL, sehingga kunci Anda rentan dicuri melalui pemindaian URL. Gunakan header HTTP x-goog-api-key atau library klien sebagai gantinya.

Hapus kunci API yang tidak diperlukan untuk meminimalkan paparan serangan

Pertahankan hanya kunci API yang sedang Anda gunakan secara aktif untuk menjaga permukaan serangan Anda sekecil mungkin.

Jangan sertakan kunci API dalam kode klien atau commit ke repositori kode

Kunci API yang di-hard code dalam kode sumber atau disimpan di repositori rentan terhadap penyadapan atau pencurian oleh pihak yang tidak bertanggung jawab. Klien harus meneruskan permintaan ke server, yang dapat menambahkan kredensial dan mengeluarkan permintaan.

Jangan gunakan kunci API yang terikat ke akun layanan dalam produksi

Kunci API yang terikat ke akun layanan dirancang untuk mempercepat pengalaman awal bagi developer yang menjelajahi API. Google Cloud Jangan menggunakannya di lingkungan produksi. Sebagai gantinya, rencanakan migrasi ke alternatif yang lebih aman seperti kebijakan Identity and Access Management (IAM) dan kredensial akun layanan berumur pendek, dengan mengikuti praktik keamanan hak istimewa paling rendah.

Berikut alasan Anda harus bermigrasi dari penggunaan kunci API yang terikat ke akun layanan ke praktik yang lebih aman sesegera mungkin:

  • Kunci API dikirim bersama permintaan. Hal ini membuat kemungkinan kunci diekspos atau dicatat lebih besar.

  • Kunci API adalah kredensial pembawa. Artinya, jika seseorang mencuri kunci API yang terikat ke akun layanan, dia dapat menggunakannya untuk melakukan autentikasi sebagai akun layanan tersebut dan mengakses resource yang sama dengan yang dapat diakses oleh akun layanan tersebut.

  • Kunci API yang terikat ke akun layanan menyamarkan identitas pengguna akhir dalam log audit. Untuk melacak tindakan pengguna tertentu, pastikan setiap pengguna memiliki serangkaian kredensialnya sendiri.

Menerapkan pemantauan dan logging yang kuat

Memantau penggunaan API dapat membantu memperingatkan Anda tentang penggunaan yang tidak sah. Untuk mengetahui informasi selengkapnya, lihat Ringkasan Cloud Monitoring dan Ringkasan Cloud Logging.

Mengisolasi kunci API

Berikan kunci API kepada setiap anggota tim untuk setiap aplikasi. Hal ini dapat membantu mengontrol akses, menyediakan jejak audit, dan mengurangi dampak kunci API yang disusupi.

Merotasi kunci API Anda secara berkala

Buat kunci API baru secara berkala, update aplikasi Anda untuk menggunakan kunci API baru, dan hapus kunci lama.

Untuk informasi selengkapnya, lihat Mengganti kunci API.

Pertimbangkan metode yang lebih aman untuk mengizinkan akses

Untuk mendapatkan bantuan dalam memilih metode autentikasi, lihat Metode autentikasi.