{
  "name": "Get USB Devices",
  "description": "Find USB devices connected to this machine",
  "hosts": ["local", "remote"],
  "functions": {
    "run": {
      "command": "Get-WMIObject Win32_USBControllerDevice |%{[wmi]($_.Dependent)} | Select Name, Manufacturer, PNPClass, DeviceID",
      "method": "invoke",
      "json": true,
      "result": {
        "filter": {
          "file": "allowedusb.json",
          "pass": "Authorized device",
          "fail": "Device needs manual approval"
        },
        "label": "Name",
        "data": [
          {"labelled": "PNPClass"},
          {"labelled": "Manufacturer"},
          {"labelled": "DeviceID"}
        ]
      }
    }
  }
}