2013-10-18 62 views
0

我們有一個MS數據庫(.mdb文件),很多人在網絡上訪問過。但是,這個文件很快就會被移走,我們不知道在移動發生之前我們需要通知誰。誰鏈接到我的MS Access表?

有無論如何開始保持間接訪問此數據庫的每個人的日誌?

我們已經有了一個VBA腳本,當直接打開數據庫來記錄重要信息時就會觸發,所以我們可以聯繫他們,但我們發現大多數用戶並沒有真正打開數據庫,而是使用本地他們自己的數據庫鏈接到主數據庫。

大多數數據庫是2007/2010使用.acccdb擴展名。只有這個「主數據庫」使用舊的.mdb擴展名。

有什麼建議嗎?

回答

4

使用文件系統提供的數據庫原語訪問數據庫,它是網絡重定向器。所以文件系統和網絡重定向器總是知道誰在訪問文件(實際上,誰在訪問文件內的物理記錄)。

一個簡單的記錄方法是在文件服務器的Windows事件日誌系統中使用安全日誌。爲此,請選擇數據庫文件,右鍵單擊並選擇「屬性」,「安全性」,「高級」,然後選擇審覈選項卡。將「everyone」添加到審計列表中。我也會添加「匿名」,但如果你有任何「匿名」訪問,你就會遇到更大的問題。

您還需要通過組策略(在域系統上)或本地策略(在沒有組策略的系統/網絡/工作組中的文件服務器上)啓用「對象」的審覈日誌記錄。您需要的是Windows設置>安全設置>本地策略>審覈策略>審覈對象訪問

您需要啓用的日誌(即將獲取此信息)是存儲數據庫文件的服務器上的日誌。它在文件結尾(這是一個地方)的日誌訪問不在請求端(可能在任何地方)。

編輯> 要從日誌中查詢和導出,可以使用「eventquery.vbs」,如果您在其中一臺服務器上有副本。它在一個WMI對象上使用了execquery。如果您還沒有獲得eventquery.vbs,則可能需要查找PowerShell替代方案。

+0

這真棒!我有它的工作,但我怎樣才能更方便地訪問事件日誌?目前我必須打開每條記錄並查看誰訪問了數據庫。我有一個XML查詢來創建一個自定義視圖,只顯示與此特定數據庫相關的事件條目,但有沒有一種方法可以更方便地查看它們,而不是單獨打開每個條目?我試圖將視圖導出爲PDF/CSV,但它只導出一個摘要 - 我需要的信息是在「詳細視圖」中。 – Chronix3