Dokumen ini menjelaskan cara melakukan autentikasi ke Cloud Workstations secara terprogram. Cara Anda melakukan autentikasi ke Cloud Workstations bergantung pada antarmuka yang Anda gunakan untuk mengakses API dan lingkungan tempat kode Anda dijalankan.
Jika baru menggunakan Cloud Workstations API, pastikan Anda membaca bagian berikut terlebih dahulu:- Sebelum Anda memulai
- Kontrol akses dengan IAM
- Mengautentikasi dan menyiapkan akses API dalam workstation
Untuk mengetahui informasi selengkapnya tentang autentikasi Google Cloud, lihat ringkasan autentikasi.
Akses API
Cloud Workstations mendukung akses terprogram. Anda dapat mengakses API dengan cara berikut:
Library klien
Library klien Cloud Workstations menyediakan dukungan bahasa tingkat tinggi untuk melakukan autentikasi ke Cloud Workstation secara terprogram. Untuk mengautentikasi panggilan ke Google Cloud API, library klien mendukung Kredensial Default Aplikasi (ADC); library akan mencari kredensial di sekumpulan lokasi yang ditentukan dan menggunakan kredensial tersebut untuk mengautentikasi permintaan ke API. Dengan ADC, Anda dapat membuat kredensial tersedia untuk aplikasi di berbagai lingkungan, seperti produksi atau pengembangan lokal, tanpa perlu mengubah kode aplikasi.
Google Cloud CLI
Saat menggunakan gcloud
CLI untuk mengakses Cloud Workstation, Anda login ke CLI gcloud
dengan Akun Google, yang menyediakan kredensial yang digunakan oleh perintah CLI gcloud
.
Jika kebijakan keamanan organisasi Anda mencegah akun pengguna memiliki izin yang diperlukan, Anda dapat menggunakan peniruan akun layanan.
Untuk mengetahui informasi selengkapnya, lihat
Mengautentikasi penggunaan gcloud
CLI.
Untuk mengetahui informasi selengkapnya tentang penggunaan CLI gcloud
dengan Cloud Workstation, lihat gcloud workstation.
REST
Anda dapat melakukan autentikasi ke Cloud WorkstationsAPI menggunakan kredensial CLI gcloud
atau Kredensial Default Aplikasi.
Untuk mengetahui informasi lebih lanjut tentang autentikasi untuk permintaan REST, lihat Mengautentikasi untuk menggunakan REST.
Untuk mengetahui informasi tentang jenis kredensial, lihat Kredensial CLI dan kredensial ADC gcloud
.
Menyiapkan autentikasi untuk Cloud Workstations
Cara Anda menyiapkan autentikasi bergantung pada lingkungan tempat kode Anda berjalan.
Opsi untuk menyiapkan autentikasi berikut adalah yang paling umum digunakan. Untuk opsi dan informasi lainnya tentang autentikasi, silakan melihat Autentikasi di Google.
Sebelum menyelesaikan petunjuk ini, Anda harus menyelesaikan penyiapan dasar untuk Cloud Workstation, seperti yang dijelaskan di Sebelum memulai.
Untuk lingkungan pengembangan lokal
Anda dapat menyiapkan kredensial untuk lingkungan pengembangan lokal dengan cara berikut:
- Kredensial pengguna untuk library klien atau alat pihak ketiga
- Kredensial pengguna untuk permintaan REST dari command line
Library klien atau alat pihak ketiga
Siapkan Kredensial Default Aplikasi (ADC) di lingkungan lokal Anda:
-
Instal Google Cloud CLI, lalu initialize dengan menjalankan perintah berikut:
gcloud init
-
Buat kredensial autentikasi lokal untuk Akun Google Anda:
gcloud auth application-default login
Layar login akan ditampilkan. Setelah login, kredensial Anda disimpan dalam file kredensial lokal yang digunakan oleh ADC.
Untuk mengetahui informasi selengkapnya tentang cara bekerja dengan ADC di lingkungan lokal, silakan melihat Lingkungan pengembangan lokal.
Permintaan REST dari command line
Saat membuat permintaan REST dari command line,
Anda dapat menggunakan kredensial CLI gcloud
dengan menyertakan
gcloud auth print-access-token
sebagai bagian dari perintah yang mengirimkan permintaan.
Contoh berikut mencantumkan akun layanan untuk project yang ditentukan. Anda dapat menggunakan pola yang sama untuk setiap permintaan REST.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: project ID Google Cloud Anda.
Untuk mengirim permintaan, luaskan salah satu opsi berikut:
Untuk mengetahui informasi selengkapnya tentang autentikasi menggunakan REST dan gRPC, lihat Mengautentikasi untuk menggunakan REST.
Untuk mengetahui informasi tentang perbedaan antara kredensial ADC lokal dan
kredensial CLI gcloud
, lihat
kredensial CLI gcloud
dan kredensial ADC.
Di Google Cloud
Untuk mengautentikasi workload yang berjalan di Google Cloud, Anda menggunakan kredensial akun layanan yang dilampirkan ke resource komputasi tempat kode Anda dijalankan. Misalnya, Anda dapat memasang akun layanan ke instance virtual machine (VM) Compute Engine, layanan Cloud Run, atau tugas Dataflow. Pendekatan ini adalah metode autentikasi yang direkomendasikan untuk kode yang berjalan di resource komputasi Google Cloud.
Untuk sebagian besar layanan, Anda harus memasang akun layanan saat membuat resource yang akan menjalankan kode Anda; Anda tidak dapat menambahkan atau mengganti akun layanan nanti. Compute Engine merupakan pengecualian—Anda dapat memasang akun layanan ke instance VM kapan saja.
Gunakan CLI gcloud
untuk membuat akun layanan dan melampirkannya ke resource Anda:
-
Instal Google Cloud CLI, lalu initialize dengan menjalankan perintah berikut:
gcloud init
-
Menyiapkan autentikasi:
-
Buat akun layanan:
gcloud iam service-accounts create SERVICE_ACCOUNT_NAME
Ganti
SERVICE_ACCOUNT_NAME
dengan nama untuk akun layanan. -
Untuk memberikan akses ke project dan resource Anda, berikan peran ke akun layanan:
gcloud projects add-iam-policy-binding PROJECT_ID --member="serviceAccount:SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com" --role=ROLE
Ganti kode berikut:
SERVICE_ACCOUNT_NAME
: nama dari akun layanan.PROJECT_ID
: project ID dimana Anda membuat akun layananROLE
: peran yang akan diberikan
- Untuk memberikan peran lain ke akun layanan, jalankan perintah seperti yang Anda lakukan di langkah sebelumnya.
-
Memberi Akun Google Anda peran yang memungkinkan Anda menggunakan peran akun layanan dan tambahkan akun layanan tersebut ke resource lain:
gcloud iam service-accounts add-iam-policy-binding SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com --member="user:USER_EMAIL" --role=roles/iam.serviceAccountUser
Ganti kode berikut:
SERVICE_ACCOUNT_NAME
: nama dari akun layanan.PROJECT_ID
: project ID dimana Anda membuat akun layananUSER_EMAIL
: alamat email untuk Akun Google Anda
-
-
Buat resource yang akan menjalankan kode Anda, lalu instal akun layanan ke resource tersebut. Misalnya, jika Anda menggunakan Compute Engine:
Buat instance Compute Engine. Konfigurasikan instance sebagai berikut:-
Ganti
INSTANCE_NAME
dengan nama instance pilihan Anda. -
Tetapkan flag
--zone
ke zona tempat Anda ingin membuat instance. -
Tetapkan flag
--service-account
ke alamat email untuk akun layanan yang Anda buat.
gcloud compute instances create INSTANCE_NAME --zone=ZONE --service-account=SERVICE_ACCOUNT_EMAIL
-
Ganti
Untuk mengetahui informasi selengkapnya tentang cara melakukan autentikasi ke Google API, silakan melihat Autentikasi di Google.
Lokal atau di penyedia cloud lain
Metode yang direkomendasikan untuk menyiapkan autentikasi dari luar Google Cloud adalah menggunakan workload identity federation. Untuk mengetahui informasi selengkapnya, lihat Penyedia lokal atau penyedia cloud lainnya dalam dokumentasi autentikasi.
Kontrol akses untuk Cloud Workstations
Setelah melakukan autentikasi ke Cloud Workstation, Anda harus diberi otorisasi untuk mengakses resource Google Cloud. Cloud Workstations menggunakan Identity and Access Management (IAM) untuk otorisasi.
Untuk mengetahui informasi selengkapnya tentang peran untuk Cloud Workstation, lihat Kontrol akses dengan IAM. Untuk mengetahui informasi selengkapnya tentang IAM dan otorisasi, lihat Ringkasan IAM.
Langkah selanjutnya
- Siapkan praktik terbaik keamanan.
- Pelajari dukungan SSH lebih lanjut.
- Lihat daftar parameter konfigurasi workstation.
- Pelajari metode autentikasi Google Cloud.
- Lihat daftar kasus penggunaan autentikasi.