Kontrol akses Bigtable dengan IAM

Halaman ini menjelaskan opsi kontrol akses di Bigtable.

Ringkasan

Bigtable menggunakan Identity and Access Management (IAM) untuk kontrol akses. Anda menetapkan kebijakan IAM pada resource untuk mengontrol siapa yang memiliki akses apa ke resource mana.

Resource Bigtable disusun dalam hierarki. Project Google Cloud adalah induk dari instance Bigtable, yang merupakan induk dari cluster dan tabelnya. Tabel adalah induk dari tampilan yang diizinkannya, sedangkan cluster adalah induk dari cadangannya. Anda dapat mengonfigurasi kontrol akses di setiap tingkat.

Jika memiliki izin di suatu tingkat, Anda otomatis memiliki izin di bawah tingkat tersebut. Misalnya, jika Anda memiliki akses di tingkat project, maka Anda memiliki akses ke instance, cluster, tabel, tampilan yang diotorisasi, dan tampilan terwujud berkelanjutan dalam project tersebut. Jika Anda diberi akses ke tampilan yang diotorisasi atau tampilan terwujud berkelanjutan, Anda tidak otomatis memiliki akses ke resource tingkat yang lebih tinggi yang merupakan induk dari tampilan yang diotorisasi atau tampilan terwujud berkelanjutan, seperti tabel dan instance. Perilaku ini disebut pewarisan kebijakan.

Untuk mengetahui informasi selengkapnya tentang hierarki IAM, lihat Pewarisan kebijakan IAM.

Berikut beberapa contoh penggunaan kontrol akses di tingkat project:

  • Mengizinkan pengguna membaca, tetapi tidak menulis ke, tabel apa pun dalam project.
  • Mengizinkan pengguna membaca dan menulis ke tabel apa pun dalam project, tetapi tidak mengelola instance.
  • Mengizinkan pengguna membaca dan menulis ke tabel apa pun dalam project, serta mengelola instance.

Contoh penggunaan kontrol akses di tingkat instance mencakup hal berikut:

  • Mengizinkan pengguna membaca dari tabel mana pun hanya dalam satu instance di project yang memiliki beberapa instance.
  • Mengizinkan pengguna mengelola hanya satu instance dalam project yang memiliki beberapa instance.

Contoh penggunaan kontrol akses di tingkat tabel meliputi:

  • Mengizinkan pengguna menulis ke tabel, tetapi tidak membaca dari tabel.
  • Mengizinkan pengguna membaca dari tabel, tetapi tidak menulis ke tabel.

Contoh penggunaan kontrol akses di tingkat backup meliputi:

  • Mencegah pengguna menghapus cadangan.
  • Mencegah pengguna memulihkan dari cadangan.

Contoh penggunaan kontrol akses di tingkat tampilan yang diotorisasi mencakup hal berikut:

  • Mengizinkan pengguna membaca tampilan yang diizinkan, tetapi tidak mengubahnya.
  • Izinkan pengguna melihat data hanya dari salah satu dari beberapa tampilan tabel yang diizinkan.

Contoh penggunaan kontrol akses di tingkat tampilan terwujud berkelanjutan mencakup hal berikut:

  • Mengizinkan pengguna membaca dari tampilan terwujud berkelanjutan, tetapi tidak mengubah tabel pokok.

Untuk mengetahui deskripsi mendetail tentang IAM dan fitur-fiturnya, lihat panduan developer IAM. Secara khusus, lihat Memberikan, Mengubah, dan Mencabut Akses.

Di Bigtable, Anda tidak dapat memberikan akses ke jenis principal berikut:

Untuk mengetahui daftar izin dan peran yang didukung Bigtable, lihat bagian berikut.

Mengaktifkan Bigtable API

Untuk melihat dan menetapkan peran IAM Bigtable, Anda harus mengaktifkan Bigtable API untuk project Anda. Anda tidak akan dapat melihat peran Bigtable di konsol Google Cloud hingga Anda mengaktifkan API.

Enable the API

Izin

Bagian ini merangkum izin yang didukung Bigtable.

