通过主机获取脚本

描述

object script.getscriptsbyhosts(array hostIds) 此方法允许检索特定主机可用的脚本。

此方法允许任何用户使用。可以在用户角色设置中撤销调用此方法的权限。更多信息见User roles

参数

(字符串/数组) 用于检索脚本的主机ID。

返回值

(对象) 返回一个以主机ID为属性、以可用脚本数组为值的对象。 ::: notetip 此方法会自动拓展confirmation 中的宏. :::

示例

通过主机ID检索脚本

检索主机“30079”和“30073”上所有脚本。

请求:

{  "jsonrpc": "2.0",  "method": "script.getscriptsbyhosts",  "params": [  "30079",  "30073"  ],  "auth": "038e1d7b1735c6a5436ee9eae095879e",  "id": 1 }

响应:

{  "jsonrpc": "2.0",  "result": {  "30079": [  {  "scriptid": "3",  "name": "Detect operating system",  "command": "sudo /usr/bin/nmap -O {HOST.CONN} 2>&1",  "host_access": "2",  "usrgrpid": "7",  "groupid": "0",  "description": "",  "confirmation": "",  "type": "0",  "execute_on": "1",  "hostid": "10001"  },  {  "scriptid": "1",  "name": "Ping",  "command": "/bin/ping -c 3 {HOST.CONN} 2>&1",  "host_access": "2",  "usrgrpid": "0",  "groupid": "0",  "description": "",  "confirmation": "",  "type": "0",  "execute_on": "1",  "hostid": "10001"  },  {  "scriptid": "2",  "name": "Traceroute",  "command": "/usr/bin/traceroute {HOST.CONN} 2>&1",  "host_access": "2",  "usrgrpid": "0",  "groupid": "0",  "description": "",  "confirmation": "",  "type": "0",  "execute_on": "1",  "hostid": "10001"  }  ],  "30073": [  {  "scriptid": "3",  "name": "Detect operating system",  "command": "sudo /usr/bin/nmap -O {HOST.CONN} 2>&1",  "host_access": "2",  "usrgrpid": "7",  "groupid": "0",  "description": "",  "confirmation": "",  "type": "0",  "execute_on": "1",  "hostid": "10001"  },  {  "scriptid": "1",  "name": "Ping",  "command": "/bin/ping -c 3 {HOST.CONN} 2>&1",  "host_access": "2",  "usrgrpid": "0",  "groupid": "0",  "description": "",  "confirmation": "",  "type": "0",  "execute_on": "1",  "hostid": "10001"  },  {  "scriptid": "2",  "name": "Traceroute",  "command": "/usr/bin/traceroute {HOST.CONN} 2>&1",  "host_access": "2",  "usrgrpid": "0",  "groupid": "0",  "description": "",  "confirmation": "",  "type": "0",  "execute_on": "1",  "hostid": "10001"  }  ]  },  "id": 1 }

源代码

CScript::getScriptsByHosts() 在frontends/php/include/classes/api/services/CScript.php