Vertex AI di appliance air-gapped Google Distributed Cloud (GDC) menyediakan API dan layanan yang memerlukan autentikasi. Autentikasi adalah cara Anda membuktikan identitas untuk mengakses layanan menggunakan token.
Token adalah objek digital yang memverifikasi bahwa pemanggil memberikan kredensial yang sesuai dan telah berhasil ditukarkan dengan token. Token membawa informasi tentang identitas akun yang meminta dan akses spesifik yang diizinkan untuk dimiliki.
Halaman ini menjelaskan cara melakukan autentikasi ke Vertex AI API secara terprogram. Bergantung pada apakah Anda mengakses Vertex AI API sebagai pengguna atau dengan akun layanan, halaman ini menjelaskan langkah-langkah untuk mendapatkan token autentikasi untuk permintaan API Anda.
Pilih salah satu opsi berikut untuk mendapatkan token autentikasi:
Akun pengguna
Ikuti langkah-langkah berikut untuk mendapatkan token autentikasi dengan izin pengguna:
Perhatikan endpoint API yang ingin Anda gunakan.
Dapatkan akses ke layanan Vertex AI yang ingin Anda gunakan dengan memberikan peran yang sesuai kepada akun pengguna Anda yang tercantum di Menyiapkan izin IAM.
Login ke appliance air-gapped GDC dengan akun pengguna yang Anda miliki untuk berinteraksi dengan API:
gdcloud auth loginDapatkan token autentikasi:
gdcloud auth print-identity-token --audiences=https://ENDPOINTGanti
ENDPOINTdengan endpoint layanan yang Anda gunakan untuk organisasi Anda. Untuk mengetahui informasi selengkapnya, lihat status dan endpoint layanan.Bergantung pada penggunaan token autentikasi yang dimaksud, Anda mungkin perlu menyertakan port setelah endpoint layanan di jalur audiens sebagai berikut:
- Jika Anda menggunakan library klien untuk permintaan Anda, Anda harus menyertakan port
:443setelah endpoint layanan di jalur audiens. Oleh karena itu, jalur--audiencesdalam perintah harushttps://ENDPOINT:443. - Jika Anda menggunakan gRPC,
curl, atau panggilan REST terprogram untuk permintaan Anda, jangan sertakan port. Oleh karena itu, jalur--audiencesdalam perintah harushttps://ENDPOINT.
- Jika Anda menggunakan library klien untuk permintaan Anda, Anda harus menyertakan port
Output akan menampilkan token autentikasi. Tambahkan token ke header permintaan command line yang Anda buat, seperti dalam contoh berikut:
-H "Authorization: Bearer TOKEN"
Ganti TOKEN dengan nilai untuk token autentikasi yang ditampilkan output.
Akun layanan
Ikuti langkah-langkah berikut untuk mendapatkan token autentikasi dengan akun layanan:
Perhatikan endpoint API yang ingin Anda gunakan.
Siapkan akun layanan yang ingin Anda gunakan untuk mengakses layanan Vertex AI.
Beri akun layanan peran yang sesuai yang tercantum di Menyiapkan izin IAM agar akun layanan tersebut dapat mengakses layanan yang ingin Anda gunakan.
Instal library klien
google-auth:pip install google-authTambahkan kode berikut ke skrip Python:
import os import google.auth from google.auth.transport import requests import requests as reqs os.environ["GOOGLE_APPLICATION_CREDENTIALS"] = "PATH_TO_SERVICE_KEY" os.environ["GRPC_DEFAULT_SSL_ROOTS_FILE_PATH"] = "CERT_NAME" # If you use a client library for your request, # you must include port :443 after the service endpoint # in the audience path. audience = "https://ENDPOINT" creds, project_id = google.auth.default() print(project_id) creds = creds.with_gdch_audience(audience) def test_get_token(): sesh = reqs.Session() req = requests.Request(session=sesh) creds.refresh(req) print(creds.token) if __name__=="__main__": test_get_token()Ganti kode berikut:
PATH_TO_SERVICE_KEY: jalur ke file JSON yang berisi pasangan kunci akun layanan Anda.CERT_NAME: nama file sertifikat Otoritas Sertifikat (CA), sepertiorg-1-trust-bundle-ca.cert. Anda hanya memerlukan nilai ini jika berada di lingkungan pengembangan. Jika tidak, hapus nilai ini.ENDPOINT: endpoint layanan yang Anda gunakan untuk organisasi Anda. Untuk mengetahui informasi selengkapnya, lihat status dan endpoint layanan. Bergantung pada penggunaan token autentikasi yang dimaksud, Anda mungkin perlu menyertakan port setelah endpoint layanan di jalur audiens sebagai berikut:- Jika Anda menggunakan library klien untuk permintaan Anda, Anda harus menyertakan port
:443setelah endpoint layanan di jalur audiens. Oleh karena itu, jaluraudiencedalam skrip harus"https://ENDPOINT:443". - Jika Anda menggunakan gRPC,
curl, atau panggilan REST terprogram untuk permintaan Anda, jangan sertakan port. Oleh karena itu, jaluraudiencedalam skrip harus"https://ENDPOINT".
- Jika Anda menggunakan library klien untuk permintaan Anda, Anda harus menyertakan port
Simpan skrip Python.
Jalankan skrip Python untuk mengambil token:
python SCRIPT_NAMEGanti
SCRIPT_NAMEdengan nama yang Anda berikan ke skrip Python, sepertitoken.py.
Output akan menampilkan token autentikasi. Tambahkan token ke header permintaan command line yang Anda buat, seperti dalam contoh berikut:
-H "Authorization: Bearer TOKEN"
Ganti TOKEN dengan nilai untuk token autentikasi yang ditampilkan output.