Izin memungkinkan pengguna melakukan tindakan tertentu pada resource Bigtable. Misalnya, izin bigtable.instances.list memungkinkan pengguna mencantumkan semua instance Bigtable dalam project. Anda tidak memberikan izin kepada pengguna secara langsung; tetapi, Anda menetapkan peran bawaan atau peran khusus kepada setiap pengguna, yang memberikan satu atau beberapa izin.

Tabel berikut mencantumkan izin IAM yang terkait dengan Bigtable:

Nama izin profil aplikasi Deskripsi
bigtable.appProfiles.create Buat profil aplikasi Bigtable.
bigtable.appProfiles.delete Menghapus profil aplikasi Bigtable.
bigtable.appProfiles.get Mendapatkan informasi tentang profil aplikasi Bigtable.
bigtable.appProfiles.list Mencantumkan profil aplikasi Bigtable instance.
bigtable.appProfiles.update Perbarui setelan untuk profil aplikasi Bigtable.
Nama izin cadangan Deskripsi
bigtable.backups.create Buat cadangan Bigtable.
bigtable.backups.delete Menghapus cadangan Bigtable.
bigtable.backups.get Mendapatkan informasi tentang cadangan Bigtable.
bigtable.backups.getIamPolicy Membaca daftar kontrol akses (ACL) cadangan. Ditampilkan sebagai kebijakan IAM.
bigtable.backups.list Mencantumkan cadangan Bigtable.
bigtable.backups.restore Pulihkan dari cadangan Bigtable.
bigtable.backups.testIamPermissions Mendapatkan izin pemanggil pada cadangan yang ditentukan.
bigtable.backups.read Membaca dari cadangan Bigtable.
bigtable.backups.setIamPolicy Perbarui ACL cadangan.
bigtable.backups.update Mengubah masa berlaku cadangan Bigtable.
Nama izin cluster Deskripsi
bigtable.clusters.create Buat cluster Bigtable.
bigtable.clusters.delete Hapus cluster Bigtable.
bigtable.clusters.get Mendapatkan informasi tentang cluster Bigtable.
bigtable.clusters.list Mencantumkan cluster Bigtable instance.
bigtable.clusters.update Perbarui setelan untuk cluster Bigtable.
Nama izin tablet populer Deskripsi
bigtable.hotTablets.list Mencantumkan tablet aktif untuk cluster.
Nama izin instance Deskripsi
bigtable.instances.create Buat instance Bigtable.
bigtable.instances.createTagBinding Buat tag.
bigtable.instances.delete Menghapus instance Bigtable.
bigtable.instances.deleteTagBinding Menghapus tag.
bigtable.instances.get Mendapatkan informasi tentang instance Bigtable.
bigtable.instances.getIamPolicy Membaca daftar kontrol akses (ACL) instance. Ditampilkan sebagai kebijakan IAM.
bigtable.instances.list Mencantumkan instance Bigtable project.
bigtable.instances.listEffectiveTagBindings Mencantumkan semua tag yang berlaku untuk instance.
bigtable.instances.listTagBindings Mencantumkan tag instance.
bigtable.instances.ping Mengirim permintaan pengoptimalan saluran.
bigtable.instances.executeQuery Kirim permintaan ExecuteQuery dan PrepareQuery ke instance.
bigtable.instances.setIamPolicy Perbarui ACL.
bigtable.instances.update Perbarui setelan untuk instance Bigtable.
Nama izin Key Visualizer Deskripsi
bigtable.keyvisualizer.get Mendapatkan informasi Key Visualizer tentang tabel, termasuk metadata tentang pola akses dan distribusi kunci baris.
bigtable.keyvisualizer.list Mencantumkan informasi Key Visualizer yang tersedia untuk tabel.
Nama izin lokasi Deskripsi
bigtable.locations.list Mencantumkan lokasi Bigtable.
Nama izin tabel Deskripsi
bigtable.tables.checkConsistency Periksa apakah tabel yang direplikasi sudah yang terbaru.
bigtable.tables.create Membuat tabel
bigtable.tables.delete Menghapus tabel.
bigtable.tables.generateConsistencyToken Buat token untuk memeriksa apakah tabel yang direplikasi sudah terbaru.
bigtable.tables.get Mendapatkan informasi tentang tabel, termasuk grup kolom dan setelan masing-masing.
bigtable.tables.getIamPolicy Membaca ACL tabel. Ditampilkan sebagai kebijakan IAM.
bigtable.tables.list Mencantumkan tabel dalam instance.
bigtable.tables.mutateRows Ubah baris dalam tabel, atau potong tabel.
bigtable.tables.readRows Membaca baris dari tabel. Hal ini mencakup informasi tentang tabel, seperti grup kolom dan setelan masing-masing.
bigtable.tables.sampleRowKeys Mendapatkan sampel kunci baris yang digunakan dalam tabel.
bigtable.tables.setIamPolicy Perbarui ACL tabel.
bigtable.tables.undelete Memulihkan tabel yang dihapus.
bigtable.tables.update Memperbarui setelan untuk tabel, termasuk grup kolom dan setelan masing-masing.
Nama izin lokasi Deskripsi
bigtable.locations.list Mencantumkan lokasi Bigtable.
Nama izin tampilan yang diotorisasi Deskripsi
bigtable.authorizedViews.create Buat tampilan yang diotorisasi.
bigtable.authorizedViews.delete Menghapus tampilan yang diotorisasi.
bigtable.authorizedViews.get Mendapatkan informasi tentang tampilan yang diotorisasi.
bigtable.authorizedViews.getIamPolicy Melihat kontrol akses untuk tampilan yang diotorisasi. Ditampilkan sebagai kebijakan IAM.
bigtable.authorizedViews.list Mencantumkan tampilan yang diizinkan dalam tabel.
bigtable.authorizedViews.mutateRows Ubah baris dalam tampilan yang diizinkan.
bigtable.authorizedViews.readRows Membaca baris dari tampilan yang diotorisasi.
bigtable.authorizedViews.sampleRowKeys Mendapatkan sampel kunci baris yang digunakan dalam tampilan yang diotorisasi.
bigtable.authorizedViews.setIamPolicy Memperbarui kebijakan kontrol akses untuk tampilan yang diizinkan.
bigtable.authorizedViews.update Perbarui setelan untuk tampilan yang diizinkan.
Nama izin tampilan terwujud berkelanjutan Deskripsi
bigtable.materializedViews.create Buat tampilan terwujud berkelanjutan.
bigtable.materializedViews.delete Menghapus tampilan terwujud berkelanjutan.
bigtable.materializedViews.get Mendapatkan informasi tentang tampilan terwujud berkelanjutan.
bigtable.materializedViews.getIamPolicy Melihat kontrol akses untuk tampilan terwujud berkelanjutan. Ditampilkan sebagai kebijakan IAM.
bigtable.materializedViews.list Mencantumkan tampilan terwujud berkelanjutan dalam instance.
bigtable.materializedViews.readRows Membaca baris dari tampilan terwujud berkelanjutan.
bigtable.materializedViews.sampleRowKeys Mendapatkan sampel kunci baris yang digunakan dalam tampilan terwujud berkelanjutan.
bigtable.materializedViews.setIamPolicy Memperbarui kebijakan kontrol akses untuk tampilan terwujud berkelanjutan.
bigtable.materializedViews.update Memperbarui setelan untuk tampilan terwujud berkelanjutan.

