Class: Google::Apis::ComputeAlpha::FirewallPolicyRuleMatcher

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
lib/google/apis/compute_alpha/classes.rb,
lib/google/apis/compute_alpha/representations.rb,
lib/google/apis/compute_alpha/representations.rb

Overview

Represents a match condition that incoming traffic is evaluated against. Exactly one field must be specified.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ FirewallPolicyRuleMatcher

Returns a new instance of FirewallPolicyRuleMatcher.



16185
16186
16187
# File 'lib/google/apis/compute_alpha/classes.rb', line 16185

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#dest_address_groupsArray<String>

Address groups which should be matched against the traffic destination. Maximum number of destination address groups is 10. Corresponds to the JSON property destAddressGroups

Returns:

  • (Array<String>)


16050
16051
16052
# File 'lib/google/apis/compute_alpha/classes.rb', line 16050

def dest_address_groups
  @dest_address_groups
end

#dest_fqdnsArray<String>

Fully Qualified Domain Name (FQDN) which should be matched against traffic destination. Maximum number of destination fqdn allowed is 100. Corresponds to the JSON property destFqdns

Returns:

  • (Array<String>)


16057
16058
16059
# File 'lib/google/apis/compute_alpha/classes.rb', line 16057

def dest_fqdns
  @dest_fqdns
end

#dest_ip_rangesArray<String>

CIDR IP address range. Maximum number of destination CIDR IP ranges allowed is 5000. Corresponds to the JSON property destIpRanges

Returns:

  • (Array<String>)


16063
16064
16065
# File 'lib/google/apis/compute_alpha/classes.rb', line 16063

def dest_ip_ranges
  @dest_ip_ranges
end

#dest_network_contextString

Network context of the traffic destination. Allowed values are:

  • UNSPECIFIED
  • INTERNET
  • NON_INTERNET Corresponds to the JSON property destNetworkContext

Returns:

  • (String)


16073
16074
16075
# File 'lib/google/apis/compute_alpha/classes.rb', line 16073

def dest_network_context
  @dest_network_context
end

#dest_network_scopeString

Network scope of the traffic destination. Corresponds to the JSON property destNetworkScope

Returns:

  • (String)


16078
16079
16080
# File 'lib/google/apis/compute_alpha/classes.rb', line 16078

def dest_network_scope
  @dest_network_scope
end

#dest_network_typeString

Network type of the traffic destination. Allowed values are:

  • UNSPECIFIED
  • INTERNET
  • NON_INTERNET Corresponds to the JSON property destNetworkType

Returns:

  • (String)


16088
16089
16090
# File 'lib/google/apis/compute_alpha/classes.rb', line 16088

def dest_network_type
  @dest_network_type
end

#dest_region_codesArray<String>

Region codes whose IP addresses will be used to match for destination of traffic. Should be specified as 2 letter country code defined as per ISO 3166 alpha-2 country codes. ex."US" Maximum number of dest region codes allowed is 5000. Corresponds to the JSON property destRegionCodes

Returns:

  • (Array<String>)


16096
16097
16098
# File 'lib/google/apis/compute_alpha/classes.rb', line 16096

def dest_region_codes
  @dest_region_codes
end

#dest_threat_intelligencesArray<String>

Names of Network Threat Intelligence lists. The IPs in these lists will be matched against traffic destination. Corresponds to the JSON property destThreatIntelligences

Returns:

  • (Array<String>)


16102
16103
16104
# File 'lib/google/apis/compute_alpha/classes.rb', line 16102

def dest_threat_intelligences
  @dest_threat_intelligences
end

#layer4_configsArray<Google::Apis::ComputeAlpha::FirewallPolicyRuleMatcherLayer4Config>

Pairs of IP protocols and ports that the rule should match. Corresponds to the JSON property layer4Configs



16107
16108
16109
# File 'lib/google/apis/compute_alpha/classes.rb', line 16107

def layer4_configs
  @layer4_configs
end

#src_address_groupsArray<String>

Address groups which should be matched against the traffic source. Maximum number of source address groups is 10. Corresponds to the JSON property srcAddressGroups

Returns:

  • (Array<String>)


16113
16114
16115
# File 'lib/google/apis/compute_alpha/classes.rb', line 16113

def src_address_groups
  @src_address_groups
end

#src_fqdnsArray<String>

Fully Qualified Domain Name (FQDN) which should be matched against traffic source. Maximum number of source fqdn allowed is 100. Corresponds to the JSON property srcFqdns

Returns:

  • (Array<String>)


16120
16121
16122
# File 'lib/google/apis/compute_alpha/classes.rb', line 16120

def src_fqdns
  @src_fqdns
end

#src_ip_rangesArray<String>

CIDR IP address range. Maximum number of source CIDR IP ranges allowed is 5000. Corresponds to the JSON property srcIpRanges

Returns:

  • (Array<String>)


