Identity and Access Management (IAM) memungkinkan Anda mengontrol akses pengguna ke resource Spanner Omni. Misalnya, pengguna dapat memiliki kontrol penuh atas database tertentu, tetapi tidak dapat membuat atau mengubah database lain dalam deployment Anda. Dengan IAM, Anda dapat memberikan izin kepada pengguna tanpa harus mengubah setiap izin database Spanner Omni satu per satu.
Dokumen ini berfokus pada izin IAM yang relevan dengan Spanner Omni dan peran IAM yang memberikan izin tersebut. Untuk mengetahui deskripsi mendetail tentang IAM dan fitur-fiturnya, lihat panduan developer Identity and Access Management.
Izin
Izin memungkinkan pengguna melakukan tindakan tertentu pada resource Spanner Omni. Misalnya, izin spanner.databases.read memungkinkan pengguna membaca dari database menggunakan read API Spanner Omni, sedangkan spanner.databases.export memungkinkan pengguna mengekspor database Spanner Omni.
Anda tidak secara langsung memberikan izin kepada pengguna; tetapi, Anda memberikan peran
yang telah ditentukan sebelumnya kepada pengguna, yang memiliki satu atau beberapa izin yang dipaketkan di dalamnya.
Tabel berikut mencantumkan izin IAM yang terkait dengan Spanner Omni. Beberapa izin dibagikan dengan Spanner dan beberapa izin hanya digunakan oleh Spanner Omni.
Database
Izin berikut berlaku untuk database Spanner Omni.
| Nama izin database | Deskripsi | Spanner dan Spanner Omni | Khusus Spanner Omni |
|---|---|---|---|
spanner.databases.create |
Membuat database. | ✔ | |
spanner.databases.createBackup |
Buat cadangan dari database. Juga memerlukan spanner.backups.create untuk membuat resource cadangan. |
✔ | |
spanner.databases.get |
Mendapatkan metadata database. | ✔ | |
spanner.databases.getIamPolicy |
Mendapatkan kebijakan IAM database. | ✔ | |
spanner.databases.list |
Mencantumkan database. | ✔ | |
spanner.databases.read |
Membaca dari database menggunakan read API. | ✔ | |
spanner.databases.setIamPolicy |
Menetapkan kebijakan IAM database. | ✔ | |
spanner.databases.update |
Memperbarui metadata database. | ✔ | |
spanner.databases.updateDdl |
Memperbarui skema database. | ✔ | |
spanner.databases.write |
Menulis ke database. | ✔ | |
spanner.databases.compact |
Memadatkan tabel dalam database | ✔ | |
spanner.databases.export |
Mengekspor database Spanner Omni | ✔ | |
spanner.databases.import |
Mengimpor database Spanner Omni | ✔ | |
spanner.databases.addSplitPoints |
Menambahkan titik pemisahan ke database. | ✔ |
Operasi database
Izin berikut berlaku untuk operasi database Spanner Omni.
| Nama izin operasi database | Deskripsi | Spanner dan Spanner Omni | Khusus Spanner Omni |
|---|---|---|---|
spanner.databaseOperations.cancel |
Membatalkan operasi database. | ✔ | |
spanner.databaseOperations.delete |
Menghapus operasi database. | ✔ | |
spanner.databaseOperations.get |
Mendapatkan operasi database tertentu. | ✔ | |
spanner.databaseOperations.list |
Mencantumkan operasi database dan memulihkan operasi database. | ✔ |
Cadangan
Izin berikut berlaku untuk cadangan Spanner Omni.
| Nama izin pencadangan | Deskripsi | Spanner dan Spanner Omni | Khusus Spanner Omni |
|---|---|---|---|
spanner.backups.copy |
Menyalin cadangan. | ✔ | |
spanner.backups.create |
Membuat cadangan. Juga memerlukan spanner.databases.createBackup di database sumber. |
✔ | |
spanner.backups.createDatabaseFromBackup |
Buat database dari cadangan. | ✔ | |
spanner.backups.delete |
Menghapus cadangan. | ✔ | |
spanner.backups.get |
Mendapatkan cadangan. | ✔ | |
spanner.backups.getIamPolicy |
Mendapatkan kebijakan IAM cadangan. | ✔ | |
spanner.backups.list |
Mencantumkan cadangan. | ✔ | |
spanner.backups.restoreDatabase |
Memulihkan database dari cadangan. Juga memerlukan spanner.databases.create untuk membuat database yang dipulihkan. |
✔ | |
spanner.backups.setIamPolicy |
Menetapkan kebijakan IAM cadangan. | ✔ | |
spanner.backups.update |
Memperbarui cadangan. | ✔ | |
spanner.backups.import |
Mengimpor cadangan dari penyimpanan eksternal | ✔ |
Operasi pencadangan
Izin berikut berlaku untuk operasi pencadangan Spanner Omni.
| Nama izin operasi pencadangan | Deskripsi | Spanner dan Spanner Omni | Khusus Spanner Omni |
|---|---|---|---|
spanner.backupOperations.cancel |
Membatalkan operasi pencadangan. | ✔ | |
spanner.backupOperations.get |
Mendapatkan operasi pencadangan tertentu. | ✔ | |
spanner.backupOperations.list |
Mencantumkan operasi pencadangan. | ✔ |
Jadwal pencadangan
Izin berikut berlaku untuk jadwal pencadangan Spanner Omni.
| Nama izin jadwal pencadangan | Deskripsi | Spanner dan Spanner Omni | Khusus Spanner Omni |
|---|---|---|---|
spanner.backupSchedules.create |
Membuat jadwal pencadangan. Juga memerlukan spanner.databases.createBackup di database sumber. |
✔ | |
spanner.backupSchedules.delete |
Menghapus jadwal pencadangan. | ✔ | |
spanner.backupSchedules.get |
Mendapatkan jadwal pencadangan. | ✔ | |
spanner.backupSchedules.list |
Mencantumkan jadwal pencadangan. | ✔ | |
spanner.backupSchedules.update |
Memperbarui jadwal pencadangan. | ✔ | |
spanner.backupSchedules.getIamPolicy |
Mendapatkan kebijakan IAM jadwal pencadangan. | ✔ | |
spanner.backupSchedules.setIamPolicy |
Menetapkan kebijakan IAM jadwal pencadangan. | ✔ |
Deskriptor cadangan
Izin berikut berlaku untuk deskriptor cadangan Spanner Omni.
| Nama izin deskriptor cadangan | Deskripsi | Spanner dan Spanner Omni | Khusus Spanner Omni |
|---|---|---|---|
spanner.backupDescriptors.import |
Mengimpor cadangan dari deskriptor cadangan | ✔ | |
spanner.backupDescriptors.list |
Mencantumkan deskriptor cadangan. | ✔ |
Sesi
Izin berikut berlaku untuk sesi Spanner Omni.
| Nama izin sesi | Deskripsi | Spanner dan Spanner Omni | Khusus Spanner Omni |
|---|---|---|---|
spanner.sessions.create |
Buat sesi. | ✔ | |
spanner.sessions.delete |
Menghapus sesi. | ✔ | |
spanner.sessions.get |
Dapatkan sesi. | ✔ | |
spanner.sessions.list |
Mencantumkan sesi. | ✔ |
Lokasi dan zona
Izin berikut berlaku untuk lokasi dan zona Spanner Omni.
| Nama izin | Deskripsi | Spanner dan Spanner Omni | Khusus Spanner Omni |
|---|---|---|---|
spanner.locations.create |
Membuat lokasi Spanner Omni | ✔ | |
spanner.locations.delete |
Menghapus lokasi Spanner Omni | ✔ | |
spanner.locations.get |
Mendapatkan lokasi Spanner Omni | ✔ | |
spanner.locations.list |
Mencantumkan lokasi Spanner Omni | ✔ | |
spanner.locationDistances.create |
Membuat jarak lokasi Spanner Omni | ✔ | |
spanner.locationDistances.delete |
Menghapus jarak lokasi Spanner Omni | ✔ | |
spanner.locationDistances.get |
Mendapatkan jarak lokasi Spanner Omni | ✔ | |
spanner.locationDistances.list |
Mencantumkan jarak lokasi Spanner Omni | ✔ | |
spanner.locationDistances.update |
Memperbarui jarak lokasi Spanner Omni | ✔ | |
spanner.zones.create |
Membuat zona Spanner Omni | ✔ | |
spanner.zones.delete |
Menghapus zona Spanner Omni | ✔ | |
spanner.zones.get |
Mendapatkan zona Omni Spanner | ✔ | |
spanner.zones.list |
Mencantumkan zona Spanner Omni | ✔ |
Server
Izin berikut berlaku untuk server Spanner Omni.
| Nama izin server | Deskripsi | Spanner dan Spanner Omni | Khusus Spanner Omni |
|---|---|---|---|
spanner.servers.create |
Membuat server Spanner Omni | ✔ | |
spanner.servers.delete |
Menghapus server Spanner Omni | ✔ | |
spanner.servers.get |
Mendapatkan server Spanner Omni | ✔ | |
spanner.servers.list |
Mencantumkan server Spanner Omni | ✔ |
Pengguna dan peran
Izin berikut berlaku untuk pengguna dan peran Spanner Omni.
| Nama izin | Deskripsi | Spanner dan Spanner Omni | Khusus Spanner Omni |
|---|---|---|---|
spanner.users.create |
Membuat pengguna Spanner Omni | ✔ | |
spanner.users.delete |
Menghapus pengguna Spanner Omni | ✔ | |
spanner.users.get |
Mendapatkan pengguna Spanner Omni | ✔ | |
spanner.users.list |
Mencantumkan pengguna Spanner Omni | ✔ | |
spanner.users.update |
Memperbarui pengguna Spanner Omni | ✔ | |
spanner.roles.get |
Mendapatkan peran Spanner Omni | ✔ | |
spanner.roles.list |
Mencantumkan peran Spanner Omni | ✔ |
Penyimpanan eksternal
Izin berikut berlaku untuk penyimpanan eksternal Spanner Omni.
| Nama izin penyimpanan eksternal | Deskripsi | Spanner dan Spanner Omni | Khusus Spanner Omni |
|---|---|---|---|
spanner.externalStorages.create |
Membuat penyimpanan eksternal | ✔ | |
spanner.externalStorages.delete |
Menghapus penyimpanan eksternal | ✔ | |
spanner.externalStorages.get |
Mendapatkan penyimpanan eksternal | ✔ | |
spanner.externalStorages.getIamPolicy |
Mendapatkan kebijakan IAM penyimpanan eksternal | ✔ | |
spanner.externalStorages.list |
Mencantumkan penyimpanan eksternal | ✔ | |
spanner.externalStorages.setIamPolicy |
Menetapkan kebijakan IAM penyimpanan eksternal | ✔ |
Sistem file dan deskriptor
Izin berikut berlaku untuk sistem file Spanner Omni.
| Nama izin | Deskripsi | Spanner dan Spanner Omni | Khusus Spanner Omni |
|---|---|---|---|
spanner.filesystem.cat |
Mencetak file dalam sistem file Spanner Omni | ✔ | |
spanner.filesystem.ls |
Mencantumkan file dalam sistem file Spanner Omni | ✔ | |
spanner.descriptors.print |
Mencetak deskriptor dalam sistem file Spanner Omni | ✔ |
Izin administrator lainnya
Izin berikut berlaku untuk tugas administrator Spanner Omni lainnya.
| Nama izin | Deskripsi | Spanner dan Spanner Omni | Khusus Spanner Omni |
|---|---|---|---|
spanner.chubby.list |
Mencantumkan sel Chubby | ✔ | |
spanner.chubby.print |
Mencetak konten sel Chubby | ✔ | |
spanner.deployment.get |
Mendapatkan deployment Spanner Omni | ✔ | |
spanner.diagnostics.create |
Mengumpulkan artefak dari server Spanner Omni untuk proses debug | ✔ | |
spanner.internal-tables.sql |
Menjalankan kueri SQL terhadap tabel internal | ✔ | |
spanner.logs.copy |
Menyalin log dari server Spanner Omni | ✔ | |
spanner.tablet.move |
Memindahkan tablet dari satu server Spanner Omni ke server lainnya | ✔ | |
spanner.workflows.delete |
Menghapus alur kerja dalam database | ✔ | |
spanner.groups.compact |
Memadatkan tablet dalam grup | ✔ | |
spanner.directories.compact |
Memadatkan tablet dalam direktori | ✔ |
Peran yang telah ditetapkan
Peran yang telah ditetapkan adalah paket berisi satu atau beberapa izin. Spanner Omni mendukung peran bawaan berikut:
| Peran | Deskripsi |
|---|---|
roles/spanner.admin |
Memiliki akses lengkap ke semua resource Spanner Omni. Mencakup semua izin. |
roles/spanner.backupAdmin |
Memiliki akses penuh ke pencadangan Spanner Omni dan operasi pencadangan. |
roles/spanner.backupWriter |
Dapat membuat cadangan, tetapi tidak dapat memperbarui atau menghapusnya. |
roles/spanner.databaseAdmin |
Memiliki akses lengkap ke semua database Spanner Omni dalam project. |
roles/spanner.databaseReader |
Dapat membaca dari database Spanner Omni dan melihat skema. |
roles/spanner.databaseUser |
Dapat membaca dari dan menulis ke database Spanner Omni. |
roles/spanner.editor |
Peran Editor untuk Spanner Omni. |
roles/spanner.restoreAdmin |
Dapat memulihkan database dari cadangan. |
roles/spanner.viewer |
Dapat melihat semua resource Spanner Omni, tetapi tidak dapat mengubahnya. Mencakup izin hanya baca. |
Spanner Omni memiliki beberapa batasan penting lainnya:
- Tidak ada peran khusus.
- Tidak ada kontrol akses terperinci.
- Tidak ada kondisi IAM.
Langkah berikutnya
- Pelajari IAM lebih lanjut.
- Pelajari Autentikasi dan otorisasi di Spanner Omni.