Peran yang telah ditetapkan

Setiap peran bawaan adalah paket berisi satu atau beberapa izin. Misalnya, roles/bigtable.reader memberikan akses hanya baca ke informasi tentang instance, cluster, tabel, dan grup kolom Bigtable, serta data yang ada dalam tabel Anda. Anda menetapkan peran kepada pengguna atau grup, yang memungkinkan mereka melakukan tindakan pada resource di project Anda.

Tabel berikut mencantumkan peran bawaan untuk Bigtable, termasuk daftar izin yang terkait dengan setiap peran:

Role Permissions

(roles/bigtable.admin)

Administers all Bigtable instances within a project, including the data stored within tables. Can create new instances. Intended for project administrators.

Lowest-level resources where you can grant this role:

  • Table

bigtable.*

  • bigtable.appProfiles.create
  • bigtable.appProfiles.delete
  • bigtable.appProfiles.get
  • bigtable.appProfiles.list
  • bigtable.appProfiles.update
  • bigtable.authorizedViews.create
  • bigtable.authorizedViews.createTagBinding
  • bigtable.authorizedViews.delete
  • bigtable.authorizedViews.deleteTagBinding
  • bigtable.authorizedViews.get
  • bigtable.authorizedViews.getIamPolicy
  • bigtable.authorizedViews.list
  • bigtable.authorizedViews.listEffectiveTags
  • bigtable.authorizedViews.listTagBindings
  • bigtable.authorizedViews.mutateRows
  • bigtable.authorizedViews.readRows
  • bigtable.authorizedViews.sampleRowKeys
  • bigtable.authorizedViews.setIamPolicy
  • bigtable.authorizedViews.update
  • bigtable.backups.create
  • bigtable.backups.delete
  • bigtable.backups.get
  • bigtable.backups.getIamPolicy
  • bigtable.backups.list
  • bigtable.backups.read
  • bigtable.backups.restore
  • bigtable.backups.setIamPolicy
  • bigtable.backups.update
  • bigtable.clusters.create
  • bigtable.clusters.delete
  • bigtable.clusters.get
  • bigtable.clusters.list
  • bigtable.clusters.update
  • bigtable.hotTablets.list
  • bigtable.instances.create
  • bigtable.instances.createTagBinding
  • bigtable.instances.delete
  • bigtable.instances.deleteTagBinding
  • bigtable.instances.executeQuery
  • bigtable.instances.get
  • bigtable.instances.getIamPolicy
  • bigtable.instances.list
  • bigtable.instances.listEffectiveTags
  • bigtable.instances.listTagBindings
  • bigtable.instances.ping
  • bigtable.instances.setIamPolicy
  • bigtable.instances.update
  • bigtable.keyvisualizer.get
  • bigtable.keyvisualizer.list
  • bigtable.locations.list
  • bigtable.logicalViews.create
  • bigtable.logicalViews.delete
  • bigtable.logicalViews.get
  • bigtable.logicalViews.getIamPolicy
  • bigtable.logicalViews.list
  • bigtable.logicalViews.readRows
  • bigtable.logicalViews.setIamPolicy
  • bigtable.logicalViews.update
  • bigtable.materializedViews.create
  • bigtable.materializedViews.delete
  • bigtable.materializedViews.get
  • bigtable.materializedViews.getIamPolicy
  • bigtable.materializedViews.list
  • bigtable.materializedViews.readRows
  • bigtable.materializedViews.sampleRowKeys
  • bigtable.materializedViews.setIamPolicy
  • bigtable.materializedViews.update
  • bigtable.schemaBundles.create
  • bigtable.schemaBundles.delete
  • bigtable.schemaBundles.get
  • bigtable.schemaBundles.getIamPolicy
  • bigtable.schemaBundles.list
  • bigtable.schemaBundles.setIamPolicy
  • bigtable.schemaBundles.update
  • bigtable.tables.checkConsistency
  • bigtable.tables.create
  • bigtable.tables.delete
  • bigtable.tables.generateConsistencyToken
  • bigtable.tables.get
  • bigtable.tables.getIamPolicy
  • bigtable.tables.list
  • bigtable.tables.mutateRows
  • bigtable.tables.readRows
  • bigtable.tables.sampleRowKeys
  • bigtable.tables.setIamPolicy
  • bigtable.tables.undelete
  • bigtable.tables.update

