Halaman ini menjelaskan lokasi tempat Kredensial Default Aplikasi (ADC) mencari kredensial. Memahami cara kerja ADC dapat membantu Anda memahami kredensial mana yang digunakan ADC, dan cara ADC menemukannya.
Application Default Credentials (ADC) adalah strategi yang digunakan oleh library autentikasi untuk menemukan kredensial secara otomatis berdasarkan lingkungan aplikasi. Library autentikasi menyediakan kredensial tersebut untuk Library Klien Cloud dan Library Klien Google API. Saat menggunakan ADC, kode Anda dapat berjalan di lingkungan pengembangan atau produksi tanpa mengubah cara aplikasi Anda melakukan autentikasi ke layanan dan API Google Cloud.
Untuk informasi tentang cara memberikan kredensial ke ADC, lihat Menyiapkan Kredensial Default Aplikasi.
Urutan penelusuran
ADC menelusuri kredensial di lokasi berikut:
- Variabel lingkungan
GOOGLE_APPLICATION_CREDENTIALS
- Kredensial pengguna disiapkan menggunakan Google Cloud CLI
- Akun layanan terlampir, yang ditampilkan oleh server metadata
Urutan lokasi pemeriksaan ADC untuk kredensial tidak terkait dengan kelayakan relatif setiap lokasi. Untuk mendapatkan bantuan dalam memahami cara terbaik memberikan kredensial ke ADC, lihat Menyiapkan Kredensial Default Aplikasi.
Variabel lingkungan GOOGLE_APPLICATION_CREDENTIALS
Anda dapat menggunakan variabel lingkungan GOOGLE_APPLICATION_CREDENTIALS
untuk memberikan
lokasi file JSON kredensial. File JSON ini dapat berupa salah satu dari
jenis file berikut:
File konfigurasi kredensial untuk Workforce Identity Federation
Dengan Workforce Identity Federation, Anda dapat menggunakan penyedia identitas (IdP) eksternal untuk mengautentikasi dan memberi otorisasi kepada pengguna untuk mengakses resource Google Cloud. Untuk mengetahui informasi selengkapnya, lihat Workforce Identity Federation dalam dokumentasi Identity and Access Management (IAM).
File konfigurasi kredensial untuk Workload Identity Federation
Dengan Workload Identity Federation, Anda dapat menggunakan IdP eksternal untuk mengautentikasi dan memberi otorisasi kepada beban kerja untuk mengakses resource Google Cloud. Untuk informasi lebih lanjut, lihat Autentikasi dengan menggunakan library klien, gcloud CLI, atau Terraform dalam dokumentasi Identity and Access Management (IAM).
Kunci akun layanan
Kunci akun layanan menimbulkan risiko keamanan dan tidak direkomendasikan. Tidak seperti jenis file kredensial lainnya, kunci akun layanan yang disusupi dapat digunakan oleh pihak tidak bertanggung jawab tanpa informasi tambahan. Untuk informasi selengkapnya, lihat Praktik terbaik untuk menggunakan dan mengelola kunci akun layanan.
Kredensial pengguna yang diberikan menggunakan gcloud CLI
Anda dapat memberikan kredensial pengguna ke ADC dengan menjalankan
perintah gcloud auth application-default login
. Perintah
ini menempatkan file JSON yang berisi kredensial yang Anda berikan (biasanya dari
akun pengguna Anda) di lokasi yang dikenal pada sistem file Anda. Lokasi
bergantung pada sistem operasi Anda:
- Linux, macOS:
$HOME/.config/gcloud/application_default_credentials.json
- Windows:
%APPDATA%\gcloud\application_default_credentials.json
Kredensial yang Anda berikan ke ADC menggunakan gcloud CLI berbeda dengan kredensial gcloud Anda, yaitu kredensial yang digunakan gcloud CLI untuk melakukan autentikasi ke Google Cloud. Untuk mengetahui informasi selengkapnya tentang kedua set kredensial ini, lihat konfigurasi autentikasi gcloud CLI dan konfigurasi ADC .
Secara default, token akses yang dihasilkan dari file ADC lokal yang dibuat dengan kredensial pengguna menyertakan
cakupan https://www.googleapis.com/auth/cloud-platform
seluruh cloud.
Untuk menentukan cakupan secara eksplisit, Anda menggunakan
flag –-scopes
dengan perintah gcloud auth application-default login
.
Untuk menambahkan cakupan bagi layanan di luar Google Cloud, seperti Google Drive,
buat Client ID OAuth
dan berikan ke perintah gcloud auth application-default login
menggunakan
flag –-client-id-file
, yang menentukan
cakupan Anda dengan
flag -–scopes
.
Akun layanan terlampir
Banyak layanan Google Cloud memungkinkan Anda melampirkan akun layanan yang dapat
digunakan untuk memberikan kredensial untuk mengakses Google Cloud API. Jika ADC tidak
menemukan kredensial yang dapat digunakan dalam variabel
lingkungan GOOGLE_APPLICATION_CREDENTIALS
atau lokasi yang dikenal untuk kredensial ADC lokal,
ADC akan menggunakan server metadata untuk mendapatkan kredensial
layanan tempat kode dijalankan.
Menggunakan kredensial dari akun layanan terlampir adalah metode yang disarankan untuk menemukan kredensial di lingkungan produksi di Google Cloud. Untuk menggunakan akun layanan terlampir, ikuti langkah-langkah berikut:
- Buat akun layanan yang dikelola pengguna.
- Beri akun layanan tersebut peran IAM dengan hak istimewa terendah yang ada.
- Lampirkan akun layanan ke resource tempat kode Anda dijalankan.
Untuk bantuan dalam membuat akun layanan, lihat Membuat dan mengelola akun layanan. Untuk bantuan terkait cara melampirkan akun layanan, lihat Melampirkan akun layanan ke resource. Untuk mendapatkan bantuan dalam menentukan peran IAM yang diperlukan untuk akun layanan Anda, lihat Memilih peran bawaan.
Langkah berikutnya
- Pelajari cara terbaik untuk memberikan kredensial ke ADC.
- Autentikasi menggunakan Library Klien Cloud.
- Pelajari metode autentikasi.
- Pelajari library klien.