Menggunakan Kunci API dengan Roads API

Produk Google Maps Platform dilindungi dari penggunaan yang tidak sah dengan membatasi panggilan API ke panggilan yang memberikan kredensial autentikasi yang tepat. Kredensial ini berbentuk kunci API - string alfanumerik unik yang mengaitkan akun penagihan Google dengan project Anda, dan dengan API atau SDK tertentu.

Panduan ini menunjukkan cara membuat, membatasi, dan menggunakan kunci API untuk Google Maps Platform.

Sebelum memulai

Sebelum mulai menggunakan Roads API, Anda memerlukan project dengan akun penagihan dan Roads API diaktifkan. Untuk mempelajari lebih lanjut, lihat Menyiapkan project di Cloud Console.

Membuat kunci API

Kunci API adalah ID unik yang mengautentikasi permintaan terkait project untuk tujuan penggunaan dan penagihan. Anda harus memiliki setidaknya satu kunci API terkait project.

Untuk membuat kunci API:

Konsol

  1. Buka halaman Google Maps Platform > Credentials.

    Buka halaman Credentials

  2. Pada halaman Credentials, klik Create credentials > API key.
    Dialog API key created akan menampilkan kunci API yang baru dibuat.
  3. Klik Close.
    Kunci API baru dicantumkan pada halaman Credentials di bawah API keys.
    (Jangan lupa untuk membatasi kunci API sebelum menggunakannya dalam produksi.)

Cloud SDK

gcloud alpha services api-keys create \
    --project "PROJECT" \
    --display-name "DISPLAY_NAME"

Baca selengkapnya tentang Google Cloud SDK, Penginstalan Cloud SDK, dan perintah berikut:

Membatasi kunci API

Google sangat menyarankan agar Anda membatasi penggunaan kunci API hanya untuk API yang diperlukan aplikasi Anda. Membatasi kunci API akan meningkatkan keamanan aplikasi Anda dengan melindunginya dari permintaan yang tidak sah. Untuk informasi selengkapnya, lihat Praktik terbaik keamanan API.

Cara membatasi kunci API:

Konsol

  1. Buka halaman Google Maps Platform > Credentials.

    Buka halaman Credentials

  2. Pilih kunci API yang ingin Anda batasi. Halaman properti kunci API akan muncul.
  3. Di bagian Key restrictions, tetapkan pembatasan berikut:
    • Pembatasan aplikasi:
      1. Untuk menerima permintaan dari daftar alamat IP server web yang Anda berikan, pilih Alamat IP (server web, cron job, dll.) dari daftar Pembatasan aplikasi. Tentukan satu atau beberapa alamat IPv4 atau IPv6, atau subnet menggunakan notasi CIDR. Alamat IP harus cocok dengan alamat sumber yang yang diamati oleh server Google Maps Platform. Jika Anda menggunakan jaringan penafsiran alamat (NAT), alamat IP ini biasanya sesuai dengan alamat IP publik komputer Anda.
    • Pembatasan API:
      1. Klik Batasi kunci.
      2. Pilih Roads API dari dropdown Select APIs. Jika Roads API tidak tercantum, Anda harus mengaktifkannya.
  4. Untuk menyelesaikan perubahan, klik Save.

Cloud SDK

Cantumkan kunci yang ada.

gcloud services api-keys list --project="PROJECT"

Hapus pembatasan yang berlaku pada kunci yang ada.

gcloud alpha services api-keys update "projects/PROJECT/keys/KEY_ID" \
    --clear-restrictions

Tetapkan pembatasan baru pada kunci yang ada.

gcloud alpha services api-keys update "projects/PROJECT/keys/KEY_ID" \
    --api-target="roads.googleapis.com"
    --allowed-ips="IP_ADDRESS"

Baca selengkapnya tentang Google Cloud SDK, Penginstalan Cloud SDK, dan perintah berikut:

Menambahkan kunci API ke permintaan

Anda harus menyertakan kunci API bersama setiap permintaan Roads API. Dalam contoh berikut, ganti YOUR_API_KEY dengan kunci API Anda.

https://roads.googleapis.com/v1/snapToRoads?path=-35.27801,149.12958|-35.28032,149.12907|-35.28099,149.12929|-35.28144,149.12984|-35.28194,149.13003|-35.28282,149.12956|-35.28302,149.12881|-35.28473,149.12836 &interpolate=true &key=YOUR_API_KEY

HTTPS diperlukan untuk permintaan yang menggunakan kunci API.