cloudkms.keyHandles.*

  • cloudkms.keyHandles.create
  • cloudkms.keyHandles.get
  • cloudkms.keyHandles.list

cloudkms.operations.get

cloudkms.projects.showEffectiveAutokeyConfig

monitoring.metricDescriptors.get

monitoring.metricDescriptors.list

monitoring.timeSeries.*

  • monitoring.timeSeries.create
  • monitoring.timeSeries.list

resourcemanager.projects.get

(roles/bigtable.reader)

Provides read-only access to the data stored within Bigtable tables. Intended for data scientists, dashboard generators, and other data-analysis scenarios.

Lowest-level resources where you can grant this role:

  • Table

bigtable.appProfiles.get

bigtable.appProfiles.list

bigtable.authorizedViews.get

bigtable.authorizedViews.list

bigtable.authorizedViews.readRows

bigtable.authorizedViews.sampleRowKeys

bigtable.backups.get

bigtable.backups.list

bigtable.clusters.get

bigtable.clusters.list

bigtable.hotTablets.list

bigtable.instances.executeQuery

bigtable.instances.get

bigtable.instances.list

bigtable.instances.ping

bigtable.keyvisualizer.*

  • bigtable.keyvisualizer.get
  • bigtable.keyvisualizer.list

bigtable.locations.list

