
# SecMasterUtilities
#### 功能说明
安全云脑系统内置插件，包含多种常用基础工具方法，包括字符串，列表，字典数据处理及时间，四则运算等。
系统内置插件均已存在对应内置的操作连接。
#### 查看SecMasterUtilities插件详情和操作连接
1. [登录安全云脑 SecMaster控制台](https://console.huaweicloud.com/secmaster/#/secmaster/ssa/overview)。
2. 单击管理控制台左上角的![](https://support.huaweicloud.com/usermanual-secmaster/zh-cn_image_0000002020168740.png)，选择区域和项目。
3. 在左侧导航栏选择"工作空间 \> 空间管理"，并在工作空间列表中，单击目标工作空间名称，进入目标工作空间管理页面。 
   图1进入目标工作空间管理页面   
   ![](https://support.huaweicloud.com/usermanual-secmaster/zh-cn_image_0000002572515210.png "点击放大")
   
   
   
4. 在左侧导航栏选择"安全编排 \> 插件管理"，进入插件管理页面。 
   
   图2插件管理页面   
   ![](https://support.huaweicloud.com/usermanual-secmaster/zh-cn_image_0000002364484993.png "点击放大")
   
   
5. 在插件管理页面，选择华为云目录下的SecMasterUtilities，默认进入插件"详情"页签。详情页签展示插件已关联操作连接的登录凭证信息。
6. 单击SecMasterUtilities插件的"操作连接"页签，进入操作连接页面，可查看SecMasterUtilities插件已关联的操作连接信息。
7. 若用户需编辑或删除操作连接，可参见[编辑操作连接](https://support.huaweicloud.com/usermanual-secmaster/secmaster_01_0085.html#secmaster_01_0085__zh-cn_topic_0000001371632197_section161617451014)、[删除操作连接](https://support.huaweicloud.com/usermanual-secmaster/secmaster_01_0085.html#secmaster_01_0085__zh-cn_topic_0000001371632197_section89310558011)。新增插件操作连接可参见[新增操作连接](https://support.huaweicloud.com/usermanual-secmaster/secmaster_01_0085.html#secmaster_01_0085__zh-cn_topic_0000001371632197_section693372612019)，一个插件可存在多个操作连接。
 
#### 插件执行函数stringToJson说明
- [函数stringToJson参数说明]：介绍函数的输入参数和输出参数。
- [函数stringToJson输出示例]：给出函数的输出示例。
 
 #### 函数stringToJson参数说明
函数功能：数据类型转换，将string转为json。
表1函数stringToJson入参说明 
| 参数名称         | 参数类型   | 参数描述               | 是否必填 |
|:---|:---|:---|:---|
| sourceString | String | 需要转换格式的json格式的字符串。 | 是    |
   
表2函数stringToJson出参说明 
| 参数名称       | 参数类型   | 参数描述         |
|:---|:---|:---|
| targetJson | Object | 转换所得的JSON对象。 |
   
 #### 函数stringToJson输出示例
```
{"name":"xxxxx"}
```
#### 插件执行函数isMatch说明
- [函数isMatch参数说明]：介绍函数的输入参数和输出参数。
- [函数isMatch输出示例]：给出函数的输出示例。
 
 #### 函数isMatch参数说明
函数功能：根据输入字符串及正则表达式判断是否命中正则。
表3函数isMatch入参说明 
| 参数名称    | 参数类型   | 参数描述            | 是否必填 |
|:---|:---|:---|:---|
| input   | String | 需要判断是否命中正则的字符串。 | 是    |
| pattern | String | 判定正则表达式。        | 是    |
   
表4函数isMatch出参说明 
| 参数名称   | 参数类型 | 参数描述                                                                                                                                                                                                                                                                                                                                                                        |
|:---|:---|:---|
| result | Bool | - true: 字符串命中正则。  - false: 字符串未命中正则。   |
   
 #### 函数isMatch输出示例
```
result: true
```
#### 插件执行函数stringReplace说明
- [函数stringReplace参数说明]：介绍函数的输入参数和输出参数。
 
 #### 函数stringReplace参数说明
函数功能：字符串替换。
表5函数stringReplace入参说明 
| 参数名称         | 参数类型   | 参数描述              | 是否必填 |
|:---|:---|:---|:---|
| originString | String | 原字符串。             | 是    |
| target       | String | 字符串中需要替换部分，可填写正则。 | 是    |
| replacement  | String | 字符串替换内容。          | 是    |
   
表6函数stringReplace出参说明 
| 参数名称      | 参数类型   | 参数描述      |
|:---|:---|:---|
| newString | String | 替换完成的字符串。 |
   
#### 插件执行函数updateJsonObject说明
- [函数updateJsonObject参数说明]：介绍函数的输入参数和输出参数。
 
 #### 函数updateJsonObject参数说明
函数功能：更新对象属性内容。
表7函数updateJsonObject入参说明 
| 参数名称                   | 参数类型   | 参数描述                                                                                                                                                                                         | 是否必填 |
|:---|:---|:---|:---|
| originoriginJsonObject | Object | 需更新的原JSON对象，示例入参： {"name":"Jack","age":18}                                                                                    | 是    |
| appendJsonObject       | Object | 需要更新的字段组成的JSON对象,可直接写为键值对，若需指定更新值类型，可用type，value格式: {"age":24,"city":{"type":"string","value":{"name":"Chengdu","id":"86"}}} | 否    |
   
表8函数updateJsonObject出参说明 
| 参数名称          | 参数类型   | 参数描述                                                                                                                                         |
|:---|:---|:---|
| newJsonObject | Object | 更新完成的JSON对象： {"city":"{'name': 'Chengdu', 'id': '86'}","name":"Jack","age":24} |
   
#### 插件执行函数formulaOperation说明
- [函数formulaOperation参数说明]：介绍函数的输入参数和输出参数。
 
 #### 函数formulaOperation参数说明
函数功能：进行简单四则运算。
表9函数formulaOperation入参说明 
| 参数名称          | 参数类型   | 参数描述                        | 是否必填 |
|:---|:---|:---|:---|
| formulas      | String | 四则运算表达式，支持括号混合运算，中间不能有多余空格。 | 是    |
| decimalGigits | Int    | 计算结果保留的小数数位，默认为0。           | 否    |
   
表10函数formulaOperation出参说明 
| 参数名称   | 参数类型   | 参数描述                            |
|:---|:---|:---|
| result | String | 四则运算计算结果，根据decimalGigits获取小数点位。 |
   
#### 插件执行函数createUUID说明
- [函数createUUID参数说明]：介绍函数的输入参数和输出参数。
 
 #### 函数createUUID参数说明
函数功能：随机生成UUID。
表11函数createUUID入参说明 
| 参数名称  | 参数类型   | 参数描述            | 是否必填 |
|:---|:---|:---|:---|
| input | String | 占位使用，无实际意义，可不填。 | 否    |
   
表12函数createUUID出参说明 
| 参数名称 | 参数类型   | 参数描述       |
|:---|:---|:---|
| uuid | String | 随机生成的UUID。 |
   
#### 插件执行函数listAddList说明
- [函数listAddList参数说明]：介绍函数的输入参数和输出参数。
 
 #### 函数listAddList参数说明
函数功能：列表与列表进行合并。
表13函数listAddList入参说明 
| 参数名称        | 参数类型   | 参数描述                                                                                                                                                                                                                                                                                                                                                                                                                                                | 是否必填 |
|:---|:---|:---|:---|
| list1       | Array  | 合并列表1。                                                                                                                                                                                                                                                                                                                                                                                                                                              | 否    |
| list2       | Array  | 合并列表2。                                                                                                                                                                                                                                                                                                                                                                                                                                              | 否    |
| deduplicate | String | 合并列表是否进行去重： - yes：进行去重，默认选项。  - no：不进行去重。   | 否    |
   
表14函数listAddList出参说明 
| 参数名称    | 参数类型   | 参数描述    |
|:---|:---|:---|
| newList | String | 合并后新列表。 |
   
#### 插件执行函数getTimeString说明
- [函数getTimeString参数说明]：介绍函数的输入参数和输出参数。
 
 #### 函数getTimeString参数说明
函数功能：获取指定时间格式和偏移量的时间。
表15函数getTimeString入参说明 
| 参数名称       | 参数类型   | 参数描述                                                                                                                                             | 是否必填 |
|:---|:---|:---|:---|
| timeFormat | String | 获取时间的格式，如果不填，则获取毫秒时间戳，示例： %Y-%m-%d %H:%M:%S                                     | 否    |
| timeOffset | String | 以当前时间为基准，获取时间的偏移量，每一个时间单位前可添加"-"，表示获取过去时间，无符号，表示获取将来时间，M表示月，m表示分钟： -1y2M3d-4h5m6s | 否    |
   
表16函数getTimeString出参说明 
| 参数名称       | 参数类型   | 参数描述               |
|:---|:---|:---|
| timeString | String | 生成指定格式，指定偏移量的时间参数。 |
   
#### 插件执行函数stringSplit说明
- [函数stringSplit参数说明]：介绍函数的输入参数和输出参数。
 
 #### 函数stringSplit参数说明
函数功能：根据指定符号进行字符串分割。
表17函数stringSplit入参说明 
| 参数名称         | 参数类型   | 参数描述        | 是否必填 |
|:---|:---|:---|:---|
| originString | String | 需要被分割原始字符串。 | 否    |
| value        | String | 分割字符串的字符。   | 否    |
   
表18函数stringSplit出参说明 
| 参数名称       | 参数类型  | 参数描述            |
|:---|:---|:---|
| targetList | Array | 字符串分割产生的子字符串列表。 |
   
#### 插件执行函数isContains说明
- [函数isContains参数说明]：介绍函数的输入参数和输出参数。
 
 #### 函数isContains参数说明
函数功能：判断对象是否包含某属性或列表是否包含某元素，或字符串是否包含某子字符串。
表19函数isContains入参说明 
| 参数名称             | 参数类型   | 参数描述                   | 是否必填 |
|:---|:---|:---|:---|
| parentCollection | String | 需要判断是否包含子属性的对象或列表或字符串。 | 否    |
| subsets          | String | 需要判断是否被包含的子属性或子字符串。    | 否    |
   
表20函数isContains出参说明 
| 参数名称   | 参数类型 | 参数描述                                                                                                                                                                                                                                                                                                                                                                               |
|:---|:---|:---|
| result | Bool | - true:原对象包含子属性。  - false:原对象不包含子属性。   |
   
#### 插件执行函数stringAppend说明
- [函数stringAppend参数说明]：介绍函数的输入参数和输出参数。
 
 #### 函数stringAppend参数说明
函数功能：字符串与字符串拼接。
表21函数stringAppend入参说明 
| 参数名称         | 参数类型   | 参数描述          | 是否必填 |
|:---|:---|:---|:---|
| originString | String | 原字符串。         | 否    |
| value        | String | 拼接在原字符串后的字符串。 | 否    |
   
表22函数stringAppend出参说明 
| 参数名称         | 参数类型   | 参数描述      |
|:---|:---|:---|
| targetString | String | 拼接完成的字符串。 |
   
#### 插件执行函数stringCompare说明
- [函数stringCompare参数说明]：介绍函数的输入参数和输出参数。
 
 #### 函数stringCompare参数说明
函数功能：按照字符串顺序比较字符串大小。
表23函数stringCompare入参说明 
| 参数名称    | 参数类型   | 参数描述  | 是否必填 |
|:---|:---|:---|:---|
| string1 | String | 字符串1。 | 否    |
| string2 | String | 字符串2。 | 否    |
   
表24函数stringCompare出参说明 
| 参数名称   | 参数类型   | 参数描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
|:---|:---|:---|
| result | String | 字符串比较结果。 - lt: 字符串1大于字符串2。  - gt:字符串1小于字符串2。  - eq:字符串1等于字符串2。   |
   
#### 插件执行函数getValueOrIndexInList说明
- [函数getValueOrIndexInList参数说明]：介绍函数的输入参数和输出参数。
 
 #### 函数getValueOrIndexInList参数说明
函数功能：根据key获取对应value或根据value获取key。
表25函数getValueOrIndexInList入参说明 
| 参数名称       | 参数类型         | 参数描述                       | 是否必填 |
|:---|:---|:---|:---|
| originList | Object/Array | 需要查找对应值的原始对象或数组。           | 是    |
| index      | String       | 需要查询主键对应值时填写，填写后不再填写value。 | 否    |
| value      | String       | 需要查询值对应主键时填写，填写后不再填写index。 | 否    |
   
表26函数getValueOrIndexInList出参说明 
| 参数名称   | 参数类型              | 参数描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
|:---|:---|:---|
| result | String/Object/Int | - 获取字典对象主键对应的值或对象。  - 获取数组下标对应的值。  - 或者数组某值对应的下标。   |
   
#### 插件执行函数listCompare说明
- [函数listCompare参数说明]：介绍函数的输入参数和输出参数。
 
 #### 函数listCompare参数说明
函数功能：接口分页查询时使用，获取分页查询页码列表或偏移量列表。
表27函数listCompare入参说明 
| 参数名称  | 参数类型  | 参数描述       | 是否必填 |
|:---|:---|:---|:---|
| list1 | Array | 原始元素列表1    | 否    |
| list2 | Array | 需剔除元素组成列表2 | 否    |
   
表28函数listCompare出参说明 
| 参数名称   | 参数类型  | 参数描述                     |
|:---|:---|:---|
| result | Array | 列表1元素剔除列表2包含元素后剩余元素组成列表。 |
   
#### 插件执行函数createCountList说明
- [函数createCountList参数说明]：介绍函数的输入参数和输出参数。
- [函数createCountList输出示例]：介绍函数输出示例。
 
 #### 函数createCountList参数说明
函数功能：获取list1中不存在于list2的元素列表。
表29函数createCountList入参说明 
| 参数名称           | 参数类型   | 参数描述                                                                                                                                                             | 是否必填 |
|:---|:---|:---|:---|
| length         | Int    | 查询数据总长度                                                                                                                                                          | 否    |
| strideDistance | Int    | 间隔长度                                                                                                                                                             | 否    |
| flag           | String | 判断输出页码列表或偏移量列表： 0：获取页码列表 1：获取偏移量列表 | 否    |
   
表30函数createCountList出参说明 
| 参数名称    | 参数类型  | 参数描述             |
|:---|:---|:---|
| newList | Array | 分页查询的页码列表或偏移量列表。 |
   
 #### 函数createCountList输出示例
```
页码列表
 newList:[1,2,3,4,5,6,7,8,9,10]
偏移量列表
 newList:[0,10，20,30,40,50,60,70,80,90]
```
#### 插件执行函数jsonToString说明
- [函数jsonToString参数说明]：介绍函数的输入参数和输出参数。
 
 #### 函数jsonToString参数说明
函数功能：类型转换，字典对象转为字符串类型。
表31函数jsonToString入参说明 
| 参数名称       | 参数类型   | 参数描述          | 是否必填 |
|:---|:---|:---|:---|
| sourceJson | Object | 需要转为字符串的字典对象。 | 是    |
   
表32函数jsonToString出参说明 
| 参数名称         | 参数类型   | 参数描述          |
|:---|:---|:---|
| targetString | String | 字典对象转换完成的字符串。 |
   
#### 插件执行函数agglomeration说明
- [函数agglomeration参数说明]：介绍函数的输入参数和输出参数。
- [函数agglomeration输出示例]：介绍函数输出示例。
 
 #### 函数agglomeration参数说明
函数功能：获取列表中出现最多的元素，以及出现次数。
表33函数agglomeration入参说明 
| 参数名称 | 参数类型  | 参数描述  | 是否必填 |
|:---|:---|:---|:---|
| list | Array | 元素列表。 | 是    |
   
表34函数agglomeration出参说明 
| 参数名称        | 参数类型   | 参数描述            |
|:---|:---|:---|
| first_key   | String | 出现次数最多的元素值。     |
| first_value | Int    | 出现次数最多的元素的出现次数。 |
   
 #### 函数agglomeration输出示例
```
{
"first_key": "1111",
"first_value": 2
}
```
#### 插件执行函数extractingSubsets说明
- [函数extractingSubsets参数说明]：介绍函数的输入参数和输出参数。
- [函数extractingSubsets输出示例]：介绍函数输出示例。
 
 #### 函数extractingSubsets参数说明
函数功能：从一个原始列表originList中提取满足特定条件的子集。
表35函数extractingSubsets入参说明 
| 参数名称            | 参数类型   | 参数描述 | 是否必填 |
|:---|:---|:---|:---|
| originList      | Array  | 元素列表 | 是    |
| subsetCondition | String | 子集条件 | 是    |
   
表36函数extractingSubsets出参说明 
| 参数名称   | 参数类型   | 参数描述       |
|:---|:---|:---|
| result | Object | 出现次数最多的元素值 |
   
 #### 函数extractingSubsets输出示例
```
{
"first_key": "1111",
"first_value": 2
}
```
#### 插件执行函数listDeduplicate说明
- [函数listDeduplicate参数说明]：介绍函数的输入参数和输出参数。
 
 #### 函数listDeduplicate参数说明
函数功能：对列表中的元素进行去重。
表37函数listDeduplicate入参说明 
| 参数名称       | 参数类型  | 参数描述    | 是否必填 |
|:---|:---|:---|:---|
| originList | Array | 原始元素列表。 | 是    |
   
表38函数listDeduplicate出参说明 
| 参数名称    | 参数类型  | 参数描述        |
|:---|:---|:---|
| newList | Array | 元素去重完成后的列表。 |
   
#### 插件执行函数listSize说明
- [函数listSize参数说明]：介绍函数的输入参数和输出参数。
 
 #### 函数listSize参数说明
函数功能：计算列表长度。
表39函数listSize入参说明 
| 参数名称       | 参数类型  | 参数描述    | 是否必填 |
|:---|:---|:---|:---|
| originList | Array | 原始元素列表。 | 是    |
   
表40函数listSize出参说明 
| 参数名称 | 参数类型 | 参数描述           |
|:---|:---|:---|
| size | Int  | 原始列表的长度（元素个数）。 |
   
#### 插件执行函数listAppend说明
- [函数listAppend参数说明]：介绍函数的输入参数和输出参数。
 
 #### 函数listAppend参数说明
函数功能：列表添加元素。
表41入参说明 
| 参数名称       | 参数类型  | 参数描述    | 是否必填 |
|:---|:---|:---|:---|
| originList | Array | 原始元素列表。 | 是    |
   
表42出参说明 
| 参数名称    | 参数类型  | 参数描述       |
|:---|:---|:---|
| newList | Array | 添加完元素后的列表。 |
   
#### 插件执行函数slice说明
- [函数slice参数说明]：介绍函数的输入参数和输出参数。
 
 #### 函数slice参数说明
函数功能：列表切割为等距的子列表。
表43入参说明 
| 参数名称 | 参数类型  | 参数描述    | 是否必填 |
|:---|:---|:---|:---|
| arr  | Array | 原始元素列表。 | 是    |
| size | Int   | 子列表的长度。 | 是    |
   
表44出参说明 
| 参数名称   | 参数类型  | 参数描述           |
|:---|:---|:---|
| result | Array | 切割完成的子列表组成的列表。 |
   
