Skip to content

Commit ab14f2f

Browse files
committed
Add Datadog.configuration.appsec.rasp_enabled
1 parent a49a11c commit ab14f2f

File tree

3 files changed

+34
-0
lines changed

3 files changed

+34
-0
lines changed

lib/datadog/appsec.rb

+4
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,10 @@ def enabled?
1414
Datadog.configuration.appsec.enabled
1515
end
1616

17+
def rasp_enabled?
18+
Datadog.configuration.appsec.rasp_enabled
19+
end
20+
1721
def active_context
1822
Datadog::AppSec::Context.active
1923
end

lib/datadog/appsec/configuration/settings.rb

+6
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,12 @@ def self.add_settings!(base)
4949
end
5050
end
5151

52+
option :rasp_enabled do |o|
53+
o.type :bool, nilable: true
54+
o.env 'DD_APPSEC_RASP_ENABLED'
55+
o.default true
56+
end
57+
5258
option :ruleset do |o|
5359
o.env 'DD_APPSEC_RULES'
5460
o.default :recommended

spec/datadog/appsec/configuration/settings_spec.rb

+24
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,30 @@ def patcher
7777
end
7878
end
7979

80+
describe '#rasp_enabled' do
81+
subject(:rasp_enabled) { settings.appsec.rasp_enabled }
82+
83+
context 'when DD_APPSEC_RASP_ENABLED' do
84+
around do |example|
85+
ClimateControl.modify('DD_APPSEC_RASP_ENABLED' => rasp_enabled_env_var) do
86+
example.run
87+
end
88+
end
89+
90+
context 'is not defined' do
91+
let(:rasp_enabled_env_var) { nil }
92+
93+
it { is_expected.to eq true }
94+
end
95+
96+
context 'is defined' do
97+
let(:rasp_enabled_env_var) { 'false' }
98+
99+
it { is_expected.to eq(false) }
100+
end
101+
end
102+
end
103+
80104
describe '#instrument' do
81105
let(:registry) { {} }
82106
let(:integration_name) { :fake }

0 commit comments

Comments
 (0)