bigtable.logicalViews.get

bigtable.logicalViews.list

bigtable.logicalViews.readRows

bigtable.materializedViews.get

bigtable.materializedViews.list

bigtable.materializedViews.readRows

bigtable.materializedViews.sampleRowKeys

bigtable.schemaBundles.get

bigtable.schemaBundles.list

bigtable.tables.checkConsistency

bigtable.tables.generateConsistencyToken

bigtable.tables.get

bigtable.tables.list

bigtable.tables.readRows

bigtable.tables.sampleRowKeys

monitoring.metricDescriptors.get

monitoring.metricDescriptors.list

monitoring.timeSeries.*

  • monitoring.timeSeries.create
  • monitoring.timeSeries.list

resourcemanager.projects.get

(roles/bigtable.user)

Provides read-write access to the data stored within Bigtable tables. Intended for application developers or service accounts.

Lowest-level resources where you can grant this role:

  • Table

bigtable.appProfiles.get

bigtable.appProfiles.list

bigtable.authorizedViews.get

bigtable.authorizedViews.list

bigtable.authorizedViews.mutateRows

bigtable.authorizedViews.readRows

bigtable.authorizedViews.sampleRowKeys

bigtable.backups.get

bigtable.backups.list

bigtable.clusters.get

bigtable.clusters.list

bigtable.hotTablets.list

bigtable.instances.executeQuery

bigtable.instances.get

bigtable.instances.list

bigtable.instances.ping

bigtable.keyvisualizer.*

  • bigtable.keyvisualizer.get
  • bigtable.keyvisualizer.list

bigtable.locations.list

bigtable.logicalViews.get

bigtable.logicalViews.list

bigtable.logicalViews.readRows

bigtable.materializedViews.get

bigtable.materializedViews.list

bigtable.materializedViews.readRows

bigtable.materializedViews.sampleRowKeys

bigtable.schemaBundles.get

bigtable.schemaBundles.list

bigtable.tables.checkConsistency

bigtable.tables.generateConsistencyToken

bigtable.tables.get

bigtable.tables.list

bigtable.tables.mutateRows

bigtable.tables.readRows

bigtable.tables.sampleRowKeys

monitoring.metricDescriptors.get

monitoring.metricDescriptors.list

monitoring.timeSeries.*

  • monitoring.timeSeries.create
  • monitoring.timeSeries.list

resourcemanager.projects.get

(roles/bigtable.viewer)

Provides no data access. Intended as a minimal set of permissions to access the Google Cloud console for Bigtable.

Lowest-level resources where you can grant this role:

  • Table

bigtable.appProfiles.get

bigtable.appProfiles.list

bigtable.authorizedViews.get

bigtable.authorizedViews.list

bigtable.backups.get

bigtable.backups.list

bigtable.clusters.get

bigtable.clusters.list

bigtable.hotTablets.list

bigtable.instances.get

bigtable.instances.list

bigtable.instances.listEffectiveTags

bigtable.instances.listTagBindings

bigtable.locations.list

bigtable.logicalViews.get

bigtable.logicalViews.list

bigtable.materializedViews.get

bigtable.materializedViews.list

bigtable.schemaBundles.get

bigtable.schemaBundles.list

bigtable.tables.checkConsistency

bigtable.tables.generateConsistencyToken

bigtable.tables.get

bigtable.tables.list

monitoring.metricDescriptors.get

monitoring.metricDescriptors.list

monitoring.timeSeries.list

resourcemanager.projects.get

Peran khusus

Jika peran bawaan untuk Bigtable tidak memenuhi persyaratan bisnis Anda, Anda dapat menentukan peran khusus sendiri dengan izin yang Anda tentukan.

Jika peran kustom Anda perlu mendukung akses ke konsol Google Cloud , Anda harus mengidentifikasi tugas yang akan dilakukan pengguna, lalu memastikan bahwa peran kustom memiliki izin yang diperlukan untuk setiap tugas, seperti yang ditunjukkan dalam tabel berikut. Jika peran khusus tidak memiliki semua izin yang diperlukan untuk suatu tugas, dan pengguna mencoba melakukan tugas tersebut, konsol Google Cloud tidak akan berfungsi dengan benar.

