

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

# 設定 Amazon RDS for Microsoft SQL Server 的稽核政策
<a name="DBActivityStreams.configuring-auditing-SQLServer"></a>

SQL Server 資料庫執行個體具有由 Amazon RDS 管理的伺服器稽核 `RDS_DAS_AUDIT`。您可以定義政策，以便在伺服器稽核規格 `RDS_DAS_SERVER_AUDIT_SPEC` 中記錄伺服器事件。您可以建立資料庫稽核規格 (例如 `RDS_DAS_DB_<name>`)，並定義記錄資料庫事件的政策。如需伺服器和資料庫層級稽核動作群組的清單，請參閱《Microsoft SQL Server 文件》**中的 [SQL Server 稽核動作群組和動作](https://learn.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions)。

預設伺服器政策只會監控失敗的登入，以及資料庫活動串流中，資料庫或伺服器稽核規格的變更。

稽核與稽核規格的限制包括下列各項：
+ 當資料庫活動串流處於*鎖定*狀態時，您無法修改伺服器或資料庫稽核規格。
+ 您無法修改伺服器稽核 `RDS_DAS_AUDIT` 規格。
+ 您無法修改 SQL Server 稽核 `RDS_DAS_CHANGES`，或其相關伺服器稽核規格 `RDS_DAS_CHANGES_AUDIT_SPEC`。
+ 建立資料庫稽核規格時，您必須使用格式 `RDS_DAS_DB_<name>`，例如 `RDS_DAS_DB_databaseActions`。

**重要**  
對於較小的執行個體類別，建議您只稽核所需資料，而非所有內容。這能降低資料庫活動串流對這些執行個體類別的效能影響。

下列程式碼範例會修改伺服器稽核規格 `RDS_DAS_SERVER_AUDIT_SPEC`，並稽核任何登出和成功登入動作：

```
ALTER SERVER AUDIT SPECIFICATION [RDS_DAS_SERVER_AUDIT_SPEC]
      WITH (STATE=OFF);
ALTER SERVER AUDIT SPECIFICATION [RDS_DAS_SERVER_AUDIT_SPEC]
      ADD (LOGOUT_GROUP),
      ADD (SUCCESSFUL_LOGIN_GROUP)
      WITH (STATE = ON );
```

下列程式碼範例會建立資料庫稽核規格 `RDS_DAS_DB_database_spec`，並將其連接至伺服器稽核 `RDS_DAS_AUDIT`：

```
USE testDB;
CREATE DATABASE AUDIT SPECIFICATION [RDS_DAS_DB_database_spec]
     FOR SERVER AUDIT [RDS_DAS_AUDIT]
     ADD ( INSERT, UPDATE, DELETE  
          ON testTable BY testUser )  
     WITH (STATE = ON);
```

設定稽核規格後，請確定規格 `RDS_DAS_SERVER_AUDIT_SPEC` 和 `RDS_DAS_DB_<name>` 皆設為 `ON` 狀態。現在，他們可以將稽核資料傳送至您的資料庫活動串流。