aws_security_viz 0.1.1 → 0.1.2.pre.alpha.pre.58

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,15 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 179415d033ca7ec08bbdb1016dd4f4fa6e42c837
4
- data.tar.gz: 200ec6a3e8583a8ffc2a8f53e8b92b0223bc55a2
2
+ !binary "U0hBMQ==":
3
+ metadata.gz: !binary |-
4
+ NmYxNzdmYTg5OTc1ODk0N2UwNzgwOWYwZTI5ZTdjZmZiNDg0MTk0Mg==
5
+ data.tar.gz: !binary |-
6
+ NWY5NTNkOWU4NDNmNjg5OWRhMjE5YjkxNzZlMzA0OGI1NWYxZWE0NQ==
5
7
  SHA512:
6
- metadata.gz: 978d3aa24500112ebf4e14edebd03a4a343f5d25dd2079a9631e5764fd12eb938973ef6ba112e69bd071c1dd3da4adcc19150b257dc908f0b30103bad5bbaec7
7
- data.tar.gz: 3ffa243f91f6d97740767afbe845755d95327e74784ec6f236f6c9a1a466e1768c27f3595154dafafe9194dc9b555791995386b163ab921405adf92266f0733e
8
+ metadata.gz: !binary |-
9
+ NDJhODY3ZDBjYzNlMjE2NGFjMGYwNjQ0YWI1OTZjMTkxNGIzYjczMjllOGY2
10
+ N2EwN2IxNGE1ZDZiZDZiZTE5MGUxYjczNTZhNjU4MTBkNTk1YWM0MGU2MDJl
11
+ NDNmMTE1YWE4ZDE3ZmMyYmQ3MDFlMjRmMGM0ZjMyZDkyNThkOGI=
12
+ data.tar.gz: !binary |-
13
+ Y2IyZDZkZDhjMDJkMmYyMjI2YzBkYzk0NmVkZGEzMDhkMDI3NTI3Mzg5MDgy
14
+ MjZmMmRhMGM2MGU4MjA1MTlkOTg2OTYyZjkzMDM3NDIyY2VjZDM0YzdmY2I2
15
+ YTg2ZjBkOTIwYTM1OGMwMzIzNGIzNDk1NjQzMDU1NzdmZTMxYzE=
data/.gitignore CHANGED
@@ -31,3 +31,4 @@
31
31
  opts.yml
32
32
 
33
33
  .vagrant
34
+ Gemfile.lock
@@ -18,7 +18,9 @@ class IpPermission
18
18
  end
19
19
 
20
20
  def cidr_traffic
