理解报表数据模型:函数

为了简化针对报表数据模型的查询的开发和设计,向报表设计器提供了几个实用程序功能。

数据模型2.0.0公开了关于跨站点链接资产的信息。所有以前的信息仍然可用,并且格式相同。在数据模型2.0.0中,有一个网站列在dim_asset维度中,该维度列出资产所属的站点。

年龄

在1.2.0版本中添加

描述:计算指定日期和现在之间的时间差。与内置的age函数不同,此函数将要计算的单位作为参数。此函数将根据指定的单位计算年龄和轮数。有效单位值为(输出精度):

  • (2位精度)
  • (2位精度)
  • (2位精度)
  • (1位精度)
  • 小时(1位精度)
  • 会议记录(0位精度)

年龄的计算不考虑时区,并使用启发式的时间值。换句话说,年龄是根据从日期到现在所经过的时间计算的,而不是日历时间。例如,假设一年有365.25天,一个月有30.4天。

输入:(时间戳,文本)计算年龄的日期和计算单位。

输出:(数字)年龄值,以指定的单位表示,精度基于输入单位。

baselineComparison

描述:一种自定义聚合函数,用于在分组表达式内的两个快照中的一组标识符之间执行时间比较,以返回“新”、“旧”或“相同”的基线计算结果。此结果指示要分组的实体是仅出现在最新状态(“新”),还是仅出现在前一状态(“旧”),或者同时出现在两种状态(“相同”)。此聚合可以聚合具有时间性质的对象的标识符(例如扫描标识符)。

输入:(bigint, bigint)处于新状态或旧状态的任何值的标识符,后面跟着最近状态的标识符。

输出:(文本)一个值,指示基线的计算结果是“新”、“旧”还是“相同”。

csv

在1.2.0版本中添加

描述:返回聚合组中定义的值的逗号分隔列表。此函数可用于替换语法数组_to_字符串(数组_agg(列),',')。创建值列表时,顺序定义为在聚合中观察到的顺序。

输入:(文本)要放置在输出列表中的文本值。

输出:(文本)聚合中所有值的逗号分隔列表。

HTML文本

在1.2.0版本中添加

描述:将HTML内容和结构格式化为扁平的纯文本格式。此函数可用于转换包含内容元数据的字段,如漏洞证明、漏洞描述、解决方案修复等。

输入:(文本)包含要格式化的嵌入HTML内容的值。

输出:(text)纯文本表示。

lastScan

描述:返回资源最近扫描的标识符。

输入:(bigint)资产的标识符。

输出:(bigint)最近在资源上成功完成的扫描标识符。因为每个资产都必须完成一次扫描,所以保证不会返回null。

最大严重性

在1.2.0版本中添加

描述:返回聚合组内的最大严重性值。在包含多个严重性不同的漏洞的分组中使用时,可以使用此聚合来选择所有漏洞的最高严重性。例如,集合严峻的中庸的严峻的. 此聚合只能用于包含漏洞严重性排名的列。

输入:(文本)要选择的严重性值。

输出:(文本)组内发现的最大严重性值:批评的中庸的,或严峻的

先前扫描

描述:返回资产最近一次扫描之前发生的扫描的标识符(请参阅函数lastScan)。

输入:(bigint)资产的标识符。

输出:(bigint)在最近一次扫描资产之前发生的扫描的标识符。如果资产只扫描一次,则返回null。

proofAsText

1.2.0版已弃用。使用htmlToText()。

描述:将要输出的漏洞实例的证明格式化为平坦的纯文本格式。此函数是htmlToText()函数的别名。

输入:(text)要格式化的证明值,可以为空。

输出:(文本)格式化为显示为纯文本的校对值。

scanAsOf

描述:返回在指定日期之前在资源上发生的扫描的标识符(独占)。

输入:(bigint,timestamp)资产的标识符和之前要搜索的日期。

输出:(bigint)在指定日期之前在资产上发生的扫描的标识符,如果在指定日期之前没有在资产上发生扫描,则为空。

scanAsOfDate

在1.2.0版本中添加

描述:返回在指定日期之前在资源上发生的扫描的标识符。看到scanAsOf()如果您正在使用时间戳字段。

输入:(bigint,date)资产的标识符和之前要搜索的日期。

输出:(bigint)在指定日期之前在资产上发生的扫描的标识符,如果在指定日期之前没有在资产上发生扫描,则为空。