為 Azure SQL Database 設定稽核

適用於:Azure SQL 資料庫

本文說明如何在 Azure SQL Database 中設定邏輯伺服器或資料庫的稽核。

設定您的伺服器稽核配置

預設稽核原則包含下列一組動作群組,這會稽核對資料庫執行的所有查詢和預存程序,以及成功和失敗的登入:

  • BATCH_COMPLETED_GROUP
  • SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP
  • FAILED_DATABASE_AUTHENTICATION_GROUP

若要使用 PowerShell 設定不同動作和動作群組類型的稽核,請參閱管理 Azure SQL 資料庫稽核使用的 API。

下節描述使用 Azure 入口網站進行稽核的設定。

備註

在您使用 Azure 入口網站或 PowerShell Cmdlet 將審計設定至 Log Analytics 工作區或事件中樞目的地時,會建立診斷設定並啟用SQLSecurityAuditEvents類別。

  1. 移至 Azure 入口網站。

  2. 導覽至您的 SQL Database 或 SQL Server 窗格中 [安全性] 標題下的 稽核。

  3. 如果您想要設定伺服器稽核原則,可以選取資料庫稽核頁面上的 [檢視伺服器設定] 連結。 然後,您可以檢視或修改伺服器稽核設定。 伺服器稽核原則會套用至此伺服器上所有現有和新建立的資料庫。

    此螢幕擷取畫面顯示資料庫稽核頁面上醒目提示的 [檢視伺服器設定] 連結。

  4. 如果您偏向在資料庫層級啟用稽核,請將 [稽核] 切換到 [開啟]。 如果已啟用伺服器稽核,資料庫設定的稽核將會與伺服器稽核並存。

  5. 您有多個選項可設定儲存稽核記錄的位置。 您可將記錄寫入至 Azure 儲存體帳戶、Log Analytics 工作區 (以供 Azure 監視器記錄取用) 或事件中心 (以供使用事件中心取用)。 您可以設定這些選項的任意組合,並將稽核記錄寫入至每個組合。

    顯示稽核儲存體選項的螢幕擷取畫面。

稽核至儲存體目的地

若要設定將稽核記錄寫入儲存體帳戶,請在進入 [審核]區段時選取 [儲存體]。 選取您想要儲存記錄的 Azure 儲存體帳戶。 您可以使用下列兩種儲存體驗證類型:受控識別和儲存體存取金鑰。 支援系統指派的受控識別和使用者指派的受控識別。 根據預設,會選取指派給伺服器的主要使用者身分識別。 如果沒有使用者識別,則會建立系統指派的身分識別,並用於驗證用途。 選擇驗證類型之後,請開啟 *[進階屬性] 並選取 [儲存],以選取保留期間。 早於保留期限的記錄會予以刪除。

顯示稽核儲存體帳戶驗證類型的螢幕擷取畫面。

如果您要從 Azure 入口網站部署,請確定記憶體帳戶位於與資料庫和伺服器相同的區域中。 如果您要透過其他方法進行部署,記憶體帳戶可以位於任何區域中。

警告

針對儲存體身份驗證,請使用受控身份。 儲存體存取金鑰會造成安全性風險,因為如果遭到入侵,未經授權的人員可以存取您的記憶體帳戶、可能讀取、寫入或刪除您的數據。 若要降低這些風險,請務必定期輪替密鑰,並使用 Azure Key Vault 安全地管理和輪替密鑰。

  • 保留期間的預設值為 0 (無限制保留)。 您可以在設定稽核的儲存體帳戶時,於 [進階屬性] 中移動 [保留期 (天數)] 的滑桿來變更此值。
    • 如果將保留期間從 0 (無限制的保留) 變更為任何其他值,保留只會套用至保留值變更之後所寫入的記錄。 即使在啟用日誌保存功能後,當保留天數設定為無限制時所寫入的記錄仍將被保留。

稽核記錄傳送到 Log Analytics 目的地

若要設定將稽核記錄寫入至 Log Analytics 工作區,請選取 [Log Analytics],然後開啟 [Log Analytics 詳細資料]。 選取您要儲存記錄的 Log Analytics 工作區,然後選取 [確定]。 如果您尚未建立 Log Analytics 工作區,請參閱在 Azure 入口網站中建立 Log Analytics 工作區。

顯示 [Log Analytics 選取的工作區] 的螢幕擷取畫面。

稽核至事件中樞目的地

若要設定將稽核記錄寫入至事件中樞,請選取 [事件中樞]。 選取您想要儲存記錄的事件中樞,然後選取 [儲存]。 請確定事件中樞與您的資料庫和伺服器位於相同的區域。

顯示事件中樞的螢幕擷取畫面。

使用 Azure 外部監視器(例如事件中樞或 Log Analytics)設定稽核作為目標時,會建立名為 SQLSecurityAuditEvents_XXXX-XXXX-XXX 的其他診斷設定資源,這對稽核正常運作至關重要。

如果刪除診斷設定,故意或無意中,稽核功能將會以無訊息方式失敗,而且不會將稽核記錄傳送到目標位置。 若要避免這種情況,請設定刪除診斷設定的警示,以通知用戶並採取必要的動作。 如需建立動作群組和設定警示的詳細資訊,請參閱 動作群組 和 建立或編輯活動記錄、服務健康狀態或資源健康狀態警示規則。

備註

如果您使用記憶體帳戶、Log Analytics 或事件中樞等多個目標,請確定您具有所有目標的許可權,否則儲存稽核組態將會失敗,因為它會嘗試儲存所有目標的設定。

Azure Synapse Analytics 中的稽核

關於在 Azure Synapse Analytics 中設定稽核的資訊,請參見 設定稽核。