Google Cloud tugas konsol Izin yang diperlukan
Akses dasar ke konsol Google Cloud
  • bigtable.appProfiles.get
  • bigtable.appProfiles.list
  • bigtable.clusters.get
  • bigtable.clusters.list
  • bigtable.instances.get
  • bigtable.instances.list
  • bigtable.locations.list
  • bigtable.tables.get
  • bigtable.tables.list
  • resourcemanager.projects.get
Membuat instance atau cluster

Izin akses dasar, ditambah:

  • bigtable.clusters.create
  • bigtable.instances.create
Mengubah instance atau cluster

Izin akses dasar, ditambah:

  • bigtable.clusters.update
  • bigtable.instances.update
Mengelola konfigurasi replikasi

Izin akses dasar, ditambah:

  • bigtable.appProfiles.create
  • bigtable.appProfiles.delete
  • bigtable.appProfiles.update
Menghapus instance atau cluster

Izin akses dasar, ditambah:

  • bigtable.clusters.delete
  • bigtable.instances.delete
Memantau instance dengan melihat grafik

Izin akses dasar, ditambah:

  • monitoring.metricDescriptors.get
  • monitoring.metricDescriptors.list
  • monitoring.timeSeries.list
Membuat dan memperbarui tabel

Izin akses dasar, ditambah:

  • bigtable.tables.create
  • bigtable.tables.update
Memulihkan cadangan

Izin akses dasar, ditambah:

  • bigtable.backups.list
  • bigtable.tables.create
  • bigtable.backups.restore

Pengelolaan IAM

Bagian ini menjelaskan cara mengelola peran IAM dan izin terkait di tingkat project, instance, tabel, dan cadangan.

Pengelolaan IAM di level project

Di tingkat project, Anda dapat memberikan, mengubah, dan mencabut peran IAM menggunakan konsolGoogle Cloud , IAM API, atau Google Cloud CLI. Lihat Memberikan, Mengubah, dan Mencabut Akses untuk mengetahui petunjuk mendetail.

Setelah membuat project, Anda dapat memberikan peran IAM tingkat project kepada pengguna berdasarkan tingkat akses tertentu.

Peran yang diperlukan

Sebelum Anda menetapkan peran IAM tingkat instance, tingkat tabel, tingkat cadangan, tingkat tampilan yang diizinkan, atau tingkat tampilan materialis berkesinambungan untuk pengguna, pastikan pengguna memiliki setidaknya salah satu peran IAM tingkat project berikut:

  • Bigtable Viewer (direkomendasikan)
  • Bigtable Reader
  • Bigtable User
  • Bigtable Administrator

Pilih peran tingkat project yang tidak memiliki lebih banyak izin daripada yang sebenarnya dibutuhkan pengguna di semua instance, tabel, cadangan, tampilan resmi, atau tampilan terwujud berkelanjutan dalam project. Oleh karena itu, Anda harus memberikan peran Bigtable Viewer di hampir semua kasus.

Jika pengguna tidak memiliki setidaknya salah satu peran tingkat project ini, pengguna tidak akan memiliki akses ke Bigtable melalui konsol Google Cloud . Konsol Google Cloud memerlukan salah satu peran tingkat project ini agar dapat mengambil informasi tentang instance, cluster, tabel, atau cadangan atas nama pengguna.

Memberikan peran IAM tingkat instance

Di tingkat instance, Anda dapat memberikan peran bawaan Bigtable kepada pengguna atau akun layanan. Anda juga dapat memberikan peran khusus yang telah Anda tentukan.

Untuk memberikan peran bawaan atau kustom kepada pengguna atau akun layanan di tingkat instance:

Konsol

  1. Buka halaman instance Bigtable di Google Cloud konsol.

Buka halaman instance

  1. Centang kotak di samping instance yang perannya ingin Anda kelola. Panel informasi akan muncul.
  2. Di panel informasi, klik Izin.
  3. Di bagian Tambahkan prinsipal, mulai ketik alamat email pengguna atau akun layanan yang ingin Anda tambahkan, lalu klik alamat email pengguna atau akun layanan tersebut.
  4. Klik menu drop-down Select a role, lalu klik Bigtable untuk memilih peran yang telah ditetapkan atau Custom untuk memilih peran khusus.
  5. Klik nama setiap peran yang ingin Anda tetapkan.
  6. Klik Tambahkan. Pengguna atau akun layanan diberi peran yang Anda tentukan di tingkat instance.

