Search-UnifiedAuditLog

이 cmdlet은 클라우드 기반 서비스에서만 사용할 수 있습니다.

Search-UnifiedAuditLog cmdlet을 사용하여 통합 감사 로그를 검색합니다. 이 로그에는 Exchange Online, SharePoint, OneDrive, Microsoft Entra ID, Microsoft Teams, Power BI 및 기타 Microsoft 365 서비스의 이벤트가 포함되어 있습니다. 지정된 날짜 범위의 모든 이벤트를 검색하거나 작업을 수행한 사용자, 작업 또는 대상 개체와 같은 특정 조건에 따라 결과를 필터링할 수 있습니다.

참고: 기본적으로 이 cmdlet은 최대 100개의 레코드를 포함하는 결과의 하위 집합을 반환합니다. ReturnLargeSet 값과 함께 SessionCommand 매개 변수를 사용하여 최대 50,000개의 결과를 철저하게 검색합니다. SessionCommand 매개 변수는 cmdlet이 정렬되지 않은 데이터를 반환하도록 합니다.

아래 구문 섹션에 있는 매개 변수 집합에 대한 자세한 내용은 Exchange cmdlet 구문을 참조하십시오.

구문

Default (기본값)

Search-UnifiedAuditLog
    -EndDate <ExDateTime>
    -StartDate <ExDateTime>
    [-Formatted]
    [-FreeText <String>]
    [-HighCompleteness]
    [-IPAddresses <String[]>]
    [-LegacyFlow]
    [-LongerRetentionEnabled <String>]
    [-ObjectIds <String[]>]
    [-Operations <String[]>]
    [-RecordType <AuditRecordType>]
    [-ResultSize <Int32>]
    [-SessionCommand <UnifiedAuditSessionCommand>]
    [-SessionId <String>]
    [-SiteIds <String[]>]
    [-UserIds <String[]>]
    [<CommonParameters>]

Description

Search-UnifiedAuditLog cmdlet은 동일한 명령의 반복에 따라 데이터 페이지를 제공합니다. SessionId 및 SessionCommand를 사용하여 0개 반환값을 얻거나 세션 명령에 따라 최대 결과 수에 도달할 때까지 이 cmdlet을 반복해서 실행할 수 있습니다. 진행률을 측정하려면 cmdlet에서 반환된 다음 데이터를 확인합니다.

  • ResultIndex: 현재 반복의 적중.
  • 모든 반복에 대한 ResultCount 적중.
  • AuditSearchRequestMetadata.moreRecordsAvailable: 진행 중인 쿼리가 더 많은 결과를 반환할 것으로 예상되는지 여부를 나타내는 부울 플래그입니다.

Search-UnifiedAuditLog cmdlet은 Exchange Online PowerShell에서 사용할 수 있습니다. Microsoft Purview 규정 준수 포털을 사용하여 통합 감사 로그에서 이벤트를 볼 수도 있습니다. 자세한 내용은 감사된 활동을 참조하세요.

Microsoft 365 감사 로그에서 프로그래밍 방식으로 데이터를 다운로드하려는 경우 PowerShell 스크립트에서 Search-UnifiedAuditLog cmdlet을 사용하는 대신 Microsoft 365 관리 활동 API를 사용하는 것이 좋습니다. Microsoft 365 관리 활동 API는 organization을 위한 운영, 보안 및 규정 준수 모니터링 솔루션을 개발하는 데 사용할 수 있는 REST 웹 서비스입니다. 자세한 내용은 관리 작업 API 참조를 참조하세요.

이 cmdlet은 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에 대한 모든 매개 변수가 나열되어 있지만 할당된 사용 권한에 포함되지 않은 일부 매개 변수에는 액세스가 불가능할 수 있습니다. 조직에서 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부터 2023년 5월 2일 오전 12:00까지의 모든 이벤트에 대한 통합 감사 로그를 검색합니다.

참고: StartDate 또는 EndDate 매개 변수 값에 타임스탬프를 포함하지 않으면 기본 타임스탬프 오전 12:00(자정)이 사용됩니다.

예 2

Search-UnifiedAuditLog -StartDate "6/1/2023 8:00 AM" -EndDate "6/1/2023 6:00 PM" -RecordType ExchangeAdmin -SessionCommand ReturnLargeSet

