PrismaCloudComputeParseComplianceAlert

Parse Compliance alert raw JSON data.

python · Prisma Cloud Compute by Palo Alto Networks

Source

import json

import demistomock as demisto
from CommonServerPython import *


def parse_compliance(raw_json):
    data = json.loads(raw_json)

    if data.get("kind") != "compliance":
        raise ValueError(f"Input should be a raw JSON compliance alert, received: {raw_json}")

    outputs = {"PrismaCloudCompute.ComplianceAlert": data}

    # remove unneeded fields from human readable results
    headers: list = []
    for field in data:
        if field not in ["_id", "kind", "compliance"]:
            headers.append(field)
    headers.sort()

    readable_outputs = tableToMarkdown("Compliance Information", data, headers=headers)

    # add another table for compliance issues
    readable_outputs += tableToMarkdown("Compliance", data.get("compliance"))

    return (readable_outputs, outputs, raw_json)


def main():
    try:
        return_outputs(*parse_compliance(demisto.args().get("alert_raw_json", "")))
    except Exception as ex:
        return_error(f"Failed to execute PrismaCloudComputeParseComplianceAlert. Error: {ex!s}")


if __name__ in ("__builtin__", "builtins"):
    main()

README

Parse Compliance alert raw JSON data

Script Data


Name Description
Script Type python3
Tags Prisma Cloud Compute
Cortex XSOAR Version 5.0.0

Used In


This script is used in the following playbooks and scripts.

  • Prisma Cloud Compute - Compliance Alert

Inputs


Argument Name Description
alert_raw_json The compliance alert raw JSON

Outputs


Path Description Type
PrismaCloudCompute.ComplianceAlert.compliance.description The compliance description String
PrismaCloudCompute.ComplianceAlert.compliance.id The compliance ID String
PrismaCloudCompute.ComplianceAlert.compliance.type The compliance type String
PrismaCloudCompute.ComplianceAlert.time Compliance alert creation time Date
PrismaCloudCompute.ComplianceAlert.type Entity type (host / image / container) String