다음을 통해 공유


Power BI를 사용하여 사용자 지정 보고서 만들기

적용 대상:

엔드포인트용 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
  • ina.api.security.microsoft.com

이 섹션에서는 엔드포인트용 Defender API를 기반으로 Power BI 보고서를 만드는 방법을 알아봅니다.

첫 번째 예제에서는 Power BI를 고급 헌팅 API에 연결하는 방법을 보여 줍니다. 두 번째 예제에서는 컴퓨터 작업 또는 경고와 같은 OData API에 대한 연결을 보여 줍니다.

고급 헌팅 API에 Power BI 연결

  1. Microsoft Power BI를 엽니다.

  2. 빈 데이터>가져오기 쿼리를 선택합니다.

    데이터 가져오기 메뉴 항목 아래의 빈 쿼리 옵션

  3. 고급 편집기를 선택합니다.

    고급 편집기 메뉴 항목

  4. 아래 코드 조각을 복사하여 편집기에서 붙여넣습니다.

        let
            AdvancedHuntingQuery = "DeviceEvents | where ActionType contains 'Anti' | limit 20",
    
            HuntingUrl = "https://api.securitycenter.microsoft.com/api/advancedqueries",
    
            Response = Json.Document(Web.Contents(HuntingUrl, [Query=[key=AdvancedHuntingQuery]])),
    
            TypeMap = #table(
                { "Type", "PowerBiType" },
                {
                    { "Double",   Double.Type },
                    { "Int64",    Int64.Type },
                    { "Int32",    Int32.Type },
                    { "Int16",    Int16.Type },
                    { "UInt64",   Number.Type },
                    { "UInt32",   Number.Type },
                    { "UInt16",   Number.Type },
                    { "Byte",     Byte.Type },
                    { "Single",   Single.Type },
                    { "Decimal",  Decimal.Type },
                    { "TimeSpan", Duration.Type },
                    { "DateTime", DateTimeZone.Type },
                    { "String",   Text.Type },
                    { "Boolean",  Logical.Type },
                    { "SByte",    Logical.Type },
                    { "Guid",     Text.Type }
                }),
    
            Schema = Table.FromRecords(Response[Schema]),
            TypedSchema = Table.Join(Table.SelectColumns(Schema, {"Name", "Type"}), {"Type"}, TypeMap , {"Type"}),
            Results = Response[Results],
            Rows = Table.FromRecords(Results, Schema[Name]),
            Table = Table.TransformColumnTypes(Rows, Table.ToList(TypedSchema, (c) => {c{0}, c{2}}))
    
        in Table
    
  5. 완료를 선택합니다.

  6. 자격 증명 편집을 선택합니다.

    자격 증명 편집 메뉴 항목

  7. 조직 계정>로그인을 선택합니다.

    조직 계정 메뉴 항목의 로그인 옵션

  8. 자격 증명을 입력하고 로그인될 때까지 기다립니다.

  9. 연결을 선택합니다.

    조직 계정 메뉴 항목의 로그인 확인 메시지

이제 쿼리 결과가 테이블로 표시되고 그 위에 시각화를 빌드할 수 있습니다. 이 테이블을 복제하고 이름을 바꾸고 내부 고급 헌팅 쿼리를 편집하여 원하는 데이터를 가져올 수 있습니다.

OData API에 Power BI 연결

이전 예제와 이 예제의 유일한 차이점은 편집기 내의 쿼리입니다.

  1. Microsoft Power BI를 엽니다.

  2. 빈 데이터>가져오기 쿼리를 선택합니다.

    데이터 가져오기 메뉴 항목 아래의 빈 쿼리 옵션

  3. 고급 편집기를 선택합니다.

    고급 편집기 메뉴 항목

  4. 다음 코드를 복사하여 편집기에 붙여넣어 조직에서 모든 Machine Actions 를 가져옵니다.

        let
    
            Query = "MachineActions",
    
            Source = OData.Feed("https://api.securitycenter.microsoft.com/api/" & Query, null, [Implementation="2.0", MoreColumns=true])
        in
            Source
    

    경고 및 컴퓨터에 대해 동일한 작업을 수행할 수 있습니다. 쿼리 필터에 OData 쿼리를 사용할 수도 있습니다. OData 쿼리 사용을 참조하세요.

GitHub의 Power BI 대시보드 샘플

Power BI 보고서 템플릿을 참조하세요.

샘플 보고서

엔드포인트용 Microsoft Defender Power BI 보고서 샘플을 봅니다.

더 자세히 알아보고 싶으신가요? Microsoft 기술 커뮤니티: 엔드포인트용 Microsoft Defender 기술 커뮤니티에서 Microsoft 보안 커뮤니티에 참여하세요.