gcloud

  1. Jika Anda tidak mengetahui ID instance, gunakan perintah bigtable instances list untuk melihat daftar instance project Anda:

gcloud bigtable instances list

  1. Gunakan perintah bigtable instances set-iam-policy:

gcloud bigtable instances set-iam-policy
INSTANCE_ID
POLICY_FILE

Berikan hal berikut:

+   <var>INSTANCE_ID</var>: 
The permanent identifier for the instance.

+   <var>POLICY_FILE</var>: Path to a local JSON or YAML file containing
    a [valid IAM policy][iam-policy].

Memberikan peran IAM tingkat tabel

Di tingkat tabel, Anda dapat memberikan peran yang telah ditentukan sebelumnya Bigtable kepada pengguna atau akun layanan. Anda juga dapat memberikan peran khusus yang telah Anda tentukan.

Untuk memberikan peran bawaan atau kustom kepada pengguna atau akun layanan di tingkat tabel:

Konsol

  1. Buka halaman instance Bigtable di Google Cloud konsol.

Buka halaman instance

  1. Klik nama instance yang berisi tabel yang IAM-nya Anda tetapkan.

  2. Pilih Tabel di panel navigasi kiri.

  3. Centang kotak di samping tabel yang perannya ingin Anda kelola. Panel informasi akan muncul.

  4. Di panel informasi, klik Izin.

  5. Di bagian Tambahkan prinsipal, mulai ketik alamat email pengguna atau akun layanan yang ingin Anda tambahkan, lalu klik alamat email pengguna atau akun layanan tersebut.

  6. Klik menu drop-down Select a role, lalu klik Bigtable untuk memilih peran yang telah ditetapkan atau Custom untuk memilih peran khusus.

  7. Klik nama setiap peran yang ingin Anda tetapkan.

  8. Klik Tambahkan. Pengguna atau akun layanan diberi peran yang Anda tentukan di tingkat tabel.

gcloud

  1. Jika Anda tidak mengetahui ID instance, gunakan perintah bigtable instances list untuk melihat daftar instance project Anda:

gcloud bigtable instances list

  1. Jika Anda tidak mengetahui ID tabel instance, gunakan perintah bigtable instances tables list untuk melihat daftar tabel di instance.

gcloud bigtable instances tables list --instances=INSTANCE_ID

Berikan hal berikut:

+   <var>INSTANCE_ID</var>: 
The permanent identifier for the instance.

  1. Gunakan perintah bigtable instances tables set-iam-policy:

gcloud bigtable instances tables set-iam-policy \TABLE_ID
--instance=INSTANCE_ID
POLICY_FILE

Berikan hal berikut:

+   <var>TABLE_ID</var>: The permanent identifier for the table.
+   <var>INSTANCE_ID</var>: 
The permanent identifier for the instance.

+   <var>POLICY_FILE</var>: Path to a local JSON or YAML file containing
    a [valid IAM policy][iam-policy].

Memberikan peran IAM tingkat cadangan

Di tingkat cadangan, Anda dapat memberikan peran yang telah ditentukan sebelumnya Bigtable kepada pengguna atau akun layanan. Anda juga dapat memberikan peran khusus yang telah Anda tentukan.

Untuk memberikan peran bawaan atau kustom kepada pengguna atau akun layanan di tingkat cadangan:

gcloud

  1. Jika Anda tidak mengetahui ID instance, gunakan perintah bigtable instances list untuk melihat daftar instance project Anda:

gcloud bigtable instances list

  1. Jika Anda tidak mengetahui ID cadangan dalam instance, gunakan perintah bigtable instances backups list untuk melihat daftar cadangan dalam instance.

gcloud bigtable backups list --instances=INSTANCE_ID

Berikan hal berikut:

+   <var>INSTANCE_ID</var>: 
The permanent identifier for the instance.

  1. Gunakan perintah gcloud bigtable backups set-iam-policy:

