Plesk 為 MySQL 和 Microsoft SQL Server 資料庫使用者提供使用者角色。這些角色用作 面板 ,能夠幫助分配許可權給資料庫使用者。支援以下資料庫使用者角色: 讀取和寫入 (默認使用) 唯讀取只寫入 。每個角色都有預設的許可權,將分配給帶有該角色的資料庫用帳戶。您可以編輯各個角色的許可權。

此外,MySQL 還支援 自訂 角色,即用戶定義的許可權角色。SQL Server 用戶無法修改此類角色的許可權。

您可以拒絕某項許可權並禁止 Plesk 用戶授權此許可權。

欲瞭解如何在 網站與域名 > 資料庫 > 使用者管理 中為資料庫使用者選擇角色,請參閱 管理資料庫使用者帳戶 。注意除了資料庫表格上的許可權,管理員訂閱上的資料庫使用者還可以擁有全域許可權。

MySQL 資料庫使用者角色

在帶有 MySQL 的 Plesk 中,使用者可以為資料庫使用者選擇角色,以及添加或移除單個許可權。

每個角色默認的 MySQL 許可權列舉如下:

許可權 讀取和寫入 唯讀取 只寫入
選擇
插入
更新
刪除
創建
拖拽
修改
索引
創建臨時表格
鎖定表格
創建視圖
顯示視圖

若要修改默認的許可權組,可編輯 panel.ini 檔列出您要修改的每個角色的許可權名稱。

請記住 Plesk 客戶仍可以選擇比您在 panel.ini 中指定的更多的許可權,除非您禁止了某些許可權(請進一步查看該頁面上的資訊)。

例如:

[databaseManagement]
features.roles.mysql.readWrite = Select,Update,Insert
features.roles.mysql.readOnly = Select
features.roles.mysql.writeOnly = Update

備註: 更改某個角色的許可權(例如, 讀取與寫入 角色)不會影響有該許可權的現有 MySQL 資料庫使用者的許可權。此類資料庫使用者的角色會被自動更改為 自訂

如何拒絕所有用戶使用某些許可權

您可能需要拒絕所有使用者使用某些許可權,例如,刪除許可權。若要拒絕某些許可權,請在 panel.ini 檔中指定一系列 MySQL 許可權,並忽略您要拒絕的許可權。

例如:

[databaseManagement]
features.privileges.mysql.dataAccess = Select, Insert, Update, Delete
features.privileges.mysql.structureAccess = Create, Drop, Alter, Index, Create Temporary Tables, Lock Tables, Create View, Show View

指定的許可權會在 Plesk UI 中顯示( 網站與域名 > 資料庫 > 用戶管理 )。用戶將只能允許或取消指定的許可權。如果某項許可權未在該列表中,Plesk 會視作拒絕資料庫使用者使用該許可權。

備註: 只有在 Plesk 使用者在資料庫使用者設定中保存了更改( 網站與域名 > 資料庫 > 用戶管理 > 點按用戶名 > 點按 確定 )才會拒絕使用某項許可權。

Microsoft SQL Server 資料庫使用者角色

在配備有 Microsoft SQL Server 的 Plesk 中,用戶可以選擇角色( 讀取與寫入唯讀取只寫入 ),但是無法添加或移除單個許可權(SQL Server 資料庫級別範圍的角色)。許可權不會在 Plesk UI 中顯示。

每個角色的 Microsoft SQL Server 默認全新列舉如下:

許可權 讀取和寫入 唯讀取 只寫入
db_backupoperator
db_datareader
db_datawriter
db_ddladmin

若要修改任一角色的默認許可權組,可編輯 panel.ini 檔列出許可權名稱。

例如:

[databaseManagement]
features.roles.mssql.readWrite = db_datareader,db_backupoperator,db_ddladmin
features.roles.mssql.readOnly = db_datareader,db_backupoperator
features.roles.mssql.writeOnly = db_datawriter

備註: 當您修改某個角色的許可權時,現有資料庫使用者的許可權也會被更改。該角色的所有現有和新創建的用戶都將擁有您在 panel.ini 中指定的許可權。

如何恢復 Microsoft SQL Server 用戶的默認全新

每個資料庫使用者都有其預設的許可權(SQL Server 資料庫級別範圍的角色)。若要重設現有資料庫使用者的許可權為預設值(根據其角色),請運行以下命令:

%plesk_dir%\bin\repair.exe --update-mssql-users-permissions [-database-server <name>] [-database-name <name>]

備註: 如果您在 panel.ini 中修改許可權(例如 讀取與寫入 許可權),命令 --update-mssql-users-permissions 將會使用您指定的許可權,而不是默認的許可權(例如默認的 讀取與寫入 許可權為 db_datareader、db_datawriter、db_backupoperator、db_ddladmin )。