Mengelola akses ke instance notebook terkelola
Panduan ini menjelaskan cara memberikan akses ke instance notebook terkelola tertentu Vertex AI Workbench. Untuk mengelola akses ke resource Vertex AI, lihat halaman Vertex AI tentang kontrol akses.
Anda dapat memberikan akses ke instance notebook terkelola dengan menetapkan kebijakan Identity and Access Management (IAM) ke instance tersebut. Kebijakan ini mengikat satu atau beberapa akun utama, seperti akun layanan atau pengguna, ke satu atau beberapa peran. Setiap peran berisi daftar izin yang memungkinkan akun utama untuk berinteraksi dengan instance tersebut.
Anda dapat memberikan akses ke instance, bukan ke resource induk seperti project, folder, atau organisasi, untuk menjalankan prinsip hak istimewa terendah.
Jika Anda memberikan akses ke resource induk (misalnya, ke sebuah project), Anda secara implisit akan memberikan akses ke semua resource turunannya (misalnya, ke semua instance di dalam proyek tersebut). Untuk membatasi akses ke resource, tetapkan kebijakan IAM ke resource yang levelnya lebih rendah jika memungkinkan, bukan di level project atau di atasnya.
Untuk mengetahui informasi umum tentang cara memberikan, mengubah, dan mencabut akses ke resource yang tidak terkait dengan Vertex AI Workbench, misalnya, untuk memberikan akses ke project Google Cloud, lihat dokumentasi IAM untuk Memberikan, mengubah, dan mencabut akses ke resource.
Batasan akses
Akses ke instance dapat mencakup berbagai macam kemampuan, bergantung pada peran yang Anda tetapkan pada akun utama. Misalnya, Anda dapat memberi akun utama kemampuan untuk memulai, menghentikan, mengupgrade, dan memantau status kondisi instance. Untuk mengetahui daftar lengkap izin IAM yang tersedia, lihat Peran IAM notebook terkelola yang telah ditetapkan.
Namun, akses penuh ke instance notebook terkelola yang diberikan kepada akun utama tidak serta-merta memberikan kemampuan untuk menggunakan antarmuka JupyterLab instance. Untuk memberikan akses ke antarmuka JupyterLab, lihat Mengelola akses ke antarmuka JupyterLab instance notebook terkelola.
Memberikan akses ke instance notebook terkelola
Untuk memberi pengguna izin mengakses instance notebook terkelola tertentu, tetapkan kebijakan IAM ke instance.
Untuk memberikan peran ke akun utama pada
instance notebook terkelola, gunakan metode
getIamPolicy
untuk mengambil kebijakan saat ini,
edit akses kebijakan saat ini, lalu gunakan metode
setIamPolicy
untuk memperbarui kebijakan pada instance.
Mengambil kebijakan saat ini
Sebelum menggunakan data permintaan mana pun, lakukan penggantian berikut:
- INSTANCE_NAME: Nama instance notebook terkelola Anda
Metode HTTP dan URL:
GET https://notebooks.googleapis.com/v1/INSTANCE_NAME:getIamPolicy
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Jalankan perintah berikut:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://notebooks.googleapis.com/v1/INSTANCE_NAME:getIamPolicy"
PowerShell
Jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://notebooks.googleapis.com/v1/INSTANCE_NAME:getIamPolicy" | Select-Object -Expand Content
{ "bindings": [ { "role": "roles/notebooks.viewer", "members": [ "user:email@example.com" ] } ], "etag": "BwWWja0YfJA=", "version": 3 }
Mengedit kebijakan
Edit kebijakan menggunakan editor teks untuk menambahkan atau menghapus akun utama dan
peran yang terkait. Misalnya, untuk memberikan peran notebooks.admin
kepada
eve@example.com, tambahkan binding yang baru berikut ini ke kebijakan
yang berada di dalam bagian "bindings"
:
{
"role": "roles/notebooks.admin",
"members": [
"user:eve@example.com"
]
}
Setelah menambahkan binding yang baru, kebijakan mungkin akan terlihat seperti berikut:
{
"bindings": [
{
"role": "roles/notebooks.viewer",
"members": [
"user:email@example.com"
]
},
{
"role": "roles/notebooks.admin",
"members": [
"user:eve@example.com"
]
}
],
"etag": "BwWWja0YfJA=",
"version": 3
}
Memperbarui kebijakan pada instance
Dalam isi permintaan, berikan kebijakan IAM yang telah diperbarui
dari langkah sebelumnya, yang disusun secara bertingkat di dalam bagian "policy"
.
Sebelum menggunakan data permintaan mana pun, lakukan penggantian berikut:
- INSTANCE_NAME: Nama instance notebook terkelola Anda
Metode HTTP dan URL:
POST https://notebooks.googleapis.com/v1/INSTANCE_NAME:setIamPolicy
Isi JSON permintaan:
{ "policy": { "bindings": [ { "role": "roles/notebooks.viewer", "members": [ "user:email@example.com" ] }, { "role": "roles/notebooks.admin", "members": [ "user:eve@example.com" ] } ], "etag": "BwWWja0YfJA=", "version": 3 } }
Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:
curl
Simpan isi permintaan dalam file bernama request.json
,
dan jalankan perintah berikut:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://notebooks.googleapis.com/v1/INSTANCE_NAME:setIamPolicy"
PowerShell
Simpan isi permintaan dalam file bernama request.json
,
dan jalankan perintah berikut:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://notebooks.googleapis.com/v1/INSTANCE_NAME:setIamPolicy" | Select-Object -Expand Content
Anda akan menerima kode status yang berhasil (2xx), serta respons yang kosong.
Memberikan akses ke antarmuka JupyterLab
Akses ke instance notebook terkelola yang diberikan kepada akun utama tidak mencakup kemampuan untuk menggunakan antarmuka JupyterLab instance. Untuk memberikan akses ke antarmuka JupyterLab, lihat Mengelola akses ke antarmuka JupyterLab instance notebook terkelola.
Langkah selanjutnya
Untuk mempelajari Identity and Access Management (IAM) serta bagaimana peran IAM dapat membantu memberikan dan membatasi akses, lihat dokumentasi IAM.
Mempelajari peran IAM yang tersedia untuk notebook terkelola Vertex AI Workbench.
Mempelajari cara membuat dan mengelola peran khusus.
Untuk mempelajari cara memberikan akses ke resource Google lainnya, lihat Mengelola akses ke resource lain.