Replies: 3 comments
-
|
Florian's work on generic provider model |
Beta Was this translation helpful? Give feedback.
-
|
Currently this schema supports only JSON responses - so would not work with HTML or raw data responses. |
Beta Was this translation helpful? Give feedback.
-
|
Another TODO item for this work - create a pub/sub mechanism so that TI providers can register to receive notification about settings being re-read. Currently they have no knowledge of this so stay with old settings. This means if you add a TI provider to your settings and refresh, it's not loaded unless you a) dig into the code a lot to find the pivot TI provider instance b) restart the kernel. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Two of our (recently) most requested features are:
This proposal addresses (at least partly) these two items.
Rationale for Config-based TI and Context providers
HTTP-based context providers have a very regular pattern:
1 and 2 can easily be specified in a configuration schema in JSON or YAML.
3 has limited range of possibilities (key in headers, query string, etc.) and we already handle these variations declaratively
4 is a bit more challenging but could be handled with a mini-parsing language expressed in yaml/json
We'd like to avoid consuming and exec-ing or eval-ing code from YAML files.
Proposal
Definitions can be:
a. Included in the msticpy package
- These would be stored as yaml files in mp/resources
- A yaml-based TI providers would load/instantiate if there is an entry for it in msticpyconfig.yaml
b. User-defined providers
- YAML file definition
- Config entry in msticpyconfig.yaml. The entry would contain either
- a path to provider definition yaml file
- a key to a provider definition stored inside of msticpyconfig.yaml
parse_resultsfunction using logic from definitionA couple of things that we should add to this work:
Definition Format
This is an overly wordy definition which includes a bunch of optional items that wouldn't be
needed in a typical definition. Just used to define parsing logic. There's a shorter definition
for OTX at the end of the doc.
Note - the entire
summarysection is optional.Other items to consider
(note: this would probably be different for each provider)
Appendix
More typical example AlienVault OTX
Beta Was this translation helpful? Give feedback.
All reactions