CloudTrail Insights insightDetails 요소 - AWS CloudTrail

CloudTrail Insights insightDetails 요소

AWS CloudTrail Insights 이벤트 레코드에는 JSON 구조에 다른 CloudTrail 이벤트와 상이한 필드(또는 ‘페이로드’)가 포함됩니다. CloudTrail Insights 이벤트 레코드에는 이벤트 소스, 사용자 자격 증명, 사용자 에이전트, 과거 평균 또는 ‘기준’, 통계, API 이름, 이벤트가 Insights 이벤트의 시작인지 끝인지 여부와 같은 Insights 이벤트의 기본 트리거에 대한 정보가 들어 있는 insightDetails 블록이 포함됩니다. insightDetails 블록에는 다음 정보가 포함됩니다.

  • state - 이벤트가 시작 또는 종료 Insights 이벤트인지 여부입니다. Start 또는 End 값을 가질 수 있습니다.

    다음 버전 이후: 1.07

    선택 사항: False

  • eventSource - 비정상적인 활동의 소스인 AWS 서비스 엔드포인트(예: ec2.amazonaws.com)입니다.

    다음 버전 이후: 1.07

    선택 사항: False

  • eventName - Insights 이벤트의 이름으로, 일반적으로 비정상적인 활동의 소스인 API의 이름입니다.

    다음 버전 이후: 1.07

    선택 사항: False

  • insightType - Insights 이벤트 유형입니다. 이 값은 ApiCallRateInsight, ApiErrorRateInsight 또는 모두일 수 있습니다.

    다음 버전 이후: 1.07

    선택 사항: False

  • insightContext -

    AWS 도구(‘사용자 에이전트’라고 함), IAM 사용자 및 역할(‘사용자 자격 증명’이라고 함), Insights 이벤트를 생성하기 위해 분석된 이벤트와 관련된 오류 코드에 대한 정보입니다. 이 요소에는 Insights 이벤트의 비정상적인 활동이 ‘기준’ 또는 정상 활동과 비교되는 방식을 보여 주는 통계도 포함됩니다.

    다음 버전 이후: 1.07

    선택 사항: False

    • statistics - 기준에 대한 데이터 혹은 기준 기간 동안 측정된 계정별 주제 API 호출 또는 오류의 일반적인 평균 비율, Insights 이벤트의 첫 1분 동안 Insights 이벤트를 트리거한 평균 호출 또는 오류 비율, Insights 이벤트의 지속 시간(분) 및 기준 측정 기간의 지속 시간(분)을 포함합니다.

      다음 버전 이후: 1.07

      선택 사항: False

      • baseline - 계정의 Insights 이벤트 주제 API에 대한 기준 기간 동안 분당 평균 API 호출 또는 오류 수로, Insights 이벤트 시작 전 7일 동안 계산됩니다.

        다음 버전 이후: 1.07

        선택 사항: False

      • insight -

        시작 Insights 이벤트의 경우 이 값은 비정상적인 활동이 시작되는 동안 분당 평균 API 호출 또는 오류 수입니다. 종료 Insights 이벤트의 경우 이 값은 비정상적인 활동 기간 동안 분당 평균 API 호출 또는 오류 수입니다.

        다음 버전 이후: 1.07

        선택 사항: False

      • insightDuration - Insights 이벤트의 분 단위 지속 시간(주제 API에서 비정상적인 활동의 시작부터 종료까지의 기간)입니다. insightDuration은 시작 및 종료 Insights 이벤트 모두에서 발생합니다.

        다음 버전 이후: 1.07

        선택 사항: False

      • baselineDuration - 기준 기간(주제 API에서 정상 활동이 측정되는 기간)의 지속 시간(분)입니다. baselineDuration은 Insights 이벤트 이전 최소 7일(10080분)입니다. 이 필드는 시작 및 종료 Insights 이벤트 모두에서 발생합니다. baselineDuration 측정 종료 시간은 항상 Insights 이벤트의 시작입니다.

        다음 버전 이후: 1.07

        선택 사항: False

    • attributions - 이 블록에는 비정상적인 기준 활동과 관련된 사용자 자격 증명, 사용자 에이전트 및 오류 코드에 대한 정보가 포함됩니다. 최대 5개의 사용자 자격 증명, 5개의 사용자 에이전트 및 5개의 오류 코드가 Insights 이벤트 attributions 블록에 캡처되며, 활동 수의 평균을 기준으로 가장 높은 것에서 가장 낮은 것까지 내림차순으로 정렬됩니다.

      다음 버전 이후: 1.07

      선택 사항: True

      • attribute - 속성 유형을 포함합니다. 값은 userIdentityArn, userAgent 또는 errorCode일 수 있습니다.

        • userIdentityArn - 비정상적인 활동 및 기준 기간 동안 API 호출 또는 오류에 기여한 상위 5명의 AWS 사용자 또는 IAM 역할을 표시하는 블록입니다. userIdentityCloudTrail 레코드 콘텐츠도 참조하세요.

          다음 버전 이후: 1.07

          선택 사항: False

          • insight - 비정상적인 활동 기간 동안 이루어진 API 호출을 수행한 사용자 자격 증명 ARN을 상위 5개까지(API 호출 수가 가장 많은 것에서 가장 작은 것까지 내림차순으로) 표시하는 블록입니다. 또한 비정상적인 활동 기간 동안 사용자 자격 증명이 수행한 평균 API 호출 수도 표시합니다.

            다음 버전 이후: 1.07

            선택 사항: False

            • value - 비정상적인 활동 기간 동안 이루어진 API 호출을 수행한 사용자 자격 증명 상위 5개 중 하나의 ARN입니다.

              다음 버전 이후: 1.07

              선택 사항: False

            • average - value 필드의 사용자 자격 증명에 대한 비정상적인 활동 기간 동안의 분당 API 호출 또는 오류 수입니다.

              다음 버전 이후: 1.07

              선택 사항: False

          • baseline - 정상 활동 기간 동안 API 호출 또는 오류에 가장 많이 기여한 사용자 자격 증명 ARN을 상위 5개까지 표시하는 블록입니다. 또한 정상 활동 기간 동안 사용자 자격 증명이 로그한 평균 API 호출 또는 오류 수도 표시합니다.

            다음 버전 이후: 1.07

            선택 사항: False

            • value - 정상 활동 기간 동안의 API 호출 또는 오류에 기여한 사용자 자격 증명 상위 5개 중 하나의 ARN입니다.

              다음 버전 이후: 1.07

              선택 사항: False

            • average - value 필드의 사용자 자격 증명에 대한 Insights 활동 시작 시간 이전 7일 동안의 분당 API 호출 또는 오류의 과거 평균입니다.

              다음 버전 이후: 1.07

              선택 사항: False

        • userAgent - 비정상적인 활동 및 기준 기간 동안 사용자 자격 증명이 API 호출을 수행한 AWS 도구를 상위 5개까지 표시하는 블록입니다. 이러한 도구에는 AWS Management Console, AWS CLI 또는 AWS SDK가 포함됩니다. userAgentCloudTrail 레코드 콘텐츠도 참조하세요.

          다음 버전 이후: 1.07

          선택 사항: False

          • insight - 비정상적인 활동 기간 동안 이루어진 API 호출을 수행한 사용자 에이전트를 상위 5개까지(API 호출 수가 가장 많은 것에서 가장 작은 것까지 내림차순으로) 표시하는 블록입니다. 또한 비정상적인 활동 기간 동안 사용자 에이전트가 로그한 평균 API 호출 또는 오류 수도 표시합니다.

            다음 버전 이후: 1.07

            선택 사항: False

            • value - 비정상적인 활동 기간 동안 이루어진 API 호출을 수행한 사용자 에이전트 상위 5개 중 하나입니다.

              다음 버전 이후: 1.07

              선택 사항: False

            • average - value 필드의 사용자 에이전트에 대한 비정상적인 활동 기간 동안 로그된 API 호출 또는 오류 수입니다.

              다음 버전 이후: 1.07

              선택 사항: False

          • baseline - 정상 활동 기간 동안 이루어진 API 호출을 가장 많이 수행한 사용자 에이전트를 상위 5개까지 표시하는 블록입니다. 또한 정상적인 활동 기간 동안 사용자 에이전트가 로그한 평균 API 호출 또는 오류 수도 표시합니다.

            다음 버전 이후: 1.07

            선택 사항: False

            • value - 정상적인 활동 기간 동안 로그된 API 호출 또는 오류에 기여한 상위 5개 사용자 에이전트 중 하나입니다.

              다음 버전 이후: 1.07

              선택 사항: False

            • average - value 필드의 사용자 에이전트에 대한 Insights 활동 시작 시간 이전 7일 동안의 분당 API 호출 또는 오류의 과거 평균입니다.

              다음 버전 이후: 1.07

              선택 사항: False

        • errorCode - 비정상적인 활동 및 기준 기간 동안 API 호출에서 발생한 오류 코드를 상위 5개까지(API 호출 수가 가장 많은 것에서 가장 작은 것까지 내림차순으로) 표시하는 블록입니다. errorCodeCloudTrail 레코드 콘텐츠도 참조하세요.

          다음 버전 이후: 1.07

          선택 사항: False

          • insight - 비정상적인 활동 기간 동안 이루어진 API 호출에서 발생한 오류 코드를 상위 5개까지(관련 API 호출 수가 가장 많은 것에서 가장 작은 것까지 내림차순으로) 표시하는 블록입니다. 또한 비정상적인 활동 기간 동안 오류가 발생한 평균 API 호출 수도 표시합니다.

            다음 버전 이후: 1.07

            선택 사항: False

            • value - 비정상적인 활동 기간 동안 이루어진 API 호출에서 발생한 오류 코드 상위 5개 중 하나입니다(예:AccessDeniedException ).

              Insights 이벤트를 트리거한 호출 중에서 오류가 발생하지 않은 경우 이 값은 null입니다.

              다음 버전 이후: 1.07

              선택 사항: False

            • average - value 필드에 표시된 오류 코드의 비정상적인 활동 기간 동안 분당 API 호출 수입니다.

              오류 코드 값이 null이고 insight 블록에 다른 오류 코드가 없는 경우 average 값은 전체 Insights 이벤트에 대한 statistics 블록의 값과 동일합니다.

              다음 버전 이후: 1.07

              선택 사항: False

          • baseline - 정상 활동 기간 동안 이루어진 API 호출에서 발생한 오류 코드를 상위 5개까지 표시하는 블록입니다. 또한 정상 활동 기간 동안 사용자 에이전트가 수행한 평균 API 호출 수도 표시합니다.

            다음 버전 이후: 1.07

            선택 사항: False

            • value - 정상 활동 기간 동안 이루어진 API 호출에서 발생한 오류 코드 상위 5개 중 하나입니다(예:AccessDeniedException ).

              다음 버전 이후: 1.07

              선택 사항: False

            • average - value 필드의 오류 코드에 대한 Insights 활동 시작 시간 이전 7일 동안의 분당 API 호출 또는 오류의 과거 평균입니다.

              다음 버전 이후: 1.07

              선택 사항: False

