aikido-zen 1.5.0-aarch64-linux → 1.5.1-aarch64-linux
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/aikido/zen/agent.rb +2 -10
- data/lib/aikido/zen/api_stream.rb +1 -26
- data/lib/aikido/zen/config.rb +0 -15
- data/lib/aikido/zen/context.rb +4 -2
- data/lib/aikido/zen/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 419c4218ef399b4771e16a5dd23ff900d183cbbe68d27ce4ff5bb05911334ecf
|
|
4
|
+
data.tar.gz: 0433d63e6456458c516f277e477f030b3359e486f897f711337b03e48b144789
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 7f229bf62bd38b3f5c33fba7fa03dd0b6420c3dc6b3186675d52fdb27cad3f56b6d7d743d6ebd2e9b8c5dc4e4777dd215f440d21ced57c620467ab68c474de7b
|
|
7
|
+
data.tar.gz: e901f43ec597884c0db569ad753bb66d471d88b6aad11188129b6c4ffb267c8d6433e4f776792269fbb29678cf4d7b4b871ee18d86fcbeb6363a9f0e93532849
|
data/lib/aikido/zen/agent.rb
CHANGED
|
@@ -80,16 +80,8 @@ module Aikido::Zen
|
|
|
80
80
|
end
|
|
81
81
|
|
|
82
82
|
if @config.realtime_settings_updates_enabled?
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
@api_stream.start!
|
|
86
|
-
|
|
87
|
-
# Use the realtime setting updates endpoint when polling to check
|
|
88
|
-
# whether settings should be fetched.
|
|
89
|
-
@api_client.should_fetch_settings_endpoint = @config.realtime_settings_updates_endpoint
|
|
90
|
-
else
|
|
91
|
-
@config.logger.warn("Can't reach #{Aikido::Zen.config.realtime_settings_updates_endpoint}, make sure it's in your outbound firewall allowlist. Realtime config updates won't be available, switched to polling.")
|
|
92
|
-
end
|
|
83
|
+
@api_stream.handle("config-updated") { |event| settings_updated(event) }
|
|
84
|
+
@api_stream.start!
|
|
93
85
|
end
|
|
94
86
|
|
|
95
87
|
poll_for_setting_updates
|
|
@@ -27,7 +27,7 @@ module Aikido::Zen
|
|
|
27
27
|
@thread = nil
|
|
28
28
|
@http = nil
|
|
29
29
|
|
|
30
|
-
endpoint = @config.
|
|
30
|
+
endpoint = @config.realtime_endpoint
|
|
31
31
|
|
|
32
32
|
@host = endpoint.host
|
|
33
33
|
@port = endpoint.port
|
|
@@ -37,31 +37,6 @@ module Aikido::Zen
|
|
|
37
37
|
@handlers = Concurrent::Array.new
|
|
38
38
|
end
|
|
39
39
|
|
|
40
|
-
# @return [Boolean] whether we could connect to the realtime endpoint
|
|
41
|
-
def can_connect?
|
|
42
|
-
http = Net::HTTP.new(@host, @port)
|
|
43
|
-
http.use_ssl = @use_ssl
|
|
44
|
-
http.open_timeout = 5
|
|
45
|
-
http.write_timeout = 5
|
|
46
|
-
http.read_timeout = 5
|
|
47
|
-
http.max_retries = 0
|
|
48
|
-
|
|
49
|
-
request = Net::HTTP::Get.new("/config")
|
|
50
|
-
request["Authorization"] = @token
|
|
51
|
-
|
|
52
|
-
begin
|
|
53
|
-
http.request(request)
|
|
54
|
-
|
|
55
|
-
return true
|
|
56
|
-
rescue Timeout::Error, SocketError, IOError, SystemCallError, OpenSSL::OpenSSLError => err
|
|
57
|
-
@config.logger.debug("Error probing realtime endpoint: #{err.class}: #{err.message}")
|
|
58
|
-
rescue => err
|
|
59
|
-
@config.logger.error("Error probing realtime endpoint: #{err.class}: #{err.message}")
|
|
60
|
-
end
|
|
61
|
-
|
|
62
|
-
false
|
|
63
|
-
end
|
|
64
|
-
|
|
65
40
|
def running?
|
|
66
41
|
@running.true?
|
|
67
42
|
end
|
data/lib/aikido/zen/config.rb
CHANGED
|
@@ -221,10 +221,6 @@ module Aikido::Zen
|
|
|
221
221
|
attr_accessor :realtime_settings_updates_enabled
|
|
222
222
|
alias_method :realtime_settings_updates_enabled?, :realtime_settings_updates_enabled
|
|
223
223
|
|
|
224
|
-
# @return [URI] The HTTP host for realtime settings updates.
|
|
225
|
-
# Defaults to +https://zen.aikido.dev+.
|
|
226
|
-
attr_reader :realtime_settings_updates_endpoint
|
|
227
|
-
|
|
228
224
|
def initialize
|
|
229
225
|
self.insert_middleware_after = ::ActionDispatch::RemoteIp
|
|
230
226
|
self.disabled = read_boolean_from_env(ENV.fetch("AIKIDO_DISABLE", false)) || read_boolean_from_env(ENV.fetch("AIKIDO_DISABLED", false))
|
|
@@ -271,7 +267,6 @@ module Aikido::Zen
|
|
|
271
267
|
self.idor_excluded_table_names = []
|
|
272
268
|
self.idor_max_cache_entries = 1000
|
|
273
269
|
self.realtime_settings_updates_enabled = false
|
|
274
|
-
self.realtime_settings_updates_endpoint = ENV.fetch("AIKIDO_REALTIME_SETTINGS_UPDATES_ENDPOINT", DEFAULT_REALTIME_SETTINGS_UPDATES_BASE_URL)
|
|
275
270
|
end
|
|
276
271
|
|
|
277
272
|
# Set the base URL for API requests.
|
|
@@ -288,13 +283,6 @@ module Aikido::Zen
|
|
|
288
283
|
@realtime_endpoint = URI(url)
|
|
289
284
|
end
|
|
290
285
|
|
|
291
|
-
# Set the base URL for the realtime settings updates feature.
|
|
292
|
-
#
|
|
293
|
-
# @param url [String, URI]
|
|
294
|
-
def realtime_settings_updates_endpoint=(url)
|
|
295
|
-
@realtime_settings_updates_endpoint = URI(url)
|
|
296
|
-
end
|
|
297
|
-
|
|
298
286
|
# Set the logger and configure its severity level according to agent's debug mode
|
|
299
287
|
# @param logger [::Logger]
|
|
300
288
|
def logger=(logger)
|
|
@@ -364,9 +352,6 @@ module Aikido::Zen
|
|
|
364
352
|
# @!visibility private
|
|
365
353
|
DEFAULT_RUNTIME_BASE_URL = "https://runtime.aikido.dev"
|
|
366
354
|
|
|
367
|
-
# @!visibility private
|
|
368
|
-
DEFAULT_REALTIME_SETTINGS_UPDATES_BASE_URL = "https://zen.aikido.dev"
|
|
369
|
-
|
|
370
355
|
# @!visibility private
|
|
371
356
|
DEFAULT_JSON_ENCODER = JSON.method(:dump)
|
|
372
357
|
|
data/lib/aikido/zen/context.rb
CHANGED
|
@@ -98,7 +98,9 @@ module Aikido::Zen
|
|
|
98
98
|
|
|
99
99
|
# @!visibility private
|
|
100
100
|
def extract_payloads_from(data, source_type, prefix = nil)
|
|
101
|
-
if data.
|
|
101
|
+
if data.is_a?(String)
|
|
102
|
+
[Payload.new(data, source_type, prefix.to_s)]
|
|
103
|
+
elsif data.respond_to?(:to_hash)
|
|
102
104
|
data.to_hash.flat_map do |key, value|
|
|
103
105
|
extract_payloads_from(value, source_type, [prefix, key].compact.join("."))
|
|
104
106
|
end
|
|
@@ -125,7 +127,7 @@ module Aikido::Zen
|
|
|
125
127
|
|
|
126
128
|
payloads
|
|
127
129
|
else
|
|
128
|
-
[
|
|
130
|
+
[]
|
|
129
131
|
end
|
|
130
132
|
end
|
|
131
133
|
|
data/lib/aikido/zen/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: aikido-zen
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.5.
|
|
4
|
+
version: 1.5.1
|
|
5
5
|
platform: aarch64-linux
|
|
6
6
|
authors:
|
|
7
7
|
- Aikido Security
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2026-
|
|
11
|
+
date: 2026-07-08 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: concurrent-ruby
|