本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用檔案存取稽核記錄最終使用者存取
Amazon FSx for Windows File Server 支援稽核最終使用者對檔案、資料夾和檔案共用的存取權。您可以選擇將檔案系統的稽核事件日誌傳送至提供豐富功能的其他 AWS 服務。這包括啟用查詢、處理、儲存和存檔日誌、發出通知和觸發動作,以進一步提升您的安全和合規目標。
如需使用檔案存取稽核來深入了解存取模式並實作最終使用者活動的安全通知的詳細資訊,請參閱檔案儲存存取模式洞察
注意
只有傳輸量容量為 32 MBps或更高的 FSx Windows 檔案系統才支援檔案存取稽核。您可以修改現有檔案系統的輸送量容量。如需詳細資訊,請參閱管理輸送量容量。
檔案存取稽核可讓您根據定義的稽核控制項,記錄個別檔案、資料夾和檔案共用的最終使用者存取。稽核控制項也稱為NTFS系統存取控制清單 (SACLs)。如果您已在現有檔案資料上設定稽核控制項,您可以建立新的 Amazon FSx for Windows File Server 檔案系統並遷移資料,藉此利用檔案存取稽核。
Amazon FSx支援下列檔案、資料夾和檔案共用存取的 Windows 稽核事件:
對於檔案存取,它支援:全部、周遊資料夾/執行檔案、列出資料夾/讀取資料、讀取屬性、建立檔案/寫入資料、建立資料夾/附加資料、寫入屬性、刪除子資料夾和檔案、刪除、讀取許可、變更許可和取得所有權。
對於檔案共用存取,它支援:連線至檔案共用。
在檔案、資料夾和檔案共用存取之間,Amazon FSx支援記錄成功的嘗試 (例如具有足夠許可的使用者成功存取檔案或檔案共用)、失敗的嘗試,或兩者。
您可以設定是否只對檔案和資料夾、僅對檔案共用或兩者進行存取稽核。您也可以設定應記錄的存取類型 (僅成功嘗試、僅失敗嘗試,或兩者)。您也可以隨時關閉檔案存取稽核。
注意
檔案存取稽核只會記錄最終使用者從啟用時開始存取資料。也就是說,檔案存取稽核不會產生在啟用檔案存取稽核之前所發生的最終使用者檔案、資料夾和檔案共用存取活動的稽核事件日誌。
支援的存取稽核事件速率上限為每秒 5,000 個事件。存取稽核事件不會針對每個檔案讀取和寫入操作產生,而是針對每個檔案中繼資料操作產生一次,例如使用者建立、開啟或刪除檔案時。
稽核事件日誌目的地
當您啟用檔案存取稽核時,您必須設定 Amazon FSx傳送稽核事件日誌 AWS 的服務。您可以將稽核事件日誌傳送至 CloudWatch Logs 日誌群組中的 Amazon CloudWatch Logs 日誌串流或 Amazon Data Firehose 交付串流。您可以在建立 Amazon FSx for Windows File Server 檔案系統時,或更新現有檔案系統之後的任何時間,選擇稽核事件日誌目的地。如需詳細資訊,請參閱管理檔案存取稽核。
以下是一些建議,可協助您決定要選擇哪些稽核事件日誌目的地:
-
如果您想要在 Amazon CloudWatch 主控台中存放、檢視和搜尋稽核事件日誌、使用 CloudWatch Logs Insights 在日誌上執行查詢,以及觸發 CloudWatch 警示或 Lambda 函數,請選擇 CloudWatch 日誌。
-
如果您想要持續將事件串流至 Amazon S3 中的儲存體、Amazon Redshift 中的資料庫、Amazon OpenSearch Service 或 AWS 合作夥伴解決方案,例如 Splunk 或 Datadog,請選擇 Amazon Data Firehose 以進行進一步分析。
根據預設,Amazon FSx會在您的帳戶中建立並使用預設的 CloudWatch Logs 日誌群組做為稽核事件日誌目的地。如果您想要使用自訂 CloudWatch 日誌群組或使用 Firehose 做為稽核事件日誌目的地,以下是稽核事件日誌目的地的名稱和位置要求:
-
CloudWatch Logs 日誌群組的名稱必須以
/aws/fsx/
字首開頭。如果您在主控台上建立或更新檔案系統時沒有現有的 CloudWatch Logs 日誌群組,Amazon FSx可以在 CloudWatch Logs/aws/fsx/windows
日誌群組中建立和使用預設日誌串流。如果您不想使用預設日誌群組,組態 UI 可讓您在主控台上建立或更新檔案系統時建立 CloudWatch 日誌日誌群組。 -
Firehose 交付串流的名稱必須以
aws-fsx-
字首開頭。如果您沒有現有的 Firehose 交付串流,您可以在 主控台建立或更新檔案系統時建立一個。 -
Firehose 交付串流必須設定為使用
Direct PUT
做為其來源。您無法使用現有的 Kinesis 資料串流做為交付串流的資料來源。 -
目的地 ( CloudWatch Logs 日誌群組或 Firehose 交付串流) 必須與 AWS 區域 AWS 帳戶 Amazon FSx 檔案系統位於相同的 AWS 分割區中。
您可以隨時變更稽核事件日誌目的地 (例如,從 CloudWatch 日誌變更為 Firehose)。當您這樣做時,新的稽核事件日誌只會傳送至新的目的地。
盡最大努力稽核事件日誌交付
一般而言,稽核事件日誌記錄會在幾分鐘內交付到目的地,但有時可能需要更長的時間。在極少數情況下,可能會遺漏稽核事件日誌記錄。如果您的使用案例需要特定的語意 (例如,確保不會遺漏任何稽核事件),我們建議您在設計工作流程時考慮遺漏的事件。您可以掃描檔案系統上的檔案和資料夾結構,以稽核遺漏的事件。
遷移您的稽核控制項
如果您已在現有檔案資料上設定稽核控制項 (SACLs),您可以建立 Amazon FSx 檔案系統,並將資料遷移到新的檔案系統。建議使用 AWS DataSync 來傳輸資料,以及SACLs與您的 Amazon FSx 檔案系統相關聯的 。做為替代解決方案,您可以使用 Robocopy (強大的檔案複本)。如需詳細資訊,請參閱將現有檔案儲存遷移到 Amazon FSx。
檢視事件日誌
您可以在 Amazon FSx開始發出稽核事件日誌之後檢視它們。檢視日誌的位置和方式取決於稽核事件日誌目的地:
-
您可以前往 CloudWatch 主控台,然後選擇稽核事件 CloudWatch 日誌要傳送到的日誌群組和日誌串流,以檢視日誌日誌。如需詳細資訊,請參閱《Amazon Logs 使用者指南》中的檢視傳送至 CloudWatch Logs 的日誌資料。 CloudWatch
您可以使用 CloudWatch Logs Insights 以互動方式搜尋和分析您的日誌資料。如需詳細資訊,請參閱《Amazon Logs 使用者指南》中的使用 CloudWatch Logs Insights 分析日誌資料。 CloudWatch
您也可以將稽核事件日誌匯出至 Amazon S3。如需詳細資訊,請參閱《Amazon Logs 使用者指南》中的將日誌資料匯出至 Amazon S3。 CloudWatch
-
您無法在 Firehose 上檢視稽核事件日誌。不過,您可以設定 Firehose 將日誌轉送到您可以從中讀取的目的地。目的地包括 Amazon S3、Amazon Redshift、Amazon OpenSearch Service 和合作夥伴解決方案,例如 Splunk 和 Datadog,如需詳細資訊,請參閱《Amazon Data Firehose 開發人員指南》中的選擇目的地。
稽核事件欄位
本節提供稽核事件日誌中資訊的描述,以及稽核事件的範例。
以下是 Windows 稽核事件中 salient 欄位的說明。
-
EventID 是指 Microsoft 定義的 Windows 事件日誌事件 ID。如需檔案系統事件
和檔案共用事件 的資訊,請參閱 Microsoft 文件。 -
SubjectUserName 是指執行存取的使用者。
-
ObjectName 是指已存取的目標檔案、資料夾或檔案共用。
-
ShareName 適用於為檔案共用存取產生的事件。例如,
EventID 5140
會在存取網路共用物件時產生。 -
IpAddress 是指為檔案共用事件啟動事件的用戶端。
-
關鍵字在可用時,請參閱檔案存取是否成功或失敗。若要成功存取,值為
0x8020000000000000
。對於失敗的存取,值為0x8010000000000000
。 -
TimeCreated SystemTime 是指事件在系統中產生的時間,並以 <YYYY-MM-DDThh:mm:ss.s>Z 格式顯示。
-
電腦是指檔案系統 Windows 遠端 PowerShell 端點DNS的名稱,可用於識別檔案系統。
-
AccessMask可用時, 是指所執行的 檔案存取類型 (例如 ReadData, WriteData)。
-
AccessList 是指請求或授予物件的存取權。如需詳細資訊,請參閱下表和 Microsoft 文件 (例如事件 4556
)。
存取類型 | 存取遮罩 | Value |
---|---|---|
讀取資料或清單目錄 |
0x1 |
%%4416 |
寫入資料或新增檔案 |
0x2 |
%%4417 |
附加資料或新增子目錄 |
0x4 |
%%4418 |
讀取延伸屬性 |
0x8 |
%%4419 |
寫入延伸屬性 |
0x10 |
%%4420 |
執行/周遊 |
0x20 |
%%4421 |
刪除子項 |
0x40 |
%%4422 |
讀取屬性 |
0x80 |
%%4423 |
寫入屬性 |
0x100 |
%%4424 |
Delete |
0x10000 |
%%1537 |
讀取 ACL |
0x20000 |
%%1538 |
寫入 ACL |
0x40000 |
%%1539 |
寫入擁有者 |
0x80000 |
%%1540 |
同步 |
0x100000 |
%%1541 |
存取安全性 ACL |
0x1000000 |
%%1542 |
以下是一些具有範例的關鍵事件。請注意, XML的格式僅供讀取。
刪除物件時會記錄事件 ID 4660。
<Event xmlns='http://schemas.microsoft.com/win/2004/08/events/event'><System> <Provider Name='Microsoft-Windows-Security-Auditing' Guid='{54849625-5478-4994-A5BA-3E3B0328C30D}'/> <EventID>4660</EventID><Version>0</Version><Level>0</Level> <Task>12800</Task><Opcode>0</Opcode> <Keywords>0x8020000000000000</Keywords><TimeCreated SystemTime='2021-05-18T04:51:56.916563800Z'/> <EventRecordID>315452</EventRecordID><Correlation/> <Execution ProcessID='4' ThreadID='5636'/><Channel>Security</Channel> <Computer>amznfsxgyzohmw8.example.com</Computer><Security/></System><EventData> <Data Name='SubjectUserSid'>S-1-5-21-658495921-4185342820-3824891517-1113</Data> <Data Name='SubjectUserName'>Admin</Data><Data Name='SubjectDomainName'>example</Data> <Data Name='SubjectLogonId'>0x50932f71</Data><Data Name='ObjectServer'>Security</Data> <Data Name='HandleId'>0x12e0</Data><Data Name='ProcessId'>0x4</Data><Data Name='ProcessName'></Data> <Data Name='TransactionId'>{00000000-0000-0000-0000-000000000000}</Data></EventData></Event>
事件 ID 4659 會記錄在刪除檔案的請求上。
<Event xmlns='http://schemas.microsoft.com/win/2004/08/events/event'><System> <Provider Name='Microsoft-Windows-Security-Auditing' Guid='{54849625-5478-4994-A5BA-3E3B0328C30D}'/> <EventID>4659</EventID><Version>0</Version><Level>0</Level><Task>12800</Task><Opcode>0</Opcode> <Keywords>0x8020000000000000</Keywords><TimeCreated SystemTime='2021-0603T19:18:09.951551200Z'/> <EventRecordID>308888</EventRecordID><Correlation/><Execution ProcessID='4' ThreadID='5540'/> <Channel>Security</Channel><Computer>amznfsxgyzohmw8.example.com</Computer><Security/></System> <EventData><Data Name='SubjectUserSid'>S-1-5-21-658495921-4185342820-3824891517-1113</Data> <Data Name='SubjectUserName'>Admin</Data><Data Name='SubjectDomainName'>example</Data> <Data Name='SubjectLogonId'>0x2a9a603f</Data><Data Name='ObjectServer'>Security</Data> <Data Name='ObjectType'>File</Data><Data Name='ObjectName'>\Device\HarddiskVolume8\shar\event.txt</Data> <Data Name='HandleId'>0x0</Data><Data Name='TransactionId'>{00000000-0000-0000-0000-000000000000}</Data> <Data Name='AccessList'>%%1537 %%4423 </Data><Data Name='AccessMask'>0x10080</Data><Data Name='PrivilegeList'>-</Data> <Data Name='ProcessId'>0x4</Data></EventData></Event>
在物件上執行特定操作時,會記錄事件 ID 4663。下列範例顯示從 檔案讀取資料,可從 解譯AccessList %%4416
。
<Event xmlns='http://schemas.microsoft.com/win/2004/08/events/event'><System> <Provider Name='Microsoft-Windows-Security-Auditing' Guid='{54849625-5478-4994-A5BA-3E3B0328C30D}'/> <EventID>4663< /EventID><Version>1</Version><Level>0</Level><Task>12800</Task><Opcode>0</Opcode> <Keywords>0x8020000000000000</Keywords><TimeCreated SystemTime='2021-06-03T19:10:13.887145400Z'/> <EventRecordID>308831</EventRecordID><Correlation/><Execution ProcessID='4' ThreadID='6916'/> <Channel>Security</Channel><Computer>amznfsxgyzohmw8.example.com</Computer><Security/></System> <EventData>< Data Name='SubjectUserSid'>S-1-5-21-658495921-4185342820-3824891517-1113< /Data> <Data Name='SubjectUserName'>Admin</Data><Data Name='SubjectDomainName'>example</Data> <Data Name='SubjectLogonId'>0x2a9a603f</Data><Data Name='ObjectServer'>Security</Data> <Data Name='ObjectType'>File</Data><Data Name='ObjectName'>\Device\HarddiskVolume8\share\event.txt</Data> <Data Name='HandleId'>0x101c</Data><Data Name='AccessList'>%%4416 </Data> <Data Name='AccessMask'>0x1</Data><Data Name='ProcessId'>0x4</Data> <Data Name='ProcessName'></Data><Data Name='ResourceAttributes'>S:AI</Data> </EventData></Event>
下列範例顯示來自 檔案的寫入/附加資料,可從 解譯AccessList %%4417
。
<Event xmlns='http://schemas.microsoft.com/win/2004/08/events/event'><System> <Provider Name='Microsoft-Windows-Security-Auditing' Guid='{54849625-5478-4994-A5BA-3E3B0328C30D}'/> <EventID>4663</EventID><Version>1</Version><Level>0</Level><Task>12800</Task><Opcode>0</Opcode> <Keywords>0x8020000000000000</Keywords><TimeCreated SystemTime='2021-06-03T19:12:16.813827100Z'/> <EventRecordID>308838</EventRecordID><Correlation/><Execution ProcessID='4' ThreadID='5828'/> <Channel>Security</Channel><Computer>amznfsxgyzohmw8.example.com</Computer><Security/></System> <EventData><Data Name='SubjectUserSid'>S-1-5-21-658495921-4185342820-3824891517-1113</Data> <Data Name='SubjectUserName'>Admin</Data><Data Name='SubjectDomainName'>example</Data> <Data Name='SubjectLogonId'>0x2a9a603f</Data><Data Name='ObjectServer'>Security</Data> <Data Name='ObjectType'>File</Data><Data Name='ObjectName'>\Device\HarddiskVolume8\share\event.txt</Data> <Data Name='HandleId'>0xa38</Data><Data Name='AccessList'>%%4417 </Data><Data Name='AccessMask'>0x2</Data><Data Name='ProcessId'>0x4</Data> <Data Name='ProcessName'></Data><Data Name='ResourceAttributes'>S:AI</Data></EventData></Event>
事件 ID 4656 表示已請求物件的特定存取。在下列範例中,已啟動「 ObjectName permtest」的讀取請求,並且嘗試失敗,如 的關鍵字值所示0x8010000000000000
。
<Event xmlns='http://schemas.microsoft.com/win/2004/08/events/event'><System> <Provider Name='Microsoft-Windows-Security-Auditing' Guid='{54849625-5478-4994-A5BA-3E3B0328C30D}'/> <EventID>4656</EventID><Version>1</Version><Level>0</Level><Task>12800</Task><Opcode>0</Opcode> <Keywords>0x8010000000000000</Keywords><TimeCreated SystemTime='2021-06-03T19:22:55.113783500Z'/> <EventRecordID>308919</EventRecordID><Correlation/><Execution ProcessID='4' ThreadID='4924'/> <Channel>Security</Channel><Computer>amznfsxgyzohmw8.example.com</Computer><Security/></System> <EventData><Data Name='SubjectUserSid'>S-1-5-21-658495921-4185342820-3824891517-1113</Data> <Data Name='SubjectUserName'>Admin</Data><Data Name='SubjectDomainName'>example</Data> <Data Name='SubjectLogonId'>0x2a9a603f</Data><Data Name='ObjectServer'>Security</Data> <Data Name='ObjectType'>File</Data><Data Name='ObjectName'>\Device\HarddiskVolume8\share\permtest</Data> <Data Name='HandleId'>0x0</Data><Data Name='TransactionId'>{00000000-0000-0000-0000-000000000000}</Data> <Data Name='AccessList'>%%1541 %%4416 %%4423 </Data><Data Name='AccessReason'>%%1541: %%1805 %%4416: %%1805 %%4423: %%1811 D:(A;OICI;0x1301bf;;;AU) </Data><Data Name='AccessMask'>0x100081</Data><Data Name='PrivilegeList'>-</Data> <Data Name='RestrictedSidCount'>0</Data><Data Name='ProcessId'>0x4</Data><Data Name='ProcessName'></Data> <Data Name='ResourceAttributes'>-</Data></EventData></Event>
變更物件的許可時,會記錄事件 ID 4670。下列範例顯示使用者「admin」修改 ObjectName 「permtest」上的許可,以新增許可至SID「S-1-5-21-658495921-4185342820-3824891517-1113」。如需如何解譯許可的詳細資訊,請參閱 Microsoft 文件。
<Event xmlns='http://schemas.microsoft.com/win/2004/08/events/event'><System> <Provider Name='Microsoft-Windows-Security-Auditing' Guid='{54849625-5478-4994-A5BA-3E3B0328C30D}'/> <EventID>4670</EventID><Version>0</Version><Level>0</Level> <Task>13570</Task><Opcode>0</Opcode><Keywords>0x8020000000000000</Keywords> <TimeCreated SystemTime='2021-06-03T19:39:47.537129500Z'/><EventRecordID>308992</EventRecordID> <Correlation/><Execution ProcessID='4' ThreadID='2776'/><Channel>Security</Channel> <Computer>amznfsxgyzohmw8.example.com</Computer><Security/></System><EventData> <Data Name='SubjectUserSid'>S-1-5-21-658495921-4185342820-3824891517-1113</Data> <Data Name='SubjectUserName'>Admin</Data><Data Name='SubjectDomainName'>example</Data> <Data Name='SubjectLogonId'>0x2a9a603f</Data><Data Name='ObjectServer'>Security</Data> <Data Name='ObjectType'>File</Data><Data Name='ObjectName'>\Device\HarddiskVolume8\share\permtest</Data> <Data Name='HandleId'>0xcc8</Data> <Data Name='OldSd'>D:PAI(A;OICI;FA;;;SY)(A;OICI;FA;;;S-1-5-21-658495921-4185342820-3824891517-2622)</Data> <Data Name='NewSd'>D:PARAI(A;OICI;FA;;;S-1-5-21-658495921-4185342820-3824891517-1113)(A;OICI;FA;;;SY)(A;OICI;FA;;; S-1-5-21-658495921-4185342820-3824891517-2622)</Data><Data Name='ProcessId'>0x4</Data> <Data Name='ProcessName'></Data></EventData></Event>
每次存取檔案共用時都會記錄事件 ID 5140。
<Event xmlns='http://schemas.microsoft.com/win/2004/08/events/event'><System> <Provider Name='Microsoft-Windows-Security-Auditing' Guid='{54849625-5478-4994-A5BA-3E3B0328C30D}'/> <EventID>5140</EventID><Version>1</Version><Level>0</Level><Task>12808</Task><Opcode>0</Opcode> <Keywords>0x8020000000000000</Keywords><TimeCreated SystemTime='2021-06-03T19:32:07.535208200Z'/> <EventRecordID>308947</EventRecordID><Correlation/><Execution ProcessID='4' ThreadID='3120'/> <Channel>Security</Channel><Computer>amznfsxgyzohmw8.example.com</Computer><Security/></System> <EventData><Data Name='SubjectUserSid'>S-1-5-21-658495921-4185342820-3824891517-2620</Data> <Data Name='SubjectUserName'>EC2AMAZ-1GP4HMN$</Data><Data Name='SubjectDomainName'>example</Data> <Data Name='SubjectLogonId'>0x2d4ca529</Data><Data Name='ObjectType'>File</Data><Data Name='IpAddress'>172.45.6.789</Data> <Data Name='IpPort'>49730</Data><Data Name='ShareName'>\\AMZNFSXCYDKLDZZ\share</Data> <Data Name='ShareLocalPath'>\??\D:\share</Data><Data Name='AccessMask'>0x1</Data><Data Name='AccessList'>%%4416 </Data></EventData></Event>
在檔案共用層級拒絕存取時,會記錄事件 ID 5145。以下範例顯示「 ShareName demoshare01」的存取遭拒。
<Event xmlns='http://schemas.microsoft.com/win/2004/08/events/event'><System> <Provider Name='Microsoft-Windows-Security-Auditing' Guid='{54849625-5478-4994-A5BA-3E3B0328C30D}'/> <EventID>5145</EventID><Version>0</Version><Level>0</Level> <Task>12811</Task><Opcode>0</Opcode><Keywords>0x8010000000000000</Keywords> <TimeCreated SystemTime='2021-05-19T22:30:40.485188700Z'/><EventRecordID>282939</EventRecordID> <Correlation/><Execution ProcessID='4' ThreadID='344'/><Channel>Security</Channel> <Computer>amznfsxtmn9autz.example.com</Computer><Security/></System><EventData> <Data Name='SubjectUserSid'>S-1-5-21-658495921-4185342820-3824891517- 1113</Data><Data Name='SubjectUserName'>Admin</Data><Data Name='SubjectDomainName'>example</Data> <Data Name='SubjectLogonId'>0x95b3fb7</Data><Data Name='ObjectType'>File</Data> <Data Name='IpAddress'>172.31.7.112</Data><Data Name='IpPort'>59979</Data> <Data Name='ShareName'>\\AMZNFSXDPNTE0DC\demoshare01</Data><Data Name='ShareLocalPath'>\??\D:\demoshare01</Data> <Data Name='RelativeTargetName'>Desktop.ini</Data><Data Name='AccessMask'>0x120089</Data> <Data Name='AccessList'>%%1538 %%1541 %%4416 %%4419 %%4423 </Data><Data Name='AccessReason'>%%1538: %%1804 %%1541: %%1805 %%4416: %%1805 %%4419: %%1805 %%4423: %%1805 </Data></EventData></Event>
如果您使用 CloudWatch Logs Insights 搜尋日誌資料,您可以在事件欄位上執行查詢,如下列範例所示:
-
若要查詢特定事件 ID:
fields @message | filter @message like /4660/
-
若要查詢符合特定檔案名稱的所有事件:
fields @message | filter @message like /event.txt/
如需 CloudWatch Logs Insights 查詢語言的詳細資訊,請參閱《Amazon Logs 使用者指南》中的使用 CloudWatch Logs Insights 分析日誌資料。 CloudWatch