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.
-
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_results
function 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
summary
section 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