Files
Guillaume BOURGEOIS 2475c4b56e feat(stormshield): new Stormshield SNS firewall integration (French vendor)
Stormshield SNS API, 5 commands: add/remove block host-group member (containment),
list hosts, monitor query. Session (login) auth, stdlib-only. py_compile clean.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-12 16:07:38 +02:00

76 lines
2.7 KiB
YAML

id: stormshield
name: Stormshield Network Security
version: 1.0.0
description: "Stormshield Network Security (SNS API) — firewall containment: authenticate, add or remove an IP from a block host-group object, and run a monitor query. Session-based authentication; stdlib-only, no extra Python dependencies. (French vendor.)"
changelog: "1.0.0 — Initial release: add/remove block-group member, list host objects, monitor query."
category: network
# Per-instance configuration. Each command logs in (POST /api/auth/login) and
# reuses the returned session token for the request.
config_schema:
properties:
base_url:
type: string
description: "SNS appliance URL (e.g. https://sns.example.com)"
username:
type: string
description: "Admin username"
password:
type: string
description: "Admin password"
x-soar-sensitive: true
insecure:
type: boolean
description: "Trust any TLS certificate (not secure)"
default: false
required:
- base_url
- username
- password
commands:
- id: add_block_group_member
name: stormshield-add-block-group-member
description: "Add an IP/host object to a block host-group (referenced by a filter rule)."
inputs_schema:
properties:
group: { type: string, description: "Host-group object name (e.g. RIPOSTE_BLOCK)" }
host: { type: string, description: "Host object name or IP to add" }
required: [group, host]
outputs_schema: { properties: {} }
- id: remove_block_group_member
name: stormshield-remove-block-group-member
description: "Remove a host from a block host-group."
inputs_schema:
properties:
group: { type: string, description: "Host-group object name" }
host: { type: string, description: "Host object name or IP to remove" }
required: [group, host]
outputs_schema: { properties: {} }
- id: list_hosts
name: stormshield-list-hosts
description: "List host objects."
risk: read
inputs_schema:
properties: {}
required: []
outputs_schema: { properties: {} }
- id: monitor_query
name: stormshield-monitor-query
description: "Run a monitor command (e.g. MONITOR HOST) and return its result."
risk: read
inputs_schema:
properties:
command: { type: string, description: "SNS monitor command (e.g. 'MONITOR HOST')" }
required: [command]
outputs_schema: { properties: {} }
- id: test_connection
name: stormshield-test-connection
description: "Verify connectivity and credentials by logging in (used by the Test button)."
risk: read
inputs_schema:
properties: {}
required: []
outputs_schema: { properties: {} }