고급 헌팅 API

적용 대상:

경고

이 고급 헌팅 API는 기능이 제한된 이전 버전입니다. 더 많은 테이블을 쿼리할 수 있는 고급 헌팅 API의 보다 포괄적인 버전은 이미 Microsoft Graph 보안 API에서 사용할 수 있습니다. Microsoft Graph 보안 API를 사용한 고급 헌팅을 참조하세요.

엔드포인트용 Microsoft Defender를 경험하고 싶으신가요? 무료 평가판을 신청하세요.

참고

미국 정부 고객인 경우 미국 정부 고객을 위해 엔드포인트용 Microsoft Defender 나열된 URI를 사용하세요.

성능을 향상시키려면 서버를 지리적 위치에 더 가깝게 사용할 수 있습니다.

  • us.api.security.microsoft.com
  • eu.api.security.microsoft.com
  • uk.api.security.microsoft.com
  • au.api.security.microsoft.com
  • swa.api.security.microsoft.com

제한 사항

  1. 지난 30일 동안의 데이터에 대해서만 쿼리를 실행할 수 있습니다.

  2. 결과에는 최대 100,000개의 행이 포함됩니다.

  3. 실행 수는 테넌트당 제한됩니다.

    • API 호출: 분당 최대 45개 호출 및 시간당 최대 1,500건의 호출.
    • 실행 시간: 1시간마다 10분의 실행 시간과 하루에 3시간의 실행 시간입니다.
  4. 단일 요청의 최대 실행 시간은 200초입니다.

  5. 429 응답은 요청 수 또는 CPU별로 할당량 한도에 도달하는 것을 나타냅니다. 응답 본문을 읽어 어떤 제한에 도달했는지 이해합니다.

  6. 단일 요청의 최대 쿼리 결과 크기는 124MB를 초과할 수 없습니다. 를 초과하면 "쿼리 실행이 허용된 결과 크기를 초과했습니다. 결과 수를 제한하여 쿼리를 최적화하고 다시 시도하세요." 가 발생합니다.

권한

이 API를 호출하려면 다음 권한 중 하나가 필요합니다. 사용 권한을 선택하는 방법을 포함하여 자세한 내용은 엔드포인트용 Microsoft Defender API 사용을 참조하세요.

사용 권한 유형 사용 권한 사용 권한 표시 이름
응용 프로그램 AdvancedQuery.Read.All Run advanced queries
위임됨(회사 또는 학교 계정) AdvancedQuery.Read Run advanced queries

참고

사용자 자격 증명을 사용하여 토큰을 가져오는 경우:

  • 사용자에게 Microsoft Entra ID 할당된 역할이 있어야 합니다View Data.
  • 사용자는 디바이스 그룹 설정에 따라 디바이스에 액세스할 수 있어야 합니다(자세한 내용은 디바이스 그룹 Create 및 관리 참조).

디바이스 그룹 만들기는 엔드포인트용 Defender 플랜 1 및 플랜 2에서 지원됩니다.

HTTP 요청

POST https://api.securitycenter.microsoft.com/api/advancedqueries/run

요청 헤더

헤더
권한 부여 전달자 {token}. 필수입니다.
Content-Type application/json

요청 본문

요청 본문에서 JSON 개체에 다음 매개 변수를 제공합니다.

매개 변수 형식 설명
쿼리 텍스트 실행할 쿼리입니다. 필수입니다.

응답

성공하면 이 메서드는 응답 본문에 200 OK 및 QueryResponse 개체를 반환합니다.

예제

요청 예제

다음은 요청의 예입니다.

POST https://api.securitycenter.microsoft.com/api/advancedqueries/run
{
    "Query":"DeviceProcessEvents
|where InitiatingProcessFileName =~ 'powershell.exe'
|where ProcessCommandLine contains 'appdata'
|project Timestamp, FileName, InitiatingProcessFileName, DeviceId
|limit 2"
}

응답 예제

다음은 응답의 예입니다.

참고

여기에 표시된 응답 개체는 간결하게 잘립니다. 모든 속성은 실제 호출에서 반환됩니다.

{
    "Schema": [
        {
            "Name": "Timestamp",
            "Type": "DateTime"
        },
        {
            "Name": "FileName",
            "Type": "String"
        },
        {
            "Name": "InitiatingProcessFileName",
            "Type": "String"
        },
        {
            "Name": "DeviceId",
            "Type": "String"
        }
    ],
    "Results": [
        {
            "Timestamp": "2020-02-05T01:10:26.2648757Z",
            "FileName": "csc.exe",
            "InitiatingProcessFileName": "powershell.exe",
            "DeviceId": "10cbf9182d4e95660362f65cfa67c7731f62fdb3"
        },
        {
            "Timestamp": "2020-02-05T01:10:26.5614772Z",
            "FileName": "csc.exe",
            "InitiatingProcessFileName": "powershell.exe",
            "DeviceId": "10cbf9182d4e95660362f65cfa67c7731f62fdb3"
        }
    ]
}

더 자세히 알아보고 싶으신가요? 기술 커뮤니티: 엔드포인트용 Microsoft Defender Tech Community의 Microsoft 보안 커뮤니티와 Engage.