class Zantetsuken::Ruleset::Base
Base
class for rulesets. Defines the rules to be applied and the behavior for composing these rulesets into a single instance of ActionDispatch::ContentSecurityPolicy.
Attributes
base_uri[RW]
child_src[RW]
connect_src[RW]
default_src[RW]
font_src[RW]
form_action[RW]
frame_src[RW]
img_src[RW]
media_src[RW]
object_src[RW]
report_uri[RW]
script_src[RW]
style_src[RW]
Public Class Methods
new(**attributes)
click to toggle source
# File lib/zantetsuken/ruleset/base.rb, line 24 def initialize(**attributes) run_callbacks :initialize do assign_attributes(attributes) end end
ruleset(&block)
click to toggle source
# File lib/zantetsuken/ruleset/base.rb, line 19 def ruleset(&block) after_initialize(&block) end
Public Instance Methods
add(ruleset)
click to toggle source
# File lib/zantetsuken/ruleset/base.rb, line 30 def add(ruleset) tap do assign_attributes( to_h.merge(ruleset.to_h) do |_, existing_rules, new_rules| Array.wrap(existing_rules) | Array.wrap(new_rules) end ) end end
load?()
click to toggle source
# File lib/zantetsuken/ruleset/base.rb, line 50 def load? true end
to_actiondispatch_csp(policy)
click to toggle source
# File lib/zantetsuken/ruleset/base.rb, line 44 def to_actiondispatch_csp(policy) instance_values.each do |rule_name, attribute| policy.public_send(rule_name, *attribute) end end
to_h()
click to toggle source
# File lib/zantetsuken/ruleset/base.rb, line 40 def to_h instance_values.symbolize_keys end