Menggunakan OAuth

Address Validation API mendukung penggunaan OAuth 2.0 untuk autentikasi. Google mendukung skenario OAuth 2.0 umum seperti skenario untuk server web.

Dokumen ini menjelaskan cara meneruskan token OAuth ke panggilan Address Validation API di lingkungan pengembangan. Untuk mengetahui petunjuk cara menggunakan OAuth di lingkungan produksi, baca bagian Autentikasi di Google.

Sebelum memulai

Sebelum mulai menggunakan Address Validation API, Anda harus memiliki project dengan akun penagihan dan Address Validation API yang diaktifkan. Sebaiknya buat beberapa Pemilik Project dan Administrator Penagihan agar selalu ada seseorang yang memiliki peran ini pada tim Anda. Untuk mempelajari lebih lanjut, lihat Menyiapkan project di Konsol Cloud.

Tentang OAuth

Ada banyak cara untuk membuat dan mengelola token akses dengan OAuth berdasarkan lingkungan deployment Anda.

Misalnya, sistem Google OAuth 2.0 mendukung interaksi server-ke-server, seperti interaksi antara aplikasi Anda dan layanan Google. Untuk skenario ini, Anda memerlukan akun layanan, yang merupakan akun milik aplikasi Anda, bukan milik pengguna akhir individual. Aplikasi Anda memanggil Google API atas nama akun layanan, sehingga pengguna tidak terlibat secara langsung. Untuk mengetahui informasi selengkapnya tentang metode autentikasi, lihat Autentikasi di Google.

Atau, Anda dapat menggunakan Address Validation API sebagai bagian dari aplikasi seluler Android atau iOS. Untuk informasi umum tentang cara menggunakan OAuth dengan Address Validation API, termasuk informasi tentang cara mengelola token akses untuk berbagai lingkungan deployment, lihat Menggunakan OAuth 2.0 untuk Mengakses Google API.

Tentang cakupan OAuth

Untuk menggunakan OAuth dengan Address Validation API, token OAuth harus diberi cakupan:

  • https://www.googleapis.com/auth/cloud-platform

Contoh: Mencoba panggilan REST API di lingkungan pengembangan lokal Anda

Jika ingin mencoba Address Validation API menggunakan token OAuth, tetapi tidak memiliki penyiapan lingkungan untuk membuat token, Anda dapat menggunakan prosedur di bagian ini untuk melakukan panggilan.

Contoh ini menjelaskan cara menggunakan token OAuth yang disediakan oleh Kredensial Default Aplikasi (ADC) untuk melakukan panggilan. Untuk mengetahui informasi tentang cara menggunakan ADC untuk memanggil Google API menggunakan library klien, lihat Mengautentikasi menggunakan library klien.

Prasyarat

Sebelum Anda dapat membuat permintaan REST menggunakan ADC, gunakan Google Cloud CLI untuk memberikan kredensial ke ADC:

  1. Jika belum melakukannya, buat project dan aktifkan penagihan dengan mengikuti langkah-langkah dalam Menyiapkan project di Konsol Google Cloud.
  2. Instal dan lakukan inisialisasi gcloud CLI.
  3. Jalankan perintah gcloud berikut di mesin lokal Anda untuk membuat file kredensial:

    gcloud auth application-default login
  4. Layar login akan ditampilkan. Setelah login, kredensial Anda disimpan di file kredensial lokal yang digunakan oleh ADC.

Untuk mengetahui informasi selengkapnya, lihat bagian Lingkungan pengembangan lokal dalam dokumentasi Memberikan kredensial untuk Kredensial Default Aplikasi.

Membuat permintaan REST

Dalam contoh ini, Anda meneruskan dua header permintaan:

  • Teruskan token OAuth di header Authorization menggunakan perintah berikut untuk membuat token:

    gcloud auth application-default print-access-token

    Token yang ditampilkan memiliki cakupan https://www.googleapis.com/auth/cloud-platform.

  • Teruskan ID atau nama project Google Cloud Anda yang telah mengaktifkan penagihan di header X-Goog-User-Project. Untuk mempelajari lebih lanjut, lihat Menyiapkan project di Konsol Cloud.

Contoh berikut melakukan panggilan ke Address Validation API menggunakan token OAuth:

curl -X POST -d '{
  "address": {
    "regionCode": "US",
    "locality": "Mountain View",
    "addressLines": ["1600 Amphitheatre Pkwy"]
  }
}' \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
-H "X-Goog-User-Project: PROJECT_ID" \
"https://addressvalidation.googleapis.com/v1:validateAddress"

Pemecahan masalah

Jika permintaan Anda menampilkan pesan error yang menyatakan bahwa kredensial pengguna akhir tidak didukung oleh API ini, lihat Kredensial pengguna tidak berfungsi.