Panduan memulai Authentication dengan OAuth

Cara termudah untuk melakukan autentikasi ke Gemini API adalah dengan mengonfigurasi kunci API, seperti yang dijelaskan dalam panduan memulai Gemini API. Jika memerlukan kontrol akses yang lebih ketat, Anda dapat menggunakan OAuth. Panduan ini akan membantu Anda menyiapkan autentikasi dengan OAuth.

Panduan ini menggunakan pendekatan autentikasi yang disederhanakan dan sesuai untuk lingkungan pengujian. Untuk lingkungan produksi, pelajari tentang autentikasi dan otorisasi sebelum memilih kredensial akses yang sesuai untuk aplikasi Anda.

Tujuan

  • Menyiapkan project cloud untuk OAuth
  • Menyiapkan kredensial default aplikasi
  • Mengelola kredensial dalam program, bukan menggunakan gcloud auth

Prasyarat

Untuk menjalankan quickstart ini, Anda memerlukan:

Menyiapkan project cloud

Untuk menyelesaikan quickstart ini, Anda harus menyiapkan project Cloud terlebih dahulu.

1. Mengaktifkan API

Sebelum menggunakan Google API, Anda harus mengaktifkannya di project Google Cloud.

  • Di konsol Google Cloud, aktifkan Google Generative Language API.

    Mengaktifkan API

2. Mengonfigurasi layar izin OAuth

Selanjutnya, konfigurasikan layar izin OAuth project dan tambahkan diri Anda sebagai pengguna pengujian. Jika Anda telah menyelesaikan langkah ini untuk project Cloud, lewati ke bagian berikutnya.

  1. Di konsol Google Cloud, buka Menu > Google Auth platform > Overview.

    Buka Google Auth platform

  2. Isi formulir konfigurasi project dan tetapkan jenis pengguna ke External di bagian Audience.

  3. Isi bagian formulir lainnya, setujui persyaratan Kebijakan Data Pengguna, lalu klik Create.

  4. Untuk saat ini, Anda dapat melewati penambahan cakupan dan klik Save and Continue. Pada masa mendatang, saat membuat aplikasi untuk digunakan di luar organisasi Google Workspace, Anda harus menambahkan dan memverifikasi cakupan otorisasi yang diperlukan aplikasi Anda.

  5. Tambahkan pengguna pengujian:

    1. Buka halaman Audience di Google Auth platform.
    2. Di bagian Test users, klik Add users.
    3. Masukkan alamat email Anda dan pengguna pengujian resmi lainnya, lalu klik Save.

3. Mengotorisasi kredensial untuk aplikasi desktop

Untuk melakukan autentikasi sebagai pengguna akhir dan mengakses data pengguna di aplikasi, Anda harus membuat satu atau beberapa Client ID OAuth 2.0. Client ID digunakan untuk mengidentifikasi aplikasi tunggal ke server OAuth Google. Jika aplikasi Anda berjalan di beberapa platform, Anda harus membuat client ID terpisah untuk setiap platform.

  1. Di konsol Google Cloud, buka Menu > Google Auth platform > Clients.

    Buka Kredensial

  2. Klik Create Client.

  3. Klik Application type > Desktop app.

  4. Di kolom Name, ketik nama untuk kredensial tersebut. Nama ini hanya ditampilkan di konsol Google Cloud.

  5. Klik Create. Layar pembuatan klien OAuth akan muncul, yang menampilkan Client ID dan Rahasia klien baru Anda.

  6. Klik OK. Kredensial yang baru dibuat akan muncul di bagian OAuth 2.0 Client IDs.

  7. Klik tombol download untuk menyimpan file JSON. File akan disimpan sebagai client_secret_<identifier>.json, dan ganti namanya menjadi client_secret.json lalu pindahkan ke direktori kerja Anda.

Menyiapkan Kredensial Default Aplikasi

Untuk mengonversi file client_secret.json menjadi kredensial yang dapat digunakan, teruskan lokasinya ke argumen --client-id-file perintah gcloud auth application-default login.

gcloud auth application-default login \
    --client-id-file=client_secret.json \
    --scopes='https://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/generative-language.retriever'

Penyiapan project yang disederhanakan dalam tutorial ini akan memicu dialog "Google hasn't verified this app.". Ini normal, pilih "continue".

Tindakan ini akan menempatkan token yang dihasilkan di lokasi yang diketahui sehingga dapat diakses oleh gcloud atau library klien.

gcloud auth application-default login 
--no-browser --client-id-file=client_secret.json
--scopes='https://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/generative-language.retriever'

Setelah Anda menyiapkan Kredensial Default Aplikasi (ADC), library klien dalam sebagian besar bahasa hanya memerlukan sedikit atau tidak memerlukan bantuan untuk menemukannya.

Curl

Cara tercepat untuk menguji apakah kredensial ini berfungsi adalah dengan menggunakannya untuk mengakses REST API menggunakan curl:

access_token=$(gcloud auth application-default print-access-token)
project_id=<MY PROJECT ID>
curl -X GET https://generativelanguage.googleapis.com/v1/models \
    -H 'Content-Type: application/json' \
    -H "Authorization: Bearer ${