21
- @ip.ip_ranges.collect { |range|
21
+ @ip.ip_ranges
22
+ .select { |range| !@exclusions.match(range)}
23
+ .collect { |range|
22
24
  Traffic.new(@ingress, range.cidr_ip, @group.name, port_range)
23
25
  }
24
26
  end
data/lib/opts.yml.sample CHANGED
@@ -1,10 +1,11 @@
1
1
  ---
2
2
  :format: dot
3
- :exclude:
4
- - .*test.*
5
- - .*perf.*
3
+ #:exclude:
4
+ #- .*test.*
5
+ #- .*perf.*
6
+ #- .*0.0.0.0/32.*
6
7
  :groups:
7
- '0.0.0.0/0': '*'
8
+ # '0.0.0.0/0': '*'
8
9
  'x.x.x.x/0': 'External'
9
10
  'y.y.y.y/0': 'External'
10
11
 
data/lib/provider/ec2.rb CHANGED
@@ -72,6 +72,10 @@ module Ec2
72
72
  def cidr_ip
73
73
  @range['cidrIp']
74
74
  end
75
+
76
+ def to_str
77
+ cidr_ip
78
+ end
75
79
  end
76
80
 
77
81
  class IpPermissionGroup
data/lib/provider/json.rb CHANGED
@@ -78,6 +78,10 @@ module Json
78
78
  def cidr_ip
79
79
  @range['CidrIp']
80
80
  end
81
+
82
+ def to_str
83
+ cidr_ip
84
+ end
81
85
  end
82
86
 
83
87
  class IpPermissionGroup
data/lib/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module AwsSecurityViz
2
- VERSION = "0.1.1"
2
+ VERSION = "0.1.2"
3
3
  end
@@ -99,6 +99,21 @@ describe VisualizeAws do
99
99
  end
100
100
  end
101
101
  context "filter" do
102
+ it 'include cidr which do not match the pattern' do
103
+ expect(@ec2).to receive(:security_groups).and_return(
104
+ [
105
+ group('Web', cidr_ingress('22', '127.0.0.1/32')),
106
+ group('Db', cidr_ingress('22', '192.0.1.1/32'))
107
+ ])
108
+
109
+ opts = {:exclude => ['127.*']}
110
+ graph = VisualizeAws.new(AwsConfig.new(opts)).build
111
+
112
+ expect(graph.each_edge.size).to eq(1)
113
+ expect(graph).to have_edge('192.0.1.1/32' => 'Db')
114
+ expect(graph).to_not have_edge('127.0.0.1/32' => 'Web')
115
+ end
116
+
102
117
  it 'include groups which do not match the pattern' do
103
118
  expect(@ec2).to receive(:security_groups).and_return(
104
119
  [
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws_security_viz
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2.pre.alpha.pre.58
5
5
  platform: ruby
6
6
  authors:
7
7
  - Anay Nayak
@@ -14,126 +14,126 @@ dependencies:
14
14
  name: bundler
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ~>
18
18
  - !ruby/object:Gem::Version
19
19
  version: '1.9'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - "~>"
24
+ - - ~>
25
25
  - !ruby/object:Gem::Version
26
26
  version: '1.9'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rake
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - "~>"
31
+ - - ~>
32
32
  - !ruby/object:Gem::Version
33
33
  version: 10.4.2
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - "~>"
38
+ - - ~>
39
39
  - !ruby/object:Gem::Version
40
40
  version: 10.4.2
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rspec
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - "~>"
45
+ - - ~>
46
46
  - !ruby/object:Gem::Version
47
47
  version: 3.3.0
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - "~>"
52
+ - - ~>
53
53
  - !ruby/object:Gem::Version
54
54
  version: 3.3.0
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: ruby-graphviz
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - "~>"
59
+ - - ~>
60
60
  - !ruby/object:Gem::Version
61
61
  version: 1.2.2
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - "~>"
66
+ - - ~>
67
67
  - !ruby/object:Gem::Version
68
68
  version: 1.2.2
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: fog-aws
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - "~>"
73
+ - - ~>
74
74
  - !ruby/object:Gem::Version
75
75
  version: 0.7.6
76
76
  type: :runtime
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - "~>"
80
+ - - ~>
81
81
  - !ruby/object:Gem::Version
82
82
  version: 0.7.6
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: unf
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
- - - "~>"
87
+ - - ~>
88
88
  - !ruby/object:Gem::Version
89
89
  version: 0.1.4
90
90
  type: :runtime
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
- - - "~>"
94
+ - - ~>
95
95
  - !ruby/object:Gem::Version
96
96
  version: 0.1.4
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: json
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
- - - "~>"
101
+ - - ~>
102
102
  - !ruby/object:Gem::Version
103
103
  version: 1.8.3
104
104
  type: :runtime
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
- - - "~>"
108
+ - - ~>
109
109
  - !ruby/object:Gem::Version
110
110
  version: 1.8.3
111
111
  - !ruby/object:Gem::Dependency
112
112
  name: trollop
113
113
  requirement: !ruby/object:Gem::Requirement
114
114
  requirements:
115
- - - "~>"
115
+ - - ~>
116
116
  - !ruby/object:Gem::Version
117
117
  version: 2.1.2
118
118
  type: :runtime
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
121
121
  requirements:
122
- - - "~>"
122
+ - - ~>
123
123
  - !ruby/object:Gem::Version
124
124
  version: 2.1.2
125
125
  - !ruby/object:Gem::Dependency
126
126
  name: organic_hash
127
127
  requirement: !ruby/object:Gem::Requirement
128
128
  requirements:
129
- - - "~>"
129
+ - - ~>
130
130
  - !ruby/object:Gem::Version
131
131
  version: 1.0.2
132
132
  type: :runtime
133
133
  prerelease: false
134
134
  version_requirements: !ruby/object:Gem::Requirement
135
135
  requirements:
136
- - - "~>"
136
+ - - ~>
137
137
  - !ruby/object:Gem::Version
138
138
  version: 1.0.2
139
139
  description: Provides a quick mechanism to visualize your EC2 security groups in multiple
@@ -144,8 +144,8 @@ executables:
144
144
  extensions: []
145
145
  extra_rdoc_files: []
146
146
  files:
147
- - ".gitignore"
148
- - ".travis.yml"
147
+ - .gitignore
148
+ - .travis.yml
149
149
  - Gemfile
150
150
  - LICENSE.md
151
151
  - README.md
@@ -186,17 +186,17 @@ require_paths:
186
186
  - lib
187
187
  required_ruby_version: !ruby/object:Gem::Requirement
188
188
  requirements:
189
- - - ">="
189
+ - - ! '>='
190
190
  - !ruby/object:Gem::Version
191
191
  version: 2.0.0
192
192
  required_rubygems_version: !ruby/object:Gem::Requirement
193
193
  requirements:
194
- - - ">="
194
+ - - ! '>'
195
195
  - !ruby/object:Gem::Version
196
- version: '0'
196
+ version: 1.3.1
197
197
  requirements: []
198
198
  rubyforge_project:
199
- rubygems_version: 2.2.2
199
+ rubygems_version: 2.4.5
200
200
  signing_key:
201
201
  specification_version: 4
202
202
  summary: Visualize your aws security groups