8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
# File 'lib/conan/cloud/aws/security_group.rb', line 8
def authorize_ip_permission(port_range, options = {})
requires :name
permission = {
'FromPort' => port_range.min,
'ToPort' => port_range.max,
'IpProtocol' => options[:ip_protocol] || 'tcp'
}
if options[:group_name]
grp_permitted = {'GroupName' => options[:group_name]}
grp_permitted['UserId'] = options[:user_id] if options[:user_id]
permission['Groups'] = [grp_permitted]
else
ip_permitted = {'CidrIp' => "0.0.0.0/0"}
if options[:cidr_ip]
ip_permitted = {'CidrIp' => options[:cidr_ip]}
end
permission['IpRanges'] = [ip_permitted]
end
connection.authorize_security_group_ingress(
name,
'IpPermissions' => [permission]
)
end
|