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.



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

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


16020
16021
16022
# File 'lib/google/apis/compute_alpha/classes.rb', line 16020

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


16027
16028
16029
# File 'lib/google/apis/compute_alpha/classes.rb', line 16027

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


16033
16034
16035
# File 'lib/google/apis/compute_alpha/classes.rb', line 16033

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)


16043
16044
16045
# File 'lib/google/apis/compute_alpha/classes.rb', line 16043

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)


16048
16049
16050
# File 'lib/google/apis/compute_alpha/classes.rb', line 16048

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)


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

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


16066
16067
16068
# File 'lib/google/apis/compute_alpha/classes.rb', line 16066

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


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

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



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

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


16083
16084
16085
# File 'lib/google/apis/compute_alpha/classes.rb', line 16083

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


16090
16091
16092
# File 'lib/google/apis/compute_alpha/classes.rb', line 16090

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


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

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)


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

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)


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

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)


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

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


16130
16131
16132
# File 'lib/google/apis/compute_alpha/classes.rb', line 16130

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


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

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



16147
16148
16149
# File 'lib/google/apis/compute_alpha/classes.rb', line 16147

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


16153
16154
16155
# File 'lib/google/apis/compute_alpha/classes.rb', line 16153

def src_threat_intelligences
  @src_threat_intelligences
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



16160
16161
16162
16163
16164
16165
16166
16167
16168
16169
16170
16171
16172
16173
16174
16175
16176
16177
16178
16179
16180
# File 'lib/google/apis/compute_alpha/classes.rb', line 16160

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