Class: Hedra::Scorer
- Inherits:
-
Object
- Object
- Hedra::Scorer
- Defined in:
- lib/hedra/scorer.rb
Constant Summary collapse
- HEADER_WEIGHTS =
{ 'content-security-policy' => 25, 'strict-transport-security' => 25, 'x-frame-options' => 15, 'x-content-type-options' => 10, 'referrer-policy' => 10, 'permissions-policy' => 5, 'cross-origin-opener-policy' => 5, 'cross-origin-embedder-policy' => 3, 'cross-origin-resource-policy' => 2 }.freeze
- SEVERITY_PENALTIES =
{ critical: 20, warning: 10, info: 5 }.freeze
Instance Method Summary collapse
Instance Method Details
#calculate(headers, findings) ⇒ Object
23 24 25 26 27 28 29 |
# File 'lib/hedra/scorer.rb', line 23 def calculate(headers, findings) base_score = calculate_base_score(headers) penalty = calculate_penalty(findings) score = [base_score - penalty, 0].max score.round end |