gcloud bigtable backups set-iam-policy BACKUP_ID
--instance=INSTANCE_ID
--cluster=CLUSTER_ID
POLICY_FILE

Berikan hal berikut:

+   <var>BACKUP_ID</var>: The permanent identifier for the backup.
+   <var>INSTANCE_ID</var>: 
The permanent identifier for the instance.

+   `TABLE_ID`: The permanent identifier for the table
+   `POLICY_FILE`: Path to a local JSON or YAML file containing a [valid
    IAM policy][iam-policy].

Memberikan peran IAM tingkat tampilan yang diberi otorisasi

Di tingkat tampilan yang diberi otorisasi, Anda dapat memberikan peran standar Bigtable kepada pengguna atau akun layanan. Anda juga dapat memberikan peran khusus yang telah Anda tentukan.

Untuk memberikan peran bawaan atau kustom kepada pengguna atau akun layanan di tingkat tampilan yang diizinkan, lakukan hal berikut:

Konsol

  1. Buka daftar instance Bigtable di konsol Google Cloud .

Buka daftar instance

  1. Klik instance yang berisi tampilan yang diizinkan.
  2. Di panel navigasi, klik Bigtable Studio.
  3. Di penjelajah, luaskan tabel dan Authorized views.
  4. Di samping tampilan resmi yang ingin Anda ubah, klik menu tindakan more_vert, lalu klik Berikan akses.
  5. Tambahkan setidaknya satu akun utama dan pilih peran yang harus ditetapkan ke akun utama atau grup akun utama tersebut.
  6. Opsional: Untuk memberikan akses untuk peran tambahan, klik Tambahkan peran lain, lalu masukkan akun utama dan peran untuk setiap peran tambahan.
  7. Klik Simpan.

gcloud

  1. Jika Anda tidak mengetahui ID instance, gunakan perintah bigtable instances list untuk melihat daftar instance project Anda:

gcloud bigtable instances list

  1. Jika Anda tidak mengetahui ID tabel instance, gunakan perintah bigtable instances tables list untuk melihat daftar tabel di instance.

gcloud bigtable instances tables list --instances=INSTANCE_ID

  1. Jika Anda tidak mengetahui ID tampilan, gunakan perintah bigtable authorized-views list untuk melihat daftar semua tampilan tabel yang diberi otorisasi.

gcloud bigtable instances tables authorized-views list
--instance=INSTANCE_ID
--table=TABLE_ID

  1. Gunakan perintah bigtable authorized-views set-iam-policy:

gcloud bigtable authorized-views set-iam-policy TABLE_ID
AUTHORIZED_VIEW_ID --instance=INSTANCE_ID POLICY_FILE

Berikan hal berikut:

+   `INSTANCE_ID`: 
The permanent identifier for the instance.

+   `TABLE_ID`: The permanent identifier for the table
+   `AUTHORIZED_VIEW_ID`: The permanent identifier for the view
+   `POLICY_FILE`: Path to a local JSON or YAML file containing a [valid
    IAM policy][iam-policy].

IAM Conditions

Dengan IAM Conditions, Anda dapat menentukan dan menerapkan kontrol akses berbasis atribut bersyarat untuk beberapa resource, termasuk resource Bigtable. Google Cloud

Di Bigtable, Anda dapat menerapkan akses kondisional berdasarkan atribut berikut:

  • Atribut tanggal/waktu: Digunakan untuk menetapkan akses sementara (berakhir), terjadwal, atau berdurasi terbatas ke resource Bigtable. Misalnya, Anda dapat mengizinkan pengguna mengakses tabel hingga tanggal tertentu.
  • Atribut resource: Digunakan untuk mengonfigurasi akses bersyarat berdasarkan nama resource, jenis resource, atau atribut layanan resource. Di Bigtable, Anda dapat menggunakan atribut instance, cluster, tabel, cadangan, dan tampilan yang diizinkan untuk mengonfigurasi akses bersyarat. Misalnya, Anda dapat mengizinkan pengguna mengelola tabel hanya pada tabel yang diawali dengan awalan tertentu, atau Anda dapat mengizinkan pengguna mengakses hanya tabel tertentu.

Untuk mengetahui informasi selengkapnya tentang IAM Conditions, lihat Ringkasan kondisi.

Langkah berikutnya

Pelajari IAM lebih lanjut.