Topik ini mencantumkan aksi izin Resource Access Management (RAM) untuk REST API dan Management API Data Lake Formation (DLF). Informasi ini dapat digunakan untuk membuat kebijakan detail halus, mengelola izin berdasarkan prinsip hak istimewa minimal, serta memastikan keamanan dan fleksibilitas.
Konsep
REST API: API data plane yang didasarkan pada REST API Paimon dan Iceberg, digunakan untuk akses dan operasi data yang efisien.
Management API: API management plane yang didasarkan pada Alibaba Cloud OpenAPI, digunakan untuk manajemen resource dan operasi O&M yang efisien.
CatatanUntuk mengelola katalog, database, dan tabel di Konsol DLF, Anda memerlukan izin Management API yang sesuai. Jika tidak perlu mengakses konsol, jangan berikan izin tersebut. Berikan izin Action hanya untuk operasi spesifik yang diperlukan di Konsol DLF.
Kebijakan izin
Anda dapat menyambungkan kebijakan izin ke pengguna RAM atau peran RAM untuk memberikan izin akses tertentu.
Nama Kebijakan | Deskripsi |
AliyunDLFFullAccess | Memberikan izin untuk memanggil semua API DLF. Kebijakan ini cocok untuk pengguna yang perlu melakukan manajemen data lake secara komprehensif. |
AliyunDLFReadOnlyAccess | Memberikan izin read-only untuk memanggil semua API DLF yang bersifat read-only, seperti operasi List dan Get. Kebijakan ini melarang operasi tulis atau hapus, seperti Create dan Delete. |
Prosedur
Masuk ke Konsol Resource Access Management (RAM) sebagai administrator RAM.
Pada panel navigasi sebelah kiri, pilih .
Pada halaman Users, klik Add Permissions di kolom Actions pengguna RAM target.
Pada panel Grant Permissions, tambahkan izin untuk pengguna RAM tersebut.
Klik OK.
Contoh kebijakan otorisasi RAM
Anda dapat membuat kebijakan izin kustom untuk pengelolaan izin detail halus. Untuk informasi selengkapnya, lihat Buat kebijakan izin kustom.
{
"Version": "1",
"Statement": [
{
"Action": [
"dlf:ListDatabases",
"dlf:CreateDatabase",
"dlf:GetDatabase",
"dlf:AlterDatabase",
"dlf:ListTables",
"dlf:CreateTable",
"dlf:GetTable",
"dlf:AlterTable",
"dlf:ListPartitions",
"dlf:ListViews"
],
"Resource": "*",
"Effect": "Allow"
}
]
}
Aksi untuk REST API
Paimon REST
Kategori | REST API | Aksi Otorisasi RAM | Deskripsi |
Config | GetConfig | dlf:GetConfig | Mendapatkan konfigurasi katalog data. |
Database | ListDatabases | dlf:ListDatabases | Menampilkan daftar database. |
CreateDatabase | dlf:CreateDatabase | Membuat database. | |
GetDatabase | dlf:GetDatabase | Mendapatkan database. | |
DropDatabase | dlf:DropDatabase | Menghapus database. | |
AlterDatabase | dlf:AlterDatabase | Mengubah database. | |
Table | ListTables | dlf:ListTables | Menampilkan daftar tabel. |
CreateTable | dlf:CreateTable | Membuat tabel. | |
ListTableDetails | dlf:ListTableDetails | Menampilkan detail tabel. | |
GetTable | dlf:GetTable | Mendapatkan tabel. | |
AlterTable | dlf:AlterTable | Mengubah tabel. | |
DropTable | dlf:DropTable | Menghapus tabel. | |
RenameTable | dlf:RenameTable | Mengganti nama tabel. | |
CommitTable | dlf:CommitTable | Menyimpan perubahan tabel. | |
RollbackTable | dlf:RollbackTable | Mengembalikan tabel ke kondisi sebelumnya. | |
GetTableToken | dlf:GetTableToken | Mendapatkan token untuk mengakses data tabel. | |
GetTableSnapshot | dlf:GetTableSnapshot | Mendapatkan snapshot tabel. | |
Partition | ListPartitions | dlf:ListPartitions | Menampilkan daftar partisi. |
MarkDonePartitions | dlf:MarkDonePartitions | Menandai partisi sebagai selesai. | |
Branch | ListBranches | dlf:ListBranches | Menampilkan daftar branch tabel. |
CreateBranch | dlf:CreateBranch | Membuat branch tabel. | |
DropBranch | dlf:DropBranch | Menghapus branch tabel. | |
ForwardBranch | dlf:ForwardBranch | Meneruskan branch tabel. | |
View | ListViews | dlf:ListViews | Menampilkan daftar view. |
CreateView | dlf:CreateView | Membuat view. | |
GetView | dlf:GetView | Mendapatkan view. | |
AlterView | dlf:AlterView | Mengubah view. | |
DropView | dlf:DropView | Menghapus view. | |
RenameView | dlf:RenameView | Mengganti nama view. | |
Function | ListFunctions | dlf:ListFunctions | Menampilkan daftar fungsi. |
CreateFunction | dlf:CreateFunction | Membuat fungsi. | |
GetFunction | dlf:GetFunction | Mendapatkan fungsi. | |
AlterFunction | dlf:AlterFunction | Mengubah fungsi. | |
DropFunction | dlf:DropFunction | Menghapus fungsi. |
Iceberg REST
Kategori | REST API | Otorisasi RAM | Deskripsi |
Config | GetConfig | dlf:GetConfig | Mendapatkan konfigurasi katalog data. |
Namespace | ListNamespaces | dlf:ListDatabases | Menampilkan daftar namespace. |
CreateNamespace | dlf:CreateDatabase | Membuat namespace. | |
LoadNamespaceMetadata | dlf:GetDatabase | Mendapatkan namespace. | |
NamespaceExists | dlf:GetDatabase | Memeriksa apakah namespace ada. | |
UpdateProperties | dlf:AlterDatabase | Memperbarui properti namespace. | |
DropNamespace | dlf:DropDatabase | Menghapus namespace. | |
Table | ListTables | dlf:ListTables | Menampilkan daftar tabel. |
CreateTable | dlf:CreateTable | Membuat tabel. | |
LoadTable | dlf:GetTable | Mendapatkan tabel. | |
TableExists | dlf:GetTable | Memeriksa apakah tabel ada. | |
UpdateTable | dlf:AlterTable | Memperbarui tabel. | |
DropTable | dlf:DropTable | Menghapus tabel. |
Aksi untuk management API
Kategori | Management API | RAM: Aksi Otorisasi | Deskripsi |
Activation | DescribeRegions | dlf:DescribeRegions | Menampilkan daftar wilayah DLF. |
GetRegionStatus | dlf:GetRegionStatus | Mendapatkan status aktivasi. | |
Subscribe | dlf:Subscribe | Mengaktifkan DLF. | |
CreateInstance | dlf:CreateInstance | Membeli resource komputasi. | |
User and role management | GetUser | dlf:GetUser | Anda dapat mengambil pengguna. |
ListUsers | dlf:ListUsers | Menampilkan daftar pengguna DLF. | |
CreateRole | dlf:CreateRole | Membuat peran DLF. | |
UpdateRole | dlf:UpdateRole | Memperbarui peran DLF. | |
DeleteRole | dlf:DeleteRole | Menghapus peran DLF. | |
GetRole | dlf:GetRole | Mendapatkan peran DLF. | |
ListRoles | dlf:ListRoles | Menampilkan daftar peran DLF. | |
GrantRoleToUsers | dlf:GrantRoleToUsers | Memberikan peran DLF kepada beberapa pengguna DLF. | |
RevokeRoleFromUsers | dlf:RevokeRoleFromUsers | Mencabut peran DLF dari beberapa pengguna DLF. | |
UpdateRoleUsers | dlf:UpdateRoleUsers | Memperbarui pengguna DLF dalam suatu peran. | |
ListRoleUsers | dlf:ListRoleUsers | Menampilkan daftar pengguna yang terkait dengan peran DLF. | |
ListUserRoles | dlf:ListUserRoles | Menampilkan daftar peran DLF yang ditetapkan untuk pengguna. | |
RefreshUserSync | dlf:RefreshUserSync | Memulai sinkronisasi pengguna DLF. | |
Data catalog | CreateCatalog | dlf:CreateCatalog | Membuat katalog data. |
GetCatalog | dlf:GetCatalog | Mendapatkan katalog data. | |
DropCatalog | dlf:DropCatalog | Menghapus katalog data. | |
AlterCatalog | dlf:AlterCatalog | Memperbarui katalog data. | |
ListCatalogs | dlf:ListCatalogs | Menampilkan daftar katalog data. | |
GetCatalogByld | dlf:GetCatalogByld | Mendapatkan katalog data berdasarkan ID Catalog-nya. | |
Database | AlterDatabase | dlf:AlterDatabase | Memperbarui database. |
GetDatabase | dlf:GetDatabase | Mendapatkan database. | |
DropDatabase | dlf:DropDatabase | Menghapus database. | |
CreateDatabase | dlf:CreateDatabase | Membuat database. | |
ListDatabaseDetails | dlf:ListDatabaseDetails | Menampilkan detail database. | |
ListDatabases | dlf:ListDatabases | Menampilkan daftar database. | |
Table | CreateTable | dlf:CreateTable | Membuat tabel. |
DropTable | dlf:DropTable | Menghapus tabel. | |
ListTableDetails | dlf:ListTableDetails | Menampilkan detail tabel. | |
GetTable | dlf:GetTable | Mendapatkan tabel. | |
ListTables | dlf:ListTables | Menampilkan daftar tabel. | |
View | ListViews | dlf:ListViews | Menampilkan daftar view. |
ListViewDetails | dlf:ListViewDetails | Menampilkan detail view. | |
CreateView | dlf:CreateView | Membuat view. | |
GetView | dlf:GetView | Mendapatkan view. | |
AlterView | dlf:AlterView | Mengubah view. | |
DropView | dlf:DropView | Menghapus view. | |
Function | ListFunctions | dlf:ListFunctions | Menampilkan daftar fungsi. |
ListFunctionDetails | dlf:ListFunctionDetails | Menampilkan detail fungsi. | |
CreateFunction | dlf:CreateFunction | Membuat fungsi. | |
GetFunction | dlf:GetFunction | Mendapatkan fungsi. | |
AlterFunction | dlf:AlterFunction | Mengubah fungsi. | |
DropFunction | dlf:DropFunction | Menghapus fungsi. | |
Pengelolaan izin | GrantPermission | dlf:GrantPermission | Memberikan izin pada resource. |
RevokePermission | dlf:RevokePermission | Mencabut izin pada resource. | |
BatchGrantPermissions | dlf:BatchGrantPermissions | Memberikan izin secara batch. | |
BatchRevokePermissions | dlf:BatchRevokePermissions | Mencabut izin secara batch. | |
ListPermissions | dlf:ListPermissions | Menampilkan daftar izin untuk resource tertentu. | |
Iceberg table | GetIcebergTable | dlf:GetIcebergTable | Mendapatkan tabel Iceberg. |
ListIcebergSnapshots | dlf:ListIcebergSnapshots | Menampilkan daftar snapshot tabel Iceberg. |