Search-UnifiedAuditLog
此指令程式只能在雲端式服務中使用。
使用 Search-UnifiedAuditLog Cmdlet 來搜尋統一的稽核記錄。 此日誌包含來自 Exchange Online、SharePoint、OneDrive、Microsoft Entra ID、Microsoft Teams、Power BI 及其他 Microsoft 365 服務的事件。 你可以搜尋指定日期範圍內的所有事件,或根據特定條件篩選結果,例如執行該動作的使用者、該動作或目標物件。
注意:預設情況下,此 cmdlet 會回傳包含最多 100 筆紀錄的子集結果。 使用 SessionCommand 參數搭配 ReturnLargeSet 值,可以徹底搜尋最多 50,000 筆結果。 SessionCommand 參數會讓 cmdlet 回傳未排序的資料。
如需下方<語法>一節中參數集的詳細資訊,請參閱 Exchange Cmdlet 語法。
語法
Default (預設值)
Search-UnifiedAuditLog
-EndDate <ExDateTime>
-StartDate <ExDateTime>
[-Formatted]
[-FreeText <String>]
[-HighCompleteness]
[-IPAddresses <String[]>]
[-LongerRetentionEnabled <String>]
[-ObjectIds <String[]>]
[-Operations <String[]>]
[-RecordType <AuditRecordType>]
[-ResultSize <Int32>]
[-SessionCommand <UnifiedAuditSessionCommand>]
[-SessionId <String>]
[-SiteIds <String[]>]
[-UserIds <String[]>]
[<CommonParameters>]
Description
Search-UnifiedAuditLog 指令小程式會根據同一指令的反覆迭代呈現一頁資料。 使用 SessionID 和 SessionCommand 反覆執行 cmdlet,直到你沒有回傳,或是根據 session 指令達到最大結果數。 要評估進度,可以查看目前迭代) 的 ResultIndex (命中率,以及 ResultCount (所有迭代) 指令小程式回傳資料屬性的命中率。
Search-UnifiedAuditLog 指令小程式可Exchange Online PowerShell 使用。 您也可以透過 Microsoft Purview 合規性入口網站查看統一稽核日誌中的事件。 欲了解更多資訊,請參閱 已審核活動。
如果你想從 Microsoft 365 稽核日誌中程式化下載資料,我們建議你使用 Microsoft 365 管理活動 API,而不是在 PowerShell 腳本中使用 Search-UnifiedAuditLog cmdlet。 Microsoft 365 管理活動 API 是一項 REST 網路服務,您可以用來為您的組織開發營運、安全與合規監控解決方案。 欲了解更多資訊,請參閱 管理活動 API 參考資料。
此指令檔可在 21Vianet 運作的 Office 365 中使用,但不會回傳任何結果。
OutVariable 參數接受 ArrayList 類型的物件。 以下是如何使用它的範例:
$start = (Get-Date).AddDays(-1); $end = (Get-Date).AddDays(-0.5); $auditData = New-Object System.Collections.ArrayList; Search-UnifiedAuditLog -StartDate $start -EndDate $end -OutVariable +auditData | Out-Null
您必須已獲指派權限,才能執行此指令程式。 雖然這篇文章列出了 cmdlet 的所有參數,但如果某些參數未包含在你分配的權限中,你可能無法存取這些參數。 若要尋找在組織中執行任何 Cmdlet 或參數所需的權限,請參閱 Find the permissions required to run any Exchange cmdlet。
範例
範例 1
Search-UnifiedAuditLog -StartDate 5/1/2023 -EndDate 5/2/2023 -SessionCommand ReturnLargeSet
此範例搜尋統一稽核日誌中,從 2023 年 5 月 1 日凌晨 12:00 到 5 月 2 日凌晨 12:00 的所有事件。
注意:若 StartDate 或 EndDate 參數未包含時間戳,則使用預設時間戳 12:00 AM (午夜) 。
範例 2
Search-UnifiedAuditLog -StartDate "6/1/2023 8:00 AM" -EndDate "6/1/2023 6:00 PM" -RecordType ExchangeAdmin -SessionCommand ReturnLargeSet
此範例搜尋統一稽核日誌中所有 Exchange 管理員事件,時間為 2023 年 6 月 1 日上午 8:00 至下午 6:00。
註 如果你使用相同的日期作為開始日期和結束日期參數,則需要包含時間戳;否則,因為開始與結束日期的日期與時間相同,無法回傳任何結果。
範例 3
Search-UnifiedAuditLog -StartDate 5/1/2023 -EndDate 5/8/2023 -SessionId "UnifiedAuditLogSearch 05/08/17" -SessionCommand ReturnLargeSet
此範例搜尋統一稽核日誌中 2023 年 5 月 1 日至 5 月 8 日期間的所有事件。 如果你在 StartDate 或 EndDate 參數中沒有包含時間戳,資料會以頁面形式回傳,因為指令會依序執行,且使用相同的 SessionID 值。
注意事項:在指定的 SessionId 值上永遠使用相同的 SessionCommand 值。 在相同的工作階段 ID 上不要在 ReturnLargeSet 與 ReturnNextPreviewPage 間切換。 否則,輸出結果限制在 10,000 筆。
範例 4
Search-UnifiedAuditLog -StartDate 5/1/2023 -EndDate 5/8/2023 -RecordType SharePointFileOperation -Operations FileAccessed -SessionId "WordDocs_SharepointViews" -SessionCommand ReturnLargeSet
此範例搜尋統一稽核日誌中,搜尋 2023 年 5 月 1 日至 5 月 8 日期間在 SharePoint 存取的任何檔案。 使用相同的 SessionId 值時,循序重新執行命令時會在頁面中傳回資料。
範例 5
Search-UnifiedAuditLog -StartDate 5/1/2023 -EndDate 5/8/2023 -ObjectIDs "https://alpinehouse.sharepoint.com/sites/contoso/Departments/SM/International/Shared Documents/Sales Invoice - International.docx" -SessionCommand ReturnLargeSet
此範例搜尋從 2023 年 5 月 1 日至 2023 年 5 月 8 日的統一稽核日誌,尋找所有與特定 Word 文件相關的事件,該文件由其 ObjectID 值識別。
參數
-EndDate
適用:Exchange Online,內建本地信箱安全外掛
EndDate 參數會指定日期範圍的結束日期。 條目會儲存在協調世界時 (UTC) 統一稽核日誌中。 如果你指定日期/時間值但沒有標示時區,該值是 UTC 時間。
若要指定這個參數的日期/時間值,請使用下列其中一個選項︰
- 請指定UTC的日期/時間值:例如。
"2018-05-06 14:30:00z" - 指定日期/時間值作為公式,將你當地時區的日期/時間轉換成 UTC:例如,
(Get-Date "5/6/2018 9:30 AM").ToUniversalTime()。 如需詳細資訊,請參閱 Get-Date。
如果你在這個參數中沒有包含時間戳,預設時間戳記就是指定日期凌晨 12:00 (午夜) 。
參數屬性
| 類型: | ExDateTime |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
(All)
| Position: | Named |
| 必要: | True |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-Formatted
適用:Exchange Online,內建本地信箱安全外掛
格式化切換會使通常以整數回傳的屬性 (例如 RecordType 和 Operation) 被格式化為描述字串。 您不需要使用此參數指定值。
此外,此切換使 AuditData 更易讀取。
參數屬性
| 類型: | SwitchParameter |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-FreeText
適用:Exchange Online,內建本地信箱安全外掛
FreeText 參數會依照指定的文字字串過濾日誌條目。 如果值包含空格,請使用引號 (") 括住值。
參數屬性
| 類型: | String |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-HighCompleteness
適用:Exchange Online,內建本地信箱安全外掛
注意:此參數目前處於預覽階段,並非所有組織都能提供,且可能會有所變動。
高完整性開關則在結果中指定完整性,而非效能。 您不需要使用此參數指定值。
使用此切換後,查詢會回傳更完整的搜尋結果,但執行時間可能會大幅延長。 如果你不使用這個開關,查詢會跑得更快,但可能會缺少搜尋結果。
參數屬性
| 類型: | SwitchParameter |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-IPAddresses
適用:Exchange Online,內建本地信箱安全外掛
IPAddresses 參數會依照指定的 IP 位址過濾日誌條目。 你指定多個 IP 位址,中間用逗號分隔。
參數屬性
| 類型: | String[] |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-LongerRetentionEnabled
適用:Exchange Online,內建本地信箱安全外掛
{{ Fill LongerRetentionEnabled 描述 }}
參數屬性
| 類型: | String |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-ObjectIds
適用:Exchange Online,內建本地信箱安全外掛
ObjectIds 參數會依據物件識別碼來篩選記錄項目。 物件識別碼是已啟動的目標物件,而且取決於事件的 RecordType 和 Operations 值。
例如,SharePoint 操作中,物件 ID 是指向檔案、資料夾或網站的 URL 路徑。 要搜尋網站的日誌,可以在網站網址前加上萬用字元 (*) ,例如 "https://contoso.sharepoint.com/sites/test/*") (。
對於 Microsoft Entra 操作,物件 ID 是帳號名稱或帳號的 GUID 值。
ObjectId 值會出現在事件的 AuditData (也稱為詳細資料) 屬性。
您可以輸入多個以逗號分隔的值。 如果這些值包含空格或需要引號,請使用下列語法: "Value1","Value2",..."ValueN"。
參數屬性
| 類型: | String[] |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-Operations
適用:Exchange Online,內建本地信箱安全外掛
Operations 參數會依據作業來篩選記錄項目。 此參數的可用值取決於 RecordType 值。 關於此參數可用值的列表,請參見 已審核活動。
您可以輸入多個以逗號分隔的值。 如果這些值包含空格或需要引號,請使用下列語法: "Value1","Value2",..."ValueN"。
參數屬性
| 類型: | String[] |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-RecordType
適用:Exchange Online,內建本地信箱安全外掛
RecordType 參數會依據記錄類型來篩選記錄項目。 關於可用值的詳細資訊,請參見 AuditLogRecordType。
參數屬性
| 類型: | AuditRecordType |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-ResultSize
適用:Exchange Online,內建本地信箱安全外掛
ResultSize 參數會指定傳回的結果筆數上限。 預設值為 100,最大值為 5000。
參數屬性
| 類型: | Int32 |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-SessionCommand
適用:Exchange Online,內建本地信箱安全外掛
SessionCommand 參數指定回傳多少資訊以及如何組織。 如果你想取得超過 100 個預設限制的結果,這個參數是必須的。 有效值為:
- ReturnLargeSet:此值使指令長返回未排序的資料。 透過分頁,你最多可存取50,000個結果。 這是建議的值,若不需要排序結果且已優化搜尋延遲。
- ReturnNextPreviewPage:此值會使指令檔返回排序日期的資料。 透過分頁或 ResultSize 參數,最多可回傳的紀錄數為 5,000 筆。
注意事項:在指定的 SessionId 值上永遠使用相同的 SessionCommand 值。 在相同的工作階段 ID 上不要在 ReturnLargeSet 與 ReturnNextPreviewPage 間切換。 否則,輸出結果限制在 10,000 筆。
參數屬性
| 類型: | UnifiedAuditSessionCommand |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-SessionId
適用:Exchange Online,內建本地信箱安全外掛
SessionId參數指定一個ID字串,用來識別指令 (指令,並用) 多次執行以回傳分頁資料。 SessionId 可以是您選擇的任何字串值。
當 cmdlet 以相同 session ID 依序執行時,指令檔會以 ResultSize 指定的大小的連續區塊回傳資料。
在指定的工作階段 ID 上,如果您使用 SessionCommand 值 ReturnLargeSet然後使用 SessionCommand值 ReturnNextPreviewPage,結果會僅限於 10000 筆記錄。 若要讓所有 50000 記錄可用,每次在相同工作階段 ID 上執行此指令時,永遠使用 ReturnLargeSet 值。
參數屬性
| 類型: | String |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-SiteIds
適用:Exchange Online,內建本地信箱安全外掛
SiteIds 參數會依據 SharePoint SiteId (GUID) 來過濾日誌條目。 你可以輸入多個以逗號分隔的數值: Value1, Value2,...ValueN。
要取得 SharePoint 網站的 SiteId,請附加 /_api/site/id 你想指定的網站集合的網址。 例如,將網址 https://contoso.sharepoint.com/sites/hr-project 改為 https://contoso.sharepoint.com/sites/hr-project/_api/site/id。 會回傳一個 XML 有效載荷,網站集合的 SiteID 會顯示在 Edm.Guid 屬性中;例如: <d:Id xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices" xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata" xmlns:georss="http://www.georss.org/georss" xmlns:gml="http://www.opengis.net/gml" m:type="Edm.Guid">14ab81b6-f23d-476a-8cac-ad5dbd2910f7</d:Id>。
參數屬性
| 類型: | String[] |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-StartDate
適用:Exchange Online,內建本地信箱安全外掛
StartDate 參數會指定日期範圍的開始日期。 條目會儲存在協調世界時 (UTC) 統一稽核日誌中。 如果你指定日期/時間值但沒有標示時區,該值是 UTC 時間。
若要指定這個參數的日期/時間值,請使用下列其中一個選項︰
- 請指定UTC的日期/時間值:例如。
"2018-05-06 14:30:00z" - 指定日期/時間值作為公式,將你當地時區的日期/時間轉換成 UTC:例如,
(Get-Date "5/6/2018 9:30 AM").ToUniversalTime()。 如需詳細資訊,請參閱 Get-Date。
如果你在這個參數中沒有包含時間戳,預設時間戳記就是指定日期凌晨 12:00 (午夜) 。
參數屬性
| 類型: | ExDateTime |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
(All)
| Position: | Named |
| 必要: | True |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-UserIds
適用:Exchange Online,內建本地信箱安全外掛
UserIds 參數會依據執行該動作的使用者的帳號 (UserPrincipalName) 來過濾日誌條目。 例如,laura@contoso.onmicrosoft.com。
您可以輸入多個以逗號分隔的值。 如果這些值包含空格或需要引號,請使用下列語法: "Value1","Value2",..."ValueN"。
參數屬性
| 類型: | String[] |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
CommonParameters
此 cmdlet 支援常見參數:-Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction 和 -WarningVariable。 如需詳細資訊,請參閱 about_CommonParameters。