이 예제에서는 2023년 6월 1일 오전 8시부터 오후 6시까지 모든 Exchange 관리자 이벤트에 대한 통합 감사 로그를 검색합니다.

노트 StartDate 및 EndDate 매개 변수에 동일한 날짜를 사용하는 경우 타임스탬프를 포함해야 합니다. 그렇지 않으면 시작 날짜와 종료 날짜의 날짜와 시간이 동일하기 때문에 결과가 반환되지 않습니다.

예 3

Search-UnifiedAuditLog -StartDate 5/1/2023 -EndDate 5/8/2023 -SessionId "UnifiedAuditLogSearch 05/08/17" -SessionCommand ReturnLargeSet

이 예제에서는 2023년 5월 1일부터 2023년 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일부터 2023년 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일까지의 통합 감사 로그에서 ObjectID 값으로 식별되는 특정 Word 문서와 관련된 모든 이벤트를 검색합니다.

매개 변수

-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
Default value:None
와일드카드 지원:False
DontShow:False

매개 변수 집합

(All)
Position:Named
필수:True
파이프라인의 값:False
속성 이름별 파이프라인의 값:False
나머지 인수의 값:False

-Formatted

적용 가능: Exchange Online, 온-프레미스 사서함용 기본 제공 보안 추가 기능

Formatted 스위치를 사용하면 일반적으로 정수로 반환되는 특성(예: RecordType 및 Operation)을 설명 문자열로 형식이 지정됩니다. 이 스위치를 사용하면 값을 지정할 필요가 없습니다.

또한 이 스위치를 사용하면 AuditData를 더 쉽게 읽을 수 있습니다.

매개 변수 속성

형식:SwitchParameter
Default value:None
와일드카드 지원:False
DontShow:False

매개 변수 집합

(All)
Position:Named
필수:False
파이프라인의 값:False
속성 이름별 파이프라인의 값:False
나머지 인수의 값:False

-FreeText

적용 가능: Exchange Online, 온-프레미스 사서함용 기본 제공 보안 추가 기능

