Class: Google::Apis::ComputeBeta::FirewallPolicyRuleMatcher

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
lib/google/apis/compute_beta/classes.rb,
lib/google/apis/compute_beta/representations.rb,
lib/google/apis/compute_beta/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.



14315
14316
14317
# File 'lib/google/apis/compute_beta/classes.rb', line 14315

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>)


14180
14181
14182
# File 'lib/google/apis/compute_beta/classes.rb', line 14180

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>)


14187
14188
14189
# File 'lib/google/apis/compute_beta/classes.rb', line 14187

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>)


14193
14194
14195
# File 'lib/google/apis/compute_beta/classes.rb', line 14193

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)


14203
14204
14205
# File 'lib/google/apis/compute_beta/classes.rb', line 14203

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)


14208
14209
14210
# File 'lib/google/apis/compute_beta/classes.rb', line 14208

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)


14218
14219
14220
# File 'lib/google/apis/compute_beta/classes.rb', line 14218

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>)


14226
14227
14228
# File 'lib/google/apis/compute_beta/classes.rb', line 14226

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>)


14232
14233
14234
# File 'lib/google/apis/compute_beta/classes.rb', line 14232

def dest_threat_intelligences
  @dest_threat_intelligences
end

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

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



14237
14238
14239
# File 'lib/google/apis/compute_beta/classes.rb', line 14237

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>)


14243
14244
14245
# File 'lib/google/apis/compute_beta/classes.rb', line 14243

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>)


14250
14251
14252
# File 'lib/google/apis/compute_beta/classes.rb', line 14250

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>)


14256
14257
14258
# File 'lib/google/apis/compute_beta/classes.rb', line 14256

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)


14268
14269
14270
# File 'lib/google/apis/compute_beta/classes.rb', line 14268

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)


14273
14274
14275
# File 'lib/google/apis/compute_beta/classes.rb', line 14273

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)


14285
14286
14287
# File 'lib/google/apis/compute_beta/classes.rb', line 14285

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>)


14290
14291
14292
# File 'lib/google/apis/compute_beta/classes.rb', line 14290

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>)


14298
14299
14300
# File 'lib/google/apis/compute_beta/classes.rb', line 14298

def src_region_codes
  @src_region_codes
end

#src_secure_tagsArray<Google::Apis::ComputeBeta::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



14307
14308
14309
# File 'lib/google/apis/compute_beta/classes.rb', line 14307

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>)


14313
14314
14315
# File 'lib/google/apis/compute_beta/classes.rb', line 14313

def src_threat_intelligences
  @src_threat_intelligences
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



14320
14321
14322
14323
14324
14325
14326
14327
14328
14329
14330
14331
14332
14333
14334
14335
14336
14337
14338
14339
14340
# File 'lib/google/apis/compute_beta/classes.rb', line 14320

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