insightDetails 블록 예

다음은 Application Auto Scaling API CompleteLifecycleAction이 비정상적인 횟수로 호출되었을 때 발생한 Insights 이벤트의 Insights 이벤트 insightDetails 블록의 예입니다. 전체 Insights 이벤트의 예는 CloudTrail 로그 이벤트 참조 단원을 참조하세요.

이 예는 "state": "Start"로 표시된 시작 Insights 이벤트에서 가져온 것입니다. Insights 이벤트와 연결된 API를 호출한 상위 사용자 자격 증명인 CodeDeployRole1, CodeDeployRole2CodeDeployRole3가 이 Insights 이벤트의 평균 API 호출 비율 및 CodeDeployRole1 역할의 기준과 함께 attributions 블록에 표시됩니다. 또한 attributions 블록은 사용자 에이전트가 codedeploy.amazonaws.com임을 표시합니다. 이는 상위 사용자 자격 증명이 AWS CodeDeploy 콘솔을 사용하여 API 호출을 실행했음을 의미합니다.

Insights 이벤트를 생성하기 위해 분석된 이벤트와 관련된 오류 코드가 없기 때문에(값이 null임) 오류 코드에 대한 insight 평균은 statistics 블록에 표시된 전체 Insights 이벤트에 대한 전체 insight 평균과 동일합니다.

