插件工具
该工具旨在用于开发新的或现有插件。
工具
您可以找到列表开源插件要引用,请添加新功能,或修复错误。我们欢迎并鼓励拉出请求!
图标的插件
这是开发插件的主要工具。安装说明icon-plugin.
可用开始文档。
构建
的子命令建造
为插件开发构建工件。
争论
图像
用于将插件代码打包到Docker映像中,这使其可用于运行。这通常是您在现有插件上工作时要做的第一件事,以确保它成功构建。
1$ cd base642$ icon-plugin构建图像3.INFO [0000]构建图像BASE64:1.1.14INFO[0000] Running Command: docker build——pull -t rapid7/base64:1.1.1 . INFO[0000] Running Command: docker build——pull -t rapid7/base64:1.1.1。
塔尔巴尔
用于构建插件的滑球。这用于在InsightConnect中进行后退兼容的测试。
1$ cd base642$ icon-plugin构建tarball3.INFO[0000] Building tarball rapid7-base64-1.1.1.tar.gz
产生
的子命令产生
创建插件的骨骼。
它可用于从插件规范生成新插件(插件规范)具有规范的路径作为论据。
重新生成python plugin.spec.yaml
任何时候修改插件规范,都可以使用子命令产生
与——再生
标志用新的架构重建骨架,而不会影响以前书面代码。这使得添加操作和更新插件规范简单快速。
重新生成python plugin.spec.yaml
Help.md文件是插件中的一个关键部分。这为插件提供了基本信息和用法。在下面运行命令时,帮助将输出到stdout。如果help.md.
缺少,使用重定向来帮助.md为帮助创建基础。
帮助的例子
命令 | 描述 |
---|---|
icon-plugin生成帮助 |
生成帮助 |
icon-plugin生成帮助> help.md |
帮助重定向 |
您需要样本来测试插件。生成样本时,它将创建一个包含插件所需参数的JSON文件。
样的例子
命令 | 描述 |
---|---|
图标-插件示例——示例动作或触发器名称 |
生成一个样本 |
icon-plugin生成样本 |
生成所有样本 |
跑
的子命令跑
在3.3.0版本中=< foricon-plugin.
帮助从命令行中快速测试和执行插件。它包括由生成的传统赛道中的所有功能使
.
看看运行插件页面以获取更多细节。以下是一些例子。
运行示例
命令 | 描述 |
---|---|
icon-plugin运行-c信息 |
显示插件信息 |
icon-plugin运行-R tests/submit。json - j |
在提交JSON测试上执行运行方法 |
icon-plugin运行-R tests/submit。json - |
在提交JSOS测试文件上执行运行方法,以便在我们的PR中发布开源Github库 |
icon-plugin执行-T all -R all -j命令 |
为所有JSON测试执行测试和运行方法 |
HTTP服务器
当插件处于REST模式时,你也可以通过HTTP与它交互:
icon-plugin运行-c http
然后,您可以使用包含JSON输入作为有效载荷的Web请求来击中其运行或测试端点:
1curl - d @tests /前进。json http://127.0.0.1:10001 /行动/前进2curl - d @tests /前进。json http://127.0.0.1:10001 /动作/向前/测试
出口
的子命令出口
将码头图像导出为一个. tar
文件,您可以导入到InsightConnect。该命令的输出将作为自定义插件导入InsightConnect中以开始使用它。注意,这个命令将在导出插件之前首先构建插件。
1$ cd base642美元icon-plugin出口3.INFO[0000] Running Command: docker build——pull -t rapid7/base64:1.1.1 . INFO[0000] Running Command: docker build——pull -t rapid7/base64:1.1.1。4......5INFO [0010]建筑标签6INFO[0010] Running Command: docker tag rapid7/base64:1.1.1 rapid7/base64:latest .输出说明7INFO[0010] Building plugin tarball rapid7_base64_1.1.1.tar . gz .tar . gz8Info Running命令:Docker保存Rapid7 / Base64:1.1.1 -O Rapid7_Base64_1.1.1.tar
JSON规范
一个脚本叫做json_to_spec.py.
将JSON对象转换为InsightConnect插件规范数据。它以包含JSON作为参数的文件路径为参数。它位于开源插件回购.
1$ curl -s https://ifconfig.co/json> ifconfig.json2工具/美元json_to_spec.py ifconfig.json3.类型:{}45输出:6城市:7描述:输入描述8标题:输入标题9类型:字符串10主机名:11描述:输入描述12标题:输入标题13类型:字符串14IP:15描述:输入描述16标题:输入标题17类型:字符串18country_iso:19描述:输入描述20.标题:输入标题21.类型:字符串22.ip_decimal:23.描述:输入描述24.标题:输入标题25.类型:整数26.国家:27.描述:输入描述28.标题:输入标题29.类型:字符串
然后,您可以复制并粘贴输出到您的插件规范,而不必手动输入。