Halaman ini memberikan contoh cara menyiapkan project untuk tim yang bekerja dengan Vertex AI. Halaman ini mengasumsikan bahwa Anda sudah memahami konsep Identity and Access Management (IAM) seperti kebijakan, peran, izin, dan akun utama seperti yang dijelaskan dalam Kontrol akses Vertex AI dengan IAM dan Konsep yang terkait dengan pengelolaan akses.
Contoh ini dimaksudkan untuk digunakan secara umum. Pertimbangkan kebutuhan khusus tim, dan sesuaikan cara Anda menyiapkan project.
Ringkasan
Vertex AI menggunakan IAM untuk mengelola akses ke resource. Saat Anda merencanakan kontrol akses untuk resource, pertimbangkan hal berikut:
Anda dapat mengelola akses di level project atau level resource. Akses tingkat project berlaku untuk semua resource dalam project tersebut. Akses ke resource tertentu hanya berlaku untuk resource tersebut.
Anda memberikan akses dengan menetapkan peran IAM ke akun utama. Peran yang telah ditetapkan tersedia untuk mempermudah penyiapan akses, tetapi peran khusus direkomendasikan karena Anda membuatnya, sehingga Anda dapat membatasi aksesnya hanya ke izin yang diperlukan.
Untuk mempelajari kontrol akses lebih lanjut, lihat Kontrol akses Vertex AI dengan IAM.
Satu project dengan akses bersama ke data dan resource Vertex AI
Dalam contoh ini, tim berbagi satu project yang berisi data dan resource Vertex AI mereka.
Anda dapat menyiapkan project dengan cara ini jika data, penampung, dan resource Vertex AI tim lainnya dapat dibagikan di antara semua pengguna project.
Kebijakan izin IAM project Anda mungkin terlihat mirip dengan berikut:
{ "version": 1, "etag": "BwWKmjvelug=", "bindings": [ { "role": "roles/aiplatform.user", "members": [ "user:USER1_EMAIL_ADDRESS", "user:USER2_EMAIL_ADDRESS" ] }, { "role": "roles/storage.admin", "members": [ "user:USER1_EMAIL_ADDRESS", "user:USER2_EMAIL_ADDRESS" ] }, { "role": "roles/aiplatform.serviceAgent", "members": [ "user:service-PROJECT_NUMBER@gcp-sa-aiplatform-cc.iam.gserviceaccount.com" ] } ] }
Menyiapkan project dengan cara ini memudahkan tim untuk berkolaborasi dalam melatih model, men-debug kode, men-deploy model, dan mengamati endpoint. Semua pengguna melihat resource yang sama dan dapat berlatih dengan data yang sama. Resource Vertex AI beroperasi dalam satu project, sehingga Anda tidak perlu memberikan akses ke resource di luar project. Kuota dibagikan ke seluruh tim.
Untuk menyiapkan kontrol akses project tim Anda, lihat Mengelola akses ke project, folder, dan organisasi.
Memisahkan data dan resource Vertex AI
Dalam contoh ini, data tim berada dalam project yang terpisah dari resource Vertex AI.
Anda dapat menyiapkan project dengan cara ini jika:
Data tim terlalu sulit dipindahkan ke project yang sama dengan resource Vertex AI Anda.
Data tim memerlukan kontrol tertentu atas siapa yang dapat mengaksesnya.
Dalam situasi ini, sebaiknya buat project untuk data dan project untuk resource Vertex AI. Developer tim berbagi project yang berisi resource Vertex AI. Model tersebut menggunakan resource Vertex AI untuk mengakses dan memproses data yang disimpan di project lain. Administrator data memberikan akses resource Vertex AI melalui agen layanan atau akun layanan kustom.
Misalnya, Anda dapat memberikan akses ke bucket Cloud Storage kepada agen layanan Vertex AI default dengan kebijakan izin yang terlihat seperti berikut:
{ "version": 1, "etag": "BwWKmjvelug=", "bindings": [ { "role": "roles/storage.objectViewer", "members": [ "user:service-PROJECT_NUMBER@gcp-sa-aiplatform-cc.iam.gserviceaccount.com", "user:service-PROJECT_NUMBER@gcp-sa-aiplatform.iam.gserviceaccount.com" ] } ] }
Jika memungkinkan, tentukan akun layanan yang akan digunakan sebagai identitas resource saat Anda membuat resource Vertex AI, dan gunakan akun layanan tersebut untuk mengelola kontrol akses. Hal ini mempermudah pemberian akses ke sumber daya tertentu ke data dan mengelola izin dari waktu ke waktu.
Misalnya, Anda dapat memberikan akses akun layanan ke BigQuery dengan kebijakan yang terlihat seperti berikut:
{ "version": 1, "etag": "BwWKmjvelug=", "bindings": [ { "role": "roles/bigquery.user", "members": [ "user:SERVICE_ACCOUNT_NAME@PROJECT_NUMBER.iam.gserviceaccount.com" ] } ] }
Untuk menyiapkan kontrol akses akun layanan, lihat Mengelola akses ke akun layanan.
Dalam project dengan resource Vertex AI, administrator
dapat memberikan akses ke data kepada pengguna dengan memberikan peran Pengguna Akun Layanan
(roles/iam.serviceAccountUser
) di akun layanan yang ditentukan.
Mengisolasi kode yang kurang tepercaya dalam project terpisah tambahan
Model, container prediksi, dan container pelatihan adalah kode. Penting untuk mengisolasi kode yang kurang tepercaya dari model dan data sensitif. Men-deploy endpoint dan tahap pelatihan di project mereka sendiri, menggunakan akun layanan khusus dengan izin yang sangat terbatas, dan menggunakan Kontrol Layanan VPC untuk mengisolasinya dan mengurangi dampak akses yang diberikan ke penampung dan model tersebut.
Langkah selanjutnya
Untuk mempelajari kontrol akses endpoint lebih lanjut, lihat Mengontrol akses ke endpoint Vertex AI.
Untuk mempelajari lebih lanjut cara menggunakan akun layanan kustom guna mengontrol akses ke resource tertentu, lihat Menggunakan akun layanan kustom.