在 Babelfish for Aurora PostgreSQL 中管理許可和存取控制 - Amazon Aurora

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

在 Babelfish for Aurora PostgreSQL 中管理許可和存取控制

在 Babelfish for Aurora PostgreSQL 中,您可以管理資料庫、結構描述和物件的許可和存取控制。下表將概述在 Babelfish 中授予許可的特定 SQL 命令,以實現各種存取控制案例。它將涵蓋可實作的支援使用案例,以及目前不支援案例的解決方法。這可讓您設定適當的許可,以符合使用 Babelfish 資料庫時的安全性和合規要求。

支援的使用案例

下表說明 Babelfish 中支援的使用案例。對於每個使用案例,資料表會顯示實現它所需的動作,以及範例 SQL 命令。

使用案例 動作 SQL 命令 說明 Babelfish 版本相容性

允許登入在任何資料庫中執行 SELECTs/DMLs/DDLs

新增登入至 sysadmin 伺服器角色

ALTER SERVER ROLE sysadmin 新增成員 login

所有版本

允許登入在資料庫中執行 SELECTs/DMLs/DDLs

讓登入成為資料庫擁有者

變更資料庫上的授權::databaselogin

資料庫只能有一個擁有者。

3.4 版及更新版本

允許資料庫使用者對結構描述執行 SELECTs/DMLs

將許可授予結構描述上的資料庫使用者

在結構描述上授予 SELECT/EXECUTE/INSERT/UPDATE/DELETE::schema TO user

結構描述上的授予/撤銷不支援 CASCADE。

Babelfish 不支援 SCHEMA 上的 GRANT/REVOKE OPTION FOR ..。

Babelfish 不支援 CREATE SCHEMA 內的 GRANT/REVOKE。

3.6 版和更新版本、4.2 版和更新版本

允許資料庫使用者對結構描述執行 SELECTs/DMLs

讓資料庫使用者在結構描述建立時間擁有結構描述

建立結構描述schema授權 user

目前不支援在建立後變更結構描述擁有權。

1.2 版及更新版本

允許資料庫使用者對物件執行 SELECTs/DMLs

將許可授予物件上的資料庫使用者

在 物件上授予 SELECT/EXECUTE/INSERT/UPDATE/DELETE::object TO user

所有版本

允許資料庫使用者在資料庫中執行 SELECTs/DMLs/DDLs包括捨棄資料庫

將使用者新增至 db_owner 固定資料庫角色

ALTER ROLE db_owner ADD 成員 user

只有使用者可以新增 db_owner 固定資料庫角色。尚不支援將角色新增至 db_owner 角色。

4.5 版和更新版本、5.1 版和更新版本

允許自訂資料庫角色的使用者或成員只執行資料庫中SELECTs

將使用者或角色新增至 db_datareader 固定資料庫角色

ALTER ROLE db_datareader ADD 成員 user / role

4.5 版和更新版本、5.1 版和更新版本

允許自訂資料庫角色的使用者或成員僅在資料庫中執行 DMLs

將使用者或角色新增至 db_datawriter 固定資料庫角色

ALTER ROLE db_datawriter ADD 成員 user / role

4.5 版和更新版本、5.1 版和更新版本

允許自訂資料庫角色的使用者或成員僅在資料庫中執行 DDLs

將使用者或角色新增至 db_accessadmin 固定資料庫角色

ALTER ROLE db_accessadmin ADD 成員 user / role

4.5 版和更新版本、5.1 版和更新版本

僅允許自訂資料庫角色的使用者或成員使用 CREATE/ALTER/DROP 自訂角色、資料庫中物件的 GRANT/REVOKE 許可和/或資料庫中的 CREATE SCHEMA

將使用者或角色新增至 db_securityadmin 固定資料庫角色

ALTER ROLE db_securityadmin 新增成員 user / role

4.5 版和更新版本、5.1 版和更新版本

允許自訂資料庫角色的使用者或成員僅 CREATE/ALTER/DROP 任何使用者、授予和撤銷資料庫存取權,並將使用者帳戶映射至資料庫中的登入和/或 CREATE SCHEMA

將使用者或角色新增至 db_accessadmin 固定資料庫角色

ALTER ROLE db_accessadmin ADD 成員 user / role

4.5 版和更新版本、5.1 版和更新版本

僅允許登入任何資料庫的 CREATE/DROP/ALTER

將登入新增至 dbcreator 固定伺服器角色

ALTER SERVER ROLE dbcreator ADD 成員 login

只有那些資料庫可以變更 dbcreator 登入可以存取的資料庫。

4.5 版和更新版本、5.1 版和更新版本

僅允許登入 CREATE/ALTER/DROP 任何登入

將登入新增至 securityadmin 固定伺服器角色

ALTER SERVER ROLE securityadmin 新增成員 login

4.5 版和更新版本、5.1 版和更新版本

具有解決方法的不支援使用案例

下表說明 Babelfish 不支援但可使用解決方法達成的使用案例。

使用案例 動作 SQL 命令 說明 Babelfish 版本的解決方法相容性

允許使用者對物件/結構描述執行 SELECTs/DMLs以及將這些許可授予其他使用者的選項

直接將許可授予所有其他使用者

授予 SELECT/EXECUTE/INSERT/UPDATE/DELETE ON OBJECT/SCHEMA::object/schema TO user

GRANT ... 目前不支援 WITH GRANT OPTION。

3.6 版和更新版本、4.2 版和更新版本

允許資料庫使用者在資料庫中執行 SELECTs/DMLs/DDLs包括捨棄資料庫

將角色成員新增至 db_owner 固定資料庫角色

ALTER ROLE db_owner ADD 成員 user

目前不支援將角色新增至 db_owner 角色。

4.5 版和更新版本、5.1 版和更新版本

不支援的使用案例

下表說明 Babelfish 中不支援的使用案例。

使用案例 說明

拒絕自訂資料庫角色的使用者或成員在資料庫中執行 SELECTs

尚未支援 db_denydatareader 固定資料庫角色

拒絕自訂資料庫角色的使用者或成員在資料庫中執行 DMLs

目前不支援 db_denydatawriter 固定資料庫角色。

允許僅登入 KILL 任何資料庫連線

目前不支援 processadmin 固定伺服器角色。

允許登入僅新增或移除連結的伺服器

目前不支援 setupadmin 固定伺服器角色。