-
Notifications
You must be signed in to change notification settings - Fork 6
OCSF Schema Support #55
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
75ea54c to
60603ea
Compare
| org.clojure/core.match {:mvn/version "1.0.0"} | ||
| prismatic/schema {:mvn/version "1.4.1"}} | ||
| :aliases {:test {:extra-paths ["test"] | ||
| prismatic/schema {:mvn/version "1.2.0"} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why the downgrade on the schema version?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
IIRC the project.clj and deps.edn were out of sync. Since we use the jar, I figured the project.clj wins.
|
This is brilliant!! Exactly what I needed! |
|
I was testing out the work on this PR and I get a strange error that I'm scratching my head on. I created a gist describing my findings... |
|
@marioaquino thanks. Looks like the Cisco schema uses a vector of singleton maps for |
|
Done. I didn't realize Cisco OCSF schemas were different. Might make sense to export them to https://github.com/frenchy64/ocsf-schema-export. |
marioaquino
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is fantastic and does exactly what I need! Great work, Ambrose!
|
Fantastic Ambrose! Let's get this merged and released. |
Includes support for OCSF schemas.
OCSF exposes a simple format for schemas at e.g., https://schema.ocsf.io/api/classes/account_change
flanders.ocsfconverts this format to flanders.A separate project includes all the OCSF schemas, which we depend on via its jar during dev: https://github.com/frenchy64/ocsf-schema-export
We don't need the mainline OCSF schemas for now, we will vendor the Cisco variants during deployments.
The README in this PR describes how to use all this to create Plumatic Schema or Malli from OCSF schemas.
The unit tests boots a local ocsf-server and fuzz tests Plumatic Schema and Malli conversions against samples from https://schema.ocsf.io/doc/index.html#/Sample%20Data