

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

# Amazon RDS 上的 MariaDB 安全性
<a name="MariaDB.Concepts.UsersAndPrivileges"></a>

MariaDB 資料庫執行個體的安全性有三個管理層級：
+ AWS Identity and Access Management 控制誰可以在資料庫執行個體上執行 Amazon RDS 管理動作。當您 AWS 使用 IAM 登入資料連線至 時，您的 IAM 帳戶必須具有 IAM 政策，授予執行 Amazon RDS 管理操作所需的許可。如需詳細資訊，請參閱[Amazon RDS 的 Identity and access management](UsingWithRDS.IAM.md)。
+ 建立資料庫執行個體時，您可使用 VPC 安全群組控管哪些裝置和 Amazon EC2 執行個體可以開啟與端點和資料庫執行個體連接埠的連線。您可以使用 Secure Sockets Layer (SSL) 和 Transport Layer Security (TLS) 建立這些連線。此外，貴公司的防火牆規則可控管在公司內執行的裝置是否可開啟與資料庫執行個體的連線。
+ 對 MariaDB 資料庫執行個體建立連線之後，登入和許可的驗證方式就如同在 MariaDB 獨立執行個體中一樣。`CREATE USER`、`RENAME USER`、`GRANT`、`REVOKE` 及 `SET PASSWORD` 等命令的運作方式如同在獨立資料庫中一樣，都會直接修改資料庫結構描述資料表。

 在您建立 Amazon RDS 資料庫執行個體後，主要使用者具有下列預設權限：
+  `alter` 
+  `alter routine` 
+  `create` 
+  `create routine` 
+  `create temporary tables` 
+  `create user` 
+  `create view` 
+  `delete` 
+  `drop` 
+  `event` 
+  `execute` 
+  `grant option` 
+  `index` 
+  `insert` 
+  `lock tables` 
+  `process` 
+  `references` 
+  `reload` 

  此權限在 MariaDB 資料庫執行個體上受限。它不會授予 `FLUSH LOGS` 或 `FLUSH TABLES WITH READ LOCK` 操作的存取權。
+  `replication client` 
+  `replication slave` 
+  `select` 
+  `show create routine` 

  此權限僅適用於執行 11.4 版和更新版本的 MariaDB 資料庫執行個體。
+  `show databases` 
+  `show view` 
+  `trigger` 
+  `update` 

如需這些權限的詳細資訊，請參閱 MariaDB 文件中的[使用者帳戶管理](http://mariadb.com/kb/en/mariadb/grant/)。

**注意**  
雖然您可刪除資料庫執行個體上的主要使用者，但不建議這麼做。若要重新建立主要使用者，請使用 `ModifyDBInstance` API 或 ，`modify-db-instance` AWS CLI 並使用適當的參數指定新的主要使用者密碼。若執行個體中不存在此主要使用者，系統會以指定的密碼建立主要使用者。

為了提供各資料庫執行個體管理服務，建立資料庫執行個體時，系統會一併建立 `rdsadmin` 使用者。若企圖移除、重新命名 `rdsadmin` 帳戶或變更其密碼或權限，皆會導致錯誤。

請限制使用標準 `kill` 和 `kill_query` 命令，藉此允許資料庫執行個體的管理操作。此外，本服務還提供適用於 MariaDB 及 MySQL 的 Amazon RDS 命令 `mysql.rds_kill`、`mysql.rds_kill_query` 與 `mysql.rds_kill_query_id`，讓您能結束資料庫執行個體上的使用者工作階段或查詢。