Mengautentikasi permintaan Anda

Library Klien Cloud untuk Java menggunakan Library Google Auth untuk Java guna mengautentikasi permintaan. Library ini mendukung beberapa jenis autentikasi. Untuk mengetahui detail selengkapnya, lihat README.md dan javadoc project.

Autentikasi di lingkungan Google Cloud

Saat menggunakan Google Cloud library dari Google Cloud lingkungan (seperti Compute Engine, Google Kubernetes Engine, atau App Engine), Anda tidak perlu melakukan langkah-langkah autentikasi tambahan.

Contoh panggilan tanpa autentikasi tambahan:

Storage storage = StorageOptions.getDefaultInstance().getService();

Autentikasi di lingkungan non-Google Cloud

Untuk melakukan autentikasi di lingkungan non-Google Cloud ada tiga opsi umum:

  1. (Direkomendasikan) Menggunakan akun layanan.
  2. Menggunakan Google Cloud SDK dengan lingkungan pengujian lokal.
  3. Menggunakan token akses OAuth2 yang ada.

Menggunakan akun layanan

  1. Membuat kunci akun layanan JSON.

  2. Setelah mendownload kunci, Anda harus melakukan salah satu hal berikut:

    • Menentukan variabel lingkungan GOOGLE_APPLICATION_CREDENTIALS sebagai lokasi kunci. Contoh:
    export GOOGLE_APPLICATION_CREDENTIALS=/path/to/my/key.json
    
    • Menyediakan file kredensial JSON saat membuat opsi layanan. Misalnya, objek Storage ini memiliki izin yang diperlukan untuk berinteraksi dengan data Cloud Storage Anda:
    Storage storage = StorageOptions.newBuilder()
        .setCredentials(ServiceAccountCredentials.fromStream(new FileInputStream("/path/to/my/key.json")))
        .build()
        .getService();
    

Menggunakan Google Cloud SDK dengan lingkungan pengujian lokal

Jika menggunakan lingkungan lokal untuk pengembangan atau pengujian, Anda dapat menggunakan Google Cloud SDK.

Buat Kredensial Default Aplikasi dengan gcloud auth application-default login. Library Klien Cloud untuk Java akan otomatis mendeteksi kredensial ini.

Menggunakan token akses OAuth2 yang ada

Jika memiliki token akses OAuth2, Anda dapat menggunakannya untuk melakukan autentikasi. Jika Anda melakukannya, token akses tidak akan otomatis direfresh:

Credentials credentials = GoogleCredentials.create(new AccessToken(accessToken, expirationTime));
Storage storage = StorageOptions.newBuilder()
    .setCredentials(credentials)
    .build()
    .getService();

Contoh lainnya:

Credentials credentials = GoogleCredentials.create(new AccessToken(accessToken,