FreeText 매개 변수는 지정된 텍스트 문자열로 로그 항목을 필터링합니다. 값에 공백이 포함되어 있으면 값을 큰따옴표(")로 묶습니다.

매개 변수 속성

형식:String
Default value:None
와일드카드 지원:False
DontShow:False

매개 변수 집합

(All)
Position:Named
필수:False
파이프라인의 값:False
속성 이름별 파이프라인의 값:False
나머지 인수의 값:False

-HighCompleteness

적용 가능: Exchange Online, 온-프레미스 사서함용 기본 제공 보안 추가 기능

참고: 이 매개 변수는 현재 미리 보기에 있으며 일부 조직에서 사용할 수 있는 것은 아니며 변경될 수 있습니다.

HighCompleteness 스위치는 결과의 성능 대신 완전성을 지정합니다. 이 스위치를 사용하면 값을 지정할 필요가 없습니다.

이 스위치를 사용하면 쿼리가 더 완전한 검색 결과를 반환하지만 실행하는 데 훨씬 더 오래 걸릴 수 있습니다. 이 스위치를 사용하지 않으면 쿼리가 더 빠르게 실행되지만 검색 결과가 누락될 수 있습니다.

매개 변수 속성

형식:SwitchParameter
Default value:None
와일드카드 지원:False
DontShow:False

매개 변수 집합

(All)
Position:Named
필수:False
파이프라인의 값:False
속성 이름별 파이프라인의 값:False
나머지 인수의 값:False

-IPAddresses

적용 가능: Exchange Online, 온-프레미스 사서함용 기본 제공 보안 추가 기능

IPAddresses 매개 변수는 지정된 IP 주소로 로그 항목을 필터링합니다. 쉼표로 구분하여 여러 IP 주소를 지정합니다.

매개 변수 속성

형식:

String[]

Default value:None
와일드카드 지원:False
DontShow:False

매개 변수 집합

(All)
Position:Named
필수:False
파이프라인의 값:False
속성 이름별 파이프라인의 값:False
나머지 인수의 값:False

-LegacyFlow

적용 가능: Exchange Online, Exchange Online Protection

{{ Fill LegacyFlow 설명 }}

매개 변수 속성

형식:SwitchParameter
Default value:None
와일드카드 지원:False
DontShow:False

매개 변수 집합

(All)
Position:Named
필수:False
파이프라인의 값:False
속성 이름별 파이프라인의 값:False
나머지 인수의 값:False

-LongerRetentionEnabled

적용 가능: Exchange Online, 온-프레미스 사서함용 기본 제공 보안 추가 기능

{{ Fill LongerRetentionEnabled 설명 }}

매개 변수 속성

형식:String
Default value:None
와일드카드 지원:False
DontShow:False

매개 변수 집합

(All)
Position:Named
필수:False
파이프라인의 값:False
속성 이름별 파이프라인의 값:False
나머지 인수의 값:False

-ObjectIds

적용 가능: Exchange Online, 온-프레미스 사서함용 기본 제공 보안 추가 기능

ObjectIds 매개 변수는 개체 ID로 로그 항목을 필터링합니다. 개체 ID는 해당 ID가 작용한 대상 개체이며, 이벤트의 RecordType 및 Operations 값에 따라 좌우됩니다.

예를 들어 SharePoint 작업의 경우 개체 ID는 파일, 폴더 또는 사이트에 대한 URL 경로입니다. 사이트에서 로그를 검색하려면 사이트 URL 앞에 와일드카드(*)를 추가합니다(예: "https://contoso.sharepoint.com/sites/test/*").

Microsoft Entra 작업의 경우 개체 ID는 계정의 계정 이름 또는 GUID 값입니다.

ObjectId 값은 이벤트의 AuditData(Details라고도 알려짐) 속성에 나타납니다.

Update 값에 공백이 포함되어 있거나 인용 부호가 필요하면 다음 구문을 사용합니다. "Value1","Value2",..."ValueN"

매개 변수 속성

형식:

String[]

Default value:None
와일드카드 지원:False
DontShow:False

매개 변수 집합

(All)
Position:Named
필수:False
파이프라인의 값:False
속성 이름별 파이프라인의 값:False
나머지 인수의 값:False

-Operations

적용 가능: Exchange Online, 온-프레미스 사서함용 기본 제공 보안 추가 기능

Operations 매개 변수는 작업별로 로그 항목을 필터링합니다. 이 매개 변수의 사용 가능한 값은 RecordType 값에 따라 다릅니다. 이 매개 변수에 사용할 수 있는 값 목록은 감사된 활동을 참조하세요.

Update 값에 공백이 포함되어 있거나 인용 부호가 필요하면 다음 구문을 사용합니다. "Value1","Value2",..."ValueN"

매개 변수 속성

형식:

String[]

Default value:None
와일드카드 지원:False
DontShow:False

매개 변수 집합

(All)
Position:Named
필수:False
파이프라인의 값:False
속성 이름별 파이프라인의 값:False
나머지 인수의 값:False

-RecordType

적용 가능: Exchange Online, 온-프레미스 사서함용 기본 제공 보안 추가 기능

RecordType 매개 변수는 레코드 유형별로 로그 항목을 필터링합니다. 사용 가능한 값에 대한 자세한 내용은 AuditLogRecordType을 참조하세요.

매개 변수 속성

형식:AuditRecordType
Default value:None
와일드카드 지원:False
DontShow:False

매개 변수 집합

(All)
Position:Named
필수:False
파이프라인의 값:False
속성 이름별 파이프라인의 값:False
나머지 인수의 값:False

-ResultSize

적용 가능: Exchange Online, 온-프레미스 사서함용 기본 제공 보안 추가 기능

ResultSize 매개 변수는 반환할 최대 결과 수를 지정합니다. 기본값은 100이고 최대값은 5,000입니다.

매개 변수 속성

형식:Int32
Default value:None
와일드카드 지원:False
DontShow:False

매개 변수 집합

(All)
Position:Named
필수:False
파이프라인의 값:False
속성 이름별 파이프라인의 값:False
나머지 인수의 값:False

-SessionCommand

적용 가능: Exchange Online, 온-프레미스 사서함용 기본 제공 보안 추가 기능

SessionCommand 매개 변수는 반환되는 정보의 양과 구성 방법을 지정합니다. 기본 제한인 100개 이상의 결과를 검색하려는 경우 이 매개 변수가 필요합니다. 유효한 값은 다음과 같습니다.

  • ReturnLargeSet: 이 값을 사용하면 cmdlet이 정렬되지 않은 데이터를 반환합니다. 페이징을 사용하면 최대 50,000개의 결과에 액세스할 수 있습니다. 순서가 지정된 결과가 필요하지 않고 검색 대기 시간에 최적화된 경우 권장되는 값입니다.
  • ReturnNextPreviewPage: 이 값을 사용하면 cmdlet이 날짜를 기준으로 정렬된 데이터를 반환합니다. 페이징 또는 ResultSize 매개 변수를 사용하여 반환되는 최대 레코드 수는 5,000개의 레코드입니다.

참고: 지정된 SessionId 값에 대해 항상 동일한 SessionCommand를 사용합니다. 동일한 세션 ID에 대해 ReturnLargeSet 및 ReturnNextPreviewPage 간을 전환하지 마세요. 그렇지 않으면 출력이 10,000개의 결과로 제한됩니다.

매개 변수 속성

형식:UnifiedAuditSessionCommand
Default value:None
와일드카드 지원:False
DontShow:False

매개 변수 집합

(All)
Position:Named
필수:False
파이프라인의 값:False
속성 이름별 파이프라인의 값:False
나머지 인수의 값:False

-SessionId

적용 가능: Exchange Online, 온-프레미스 사서함용 기본 제공 보안 추가 기능

SessionId 매개 변수는 페이징된 데이터를 반환하기 위해 여러 번 실행되는 명령(cmdlet 및 해당 매개 변수)을 식별하는 ID 문자열을 지정합니다. SessionId는 사용자가 선택하는 어떤 문자열 값도 될 수 있습니다.

cmdlet이 동일한 세션 ID를 사용하여 순차적으로 실행되면 cmdlet은 ResultSize에서 지정한 크기의 순차적 블록으로 데이터를 반환합니다.

지정된 세션 ID에 대해 SessionCommand 값 ReturnLargeSet을 사용한 다음 SessionCommand 값 ReturnNextPreviewPage를 사용하는 경우 결과는 10,000개 레코드로 제한됩니다. 50,000개 레코드를 모두 사용할 수 있게 하려면 동일한 세션 ID에 대해 이 cmdlet을 실행할 때마다 항상 ReturnLargeSet 값을 사용합니다.

매개 변수 속성

형식:String
Default value:None
와일드카드 지원:False
DontShow:False

매개 변수 집합

(All)
Position:Named
필수:False
파이프라인의 값:False
속성 이름별 파이프라인의 값:False
나머지 인수의 값:False

-SiteIds

적용 가능: Exchange Online, 온-프레미스 사서함용 기본 제공 보안 추가 기능

SiteIds 매개 변수는 SharePoint SiteId(GUID)를 기준으로 로그 항목을 필터링합니다. 쉼표로 Value1, Value2,...ValueN구분하여 여러 값을 입력할 수 있습니다.

SharePoint 사이트의 SiteId를 가져오려면 지정할 사이트 모음의 URL에 추가합니다 /_api/site/id . 예를 들어 URL 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[]

Default value:None
와일드카드 지원:False
DontShow: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
Default value:None
와일드카드 지원:False
DontShow:False

매개 변수 집합

(All)
Position:Named
필수:True
파이프라인의 값:False
속성 이름별 파이프라인의 값:False
나머지 인수의 값:False

-UserIds

적용 가능: Exchange Online, 온-프레미스 사서함용 기본 제공 보안 추가 기능

UserIds 매개 변수는 작업을 수행한 사용자의 계정(UserPrincipalName)을 기준으로 로그 항목을 필터링합니다. 예를 들면 laura@contoso.onmicrosoft.com와 같습니다.

Update 값에 공백이 포함되어 있거나 인용 부호가 필요하면 다음 구문을 사용합니다. "Value1","Value2",..."ValueN"

매개 변수 속성

형식:

String[]

Default value:None
와일드카드 지원:False
DontShow:False

매개 변수 집합

(All)
Position:Named
필수:False
파이프라인의 값:False
속성 이름별 파이프라인의 값:False
나머지 인수의 값:False

CommonParameters

이 cmdlet은 -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction 및 -WarningVariable과 같은 일반 매개 변수를 지원합니다. 자세한 내용은 about_CommonParameters를 참조하세요.