tenable-ruby 0.3.0 → 0.3.1
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/tenable-ruby.rb +15 -7
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f85505c10cdfc20f73c9c3206b6f98bb542be031
|
4
|
+
data.tar.gz: aa55193ae8ec7bd0093e920c964a9de427f9a7db
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b0cb391e04eba5f1bc14ef2d008dc56782371204373134479f5b4557f80569bcfcd10d7afe7495f23be1cc92132ae1f902e9ad197adfbb7c637ac42a43dd8a3d
|
7
|
+
data.tar.gz: aa21fee4bc24e24dcc3a86cb07c98b74dc7fd6576e1cd1a32adf75e5f36cf8045a47130d412e91a61e44e894587228917dcaca12eafadec66b17f349a8a012f5
|
data/lib/tenable-ruby.rb
CHANGED
@@ -493,13 +493,17 @@ module TenableRuby
|
|
493
493
|
#
|
494
494
|
# returns: JSON parsed object with scan info
|
495
495
|
def scan_quick_policy(policyname, name, opts = {}, foldername = nil, scanner_id = nil)
|
496
|
-
policies = list_policies['policies']
|
496
|
+
policies = list_policies['policies']
|
497
|
+
if policies.nil?
|
498
|
+
raise TenableRuby::Error::TenableError, "Tenable API request 'list_policies' responded with 'nil'"
|
499
|
+
end
|
500
|
+
selected_policies = policies.select do |pol|
|
497
501
|
pol['id'] == policyname or pol['name'] == policyname
|
498
502
|
end
|
499
|
-
if
|
500
|
-
|
503
|
+
if selected_policies.size == 0
|
504
|
+
raise TenableRuby::Error::TenableError, "Policy #{policyname} does not exist in this Tenable account"
|
501
505
|
end
|
502
|
-
policy =
|
506
|
+
policy = selected_policies.first
|
503
507
|
template_uuid = policy['template_uuid']
|
504
508
|
settings = Hash.new
|
505
509
|
settings.merge!(@quick_defaults)
|
@@ -507,11 +511,15 @@ module TenableRuby
|
|
507
511
|
settings['name'] = name
|
508
512
|
settings['policy_id'] = policy['id']
|
509
513
|
unless foldername.nil?
|
510
|
-
folders = list_folders['folders']
|
514
|
+
folders = list_folders['folders']
|
515
|
+
if folders.nil?
|
516
|
+
raise TenableRuby::Error::TenableError, "Tenable API request 'list_folders' responded with 'nil'"
|
517
|
+
end
|
518
|
+
selected_folders = folders.select do |folder|
|
511
519
|
folder['name'] == foldername
|
512
520
|
end
|
513
|
-
unless
|
514
|
-
settings['folder_id'] =
|
521
|
+
unless selected_folders.size == 0
|
522
|
+
settings['folder_id'] = selected_folders.first['id']
|
515
523
|
end
|
516
524
|
end
|
517
525
|
unless scanner_id.nil?
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: tenable-ruby
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Patrick Craston
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-06-
|
11
|
+
date: 2019-06-26 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: |-
|
14
14
|
Ruby library for communicating with the tenable.io API.
|