Dokumen ini menjelaskan cara melakukan autentikasi ke Dataform secara terprogram. Cara Anda melakukan autentikasi ke Dataform bergantung pada antarmuka yang Anda gunakan untuk mengakses API dan lingkungan tempat kode Anda berjalan.
Untuk mengetahui informasi selengkapnya tentang autentikasi Google Cloud , lihat ringkasan autentikasi.
Akses API
Dataform mendukung akses terprogram. Anda dapat mengakses API dengan cara berikut:
Library klien
Library klien Dataform menyediakan dukungan bahasa tingkat tinggi untuk melakukan autentikasi ke Dataform secara terprogram. Untuk mengautentikasi panggilan ke API Google Cloud , library klien mendukung Kredensial Default Aplikasi (ADC); library ini mencari kredensial dalam kumpulan lokasi yang ditentukan dan menggunakan kredensial tersebut untuk mengautentikasi permintaan ke API. Dengan ADC, Anda dapat menyediakan kredensial untuk aplikasi di berbagai lingkungan, seperti pengembangan lokal atau produksi, tanpa perlu mengubah kode aplikasi.
REST
Anda dapat melakukan autentikasi ke Dataform API menggunakan kredensial gcloud CLI atau menggunakan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya tentang autentikasi permintaan REST, silakan melihat Melakukan autentikasi untuk menggunakan REST. Untuk mengetahui informasi tentang jenis kredensial, silakan melihat kredensial ADC dan gcloud CLI.
Menyiapkan autentikasi untuk Dataform
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 Metode autentikasi.
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
- Peniruan akun layanan
Library klien atau alat pihak ketiga
Siapkan Kredensial Default Aplikasi (ADC) di lingkungan lokal Anda:
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
Layar login akan muncul. Setelah Anda login, kredensial Anda disimpan dalam file kredensial lokal yang digunakan oleh ADC.
Untuk mengetahui informasi selengkapnya tentang cara menggunakan ADC di lingkungan lokal, lihat Menyiapkan ADC untuk lingkungan pengembangan lokal.
Permintaan REST dari command line
Saat membuat permintaan REST dari command line, Anda dapat menggunakan kredensial gcloud CLI 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 Anda, perluas 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 gcloud CLI, lihat konfigurasi autentikasi gcloud CLI dan konfigurasi ADC.
Peniruan akun layanan
Pada umumnya, Anda dapat menggunakan kredensial pengguna untuk melakukan autentikasi dari lingkungan pengembangan lokal. Jika tidak memungkinkan, atau jika Anda perlu menguji izin yang ditetapkan ke akun layanan, Anda dapat menggunakan peniruan akun layanan. Anda harus memiliki izin iam.serviceAccounts.getAccessToken
, yang disertakan dalam peran IAM Service Account Token Creator (roles/iam.serviceAccountTokenCreator
).
Anda dapat menyiapkan gcloud CLI untuk menggunakan peniruan identitas akun layanan menggunakan
perintah gcloud config set
:
gcloud config set auth/impersonate_service_account SERVICE_ACCT_EMAIL
Untuk bahasa tertentu, Anda dapat menggunakan peniruan akun layanan untuk membuat file ADC lokal
yang akan digunakan oleh library klien. Pendekatan ini hanya didukung untuk library klien Go, Java, Node.js, dan
Python—tidak didukung untuk bahasa lainnya.
Untuk menyiapkan file ADC lokal dengan peniruan akun layanan, gunakan
flag --impersonate-service-account
dengan perintah gcloud auth application-default login
:
gcloud auth application-default login --impersonate-service-account=SERVICE_ACCT_EMAIL
Untuk informasi selengkapnya tentang peniruan akun layanan, lihat Menggunakan peniruan akun layanan.
Kontrol akses untuk Dataform
Setelah melakukan autentikasi ke Dataform, Anda harus diberi otorisasi untuk mengakses resource Google Cloud . Dataform menggunakan Identity and Access Management (IAM) untuk otorisasi.
Untuk mengetahui informasi selengkapnya tentang peran Dataform, lihat Kontrol akses dengan IAM. Untuk mengetahui informasi selengkapnya tentang IAM dan otorisasi, lihat Ringkasan IAM.
Langkah selanjutnya
- Pelajari metode autentikasi .
- Lihat daftar kasus penggunaan autentikasi.