tenable-ruby 0.3.0 → 0.3.1
Sign up to get free protection for your applications and to get access to all the features.
- 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.
|