Sha256: 0040e253b1dceb0f2ed1c8db9e8d202de1e089b7c59901b411aa988e5f720619
Contents?: true
Size: 1.77 KB
Versions: 1
Compression:
Stored size: 1.77 KB
Contents
# frozen_string_literal: true module Mihari module Schemas module Emitters EmitterOptions = Dry::Schema.Params do optional(:retry_times).value(:integer).default(Mihari.config.retry_times) optional(:retry_interval).value(:integer).default(Mihari.config.retry_interval) optional(:retry_exponential_backoff).value(:bool).default(Mihari.config.retry_exponential_backoff) optional(:timeout).value(:integer) end Database = Dry::Schema.Params do required(:emitter).value(Types::String.enum("database")) optional(:options).hash(EmitterOptions) end MISP = Dry::Schema.Params do required(:emitter).value(Types::String.enum("misp")) optional(:url).value(:string) optional(:api_key).value(:string) optional(:options).hash(EmitterOptions) end TheHive = Dry::Schema.Params do required(:emitter).value(Types::String.enum("the_hive")) optional(:url).value(:string) optional(:api_key).value(:string) optional(:api_version).value(Types::String.enum("v4", "v5")).default("v4") optional(:options).hash(EmitterOptions) end Slack = Dry::Schema.Params do required(:emitter).value(Types::String.enum("slack")) optional(:webhook_url).value(:string) optional(:channel).value(:string) optional(:options).hash(EmitterOptions) end Webhook = Dry::Schema.Params do required(:emitter).value(Types::String.enum("webhook")) required(:url).value(:string) optional(:method).value(Types::HTTPRequestMethods).default("POST") optional(:headers).value(:hash).default({}) optional(:template).value(:string) optional(:options).hash(EmitterOptions) end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
mihari-5.5.0 | lib/mihari/schemas/emitter.rb |