16126
16127
16128
# File 'lib/google/apis/compute_alpha/classes.rb', line 16126

def src_ip_ranges
  @src_ip_ranges
end

#src_network_contextString

Network context of the traffic source. Allowed values are:

  • UNSPECIFIED
  • INTERNET
  • INTRA_VPC
  • NON_INTERNET
  • VPC_NETWORKS Corresponds to the JSON property srcNetworkContext

Returns:

  • (String)


16138
16139
16140
# File 'lib/google/apis/compute_alpha/classes.rb', line 16138

def src_network_context
  @src_network_context
end

#src_network_scopeString

Network scope of the traffic source. Corresponds to the JSON property srcNetworkScope

Returns:

  • (String)


16143
16144
16145
# File 'lib/google/apis/compute_alpha/classes.rb', line 16143

def src_network_scope
  @src_network_scope
end

#src_network_typeString

Network type of the traffic source. Allowed values are:

  • UNSPECIFIED
  • INTERNET
  • INTRA_VPC
  • NON_INTERNET
  • VPC_NETWORKS Corresponds to the JSON property srcNetworkType

Returns:

  • (String)


16155
16156
16157
# File 'lib/google/apis/compute_alpha/classes.rb', line 16155

def src_network_type
  @src_network_type
end

#src_networksArray<String>

Networks of the traffic source. It can be either a full or partial url. Corresponds to the JSON property srcNetworks

Returns:

  • (Array<String>)


16160
16161
16162
# File 'lib/google/apis/compute_alpha/classes.rb', line 16160

def src_networks
  @src_networks
end

#src_region_codesArray<String>

Region codes whose IP addresses will be used to match for source of traffic. Should be specified as 2 letter country code defined as per ISO 3166 alpha-2 country codes. ex."US" Maximum number of source region codes allowed is 5000. Corresponds to the JSON property srcRegionCodes

Returns:

  • (Array<String>)


16168
16169
16170
# File 'lib/google/apis/compute_alpha/classes.rb', line 16168

def src_region_codes
  @src_region_codes
end

#src_secure_tagsArray<Google::Apis::ComputeAlpha::FirewallPolicyRuleSecureTag>

List of secure tag values, which should be matched at the source of the traffic. For INGRESS rule, if all the srcSecureTag are INEFFECTIVE, and there is no srcIpRange, this rule will be ignored. Maximum number of source tag values allowed is 256. Corresponds to the JSON property srcSecureTags



16177
16178
16179
# File 'lib/google/apis/compute_alpha/classes.rb', line 16177

def src_secure_tags
  @src_secure_tags
end

#src_threat_intelligencesArray<String>

Names of Network Threat Intelligence lists. The IPs in these lists will be matched against traffic source. Corresponds to the JSON property srcThreatIntelligences

Returns:

  • (Array<String>)


16183
16184
16185
# File 'lib/google/apis/compute_alpha/classes.rb', line 16183

def src_threat_intelligences
  @src_threat_intelligences
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



16190
16191
16192
16193
16194
16195
16196
16197
16198
16199
16200
16201
16202
16203
16204
16205
16206
16207
16208
16209
16210
# File 'lib/google/apis/compute_alpha/classes.rb', line 16190

def update!(**args)
  @dest_address_groups = args[:dest_address_groups] if args.key?(:dest_address_groups)
  @dest_fqdns = args[:dest_fqdns] if args.key?(:dest_fqdns)
  @dest_ip_ranges = args[:dest_ip_ranges] if args.key?(:dest_ip_ranges)
  @dest_network_context = args[:dest_network_context] if args.key?(:dest_network_context)
  @dest_network_scope = args[:dest_network_scope] if args.key?(:dest_network_scope)
  @dest_network_type = args[:dest_network_type] if args.key?(:dest_network_type)
  @dest_region_codes = args[:dest_region_codes] if args.key?(:dest_region_codes)
  @dest_threat_intelligences = args[:dest_threat_intelligences] if args.key?(:dest_threat_intelligences)
  @layer4_configs = args[:layer4_configs] if args.key?(:layer4_configs)
  @src_address_groups = args[:src_address_groups] if args.key?(:src_address_groups)
  @src_fqdns = args[:src_fqdns] if args.key?(:src_fqdns)
  @src_ip_ranges = args[:src_ip_ranges] if args.key?(:src_ip_ranges)
  @src_network_context = args[:src_network_context] if args.key?(:src_network_context)
  @src_network_scope = args[:src_network_scope] if args.key?(:src_network_scope)
  @src_network_type = args[:src_network_type] if args.key?(:src_network_type)
  @src_networks = args[:src_networks] if args.key?(:src_networks)
  @src_region_codes = args[:src_region_codes] if args.key?(:src_region_codes)
  @src_secure_tags = args[:src_secure_tags] if args.key?(:src_secure_tags)
  @src_threat_intelligences = args[:src_threat_intelligences] if args.key?(:src_threat_intelligences)
end