"insightDetails": { "state": "Start", "eventSource": "autoscaling.amazonaws.com", "eventName": "CompleteLifecycleAction", "insightType": "ApiCallRateInsight", "insightContext": { "statistics": { "baseline": { "average": 0.0000882145 }, "insight": { "average": 0.6 }, "insightDuration": 5, "baselineDuration": 11336 }, "attributions": [ { "attribute": "userIdentityArn", "insight": [ { "value": "arn:aws:sts::012345678901:assumed-role/CodeDeployRole1", "average": 0.2 }, { "value": "arn:aws:sts::012345678901:assumed-role/CodeDeployRole2", "average": 0.2 }, { "value": "arn:aws:sts::012345678901:assumed-role/CodeDeployRole3", "average": 0.2 } ], "baseline": [ { "value": "arn:aws:sts::012345678901:assumed-role/CodeDeployRole1", "average": 0.0000882145 } ] }, { "attribute": "userAgent", "insight": [ { "value": "codedeploy.amazonaws.com", "average": 0.6 } ], "baseline": [ { "value": "codedeploy.amazonaws.com", "average": 0.0000882145 } ] }, { "attribute": "errorCode", "insight": [ { "value": "null", "average": 0.6 } ], "baseline": [ { "value": "null", "average": 0.0000882145 } ] } ] } }