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.



13767
13768
13769
# File 'lib/google/apis/compute_beta/classes.rb', line 13767

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


13632
13633
13634
# File 'lib/google/apis/compute_beta/classes.rb', line 13632

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


13639
13640
13641
# File 'lib/google/apis/compute_beta/classes.rb', line 13639

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


13645
13646
13647
# File 'lib/google/apis/compute_beta/classes.rb', line 13645

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)


13655
13656
13657
# File 'lib/google/apis/compute_beta/classes.rb', line 13655

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)


13660
13661
13662
# File 'lib/google/apis/compute_beta/classes.rb', line 13660

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)


13670
13671
13672
# File 'lib/google/apis/compute_beta/classes.rb', line 13670

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


13678
13679
13680
# File 'lib/google/apis/compute_beta/classes.rb', line 13678

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


13684
13685
13686
# File 'lib/google/apis/compute_beta/classes.rb', line 13684

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



13689
13690
13691
# File 'lib/google/apis/compute_beta/classes.rb', line 13689

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


13695
13696
13697
# File 'lib/google/apis/compute_beta/classes.rb', line 13695

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


13702
13703
13704
# File 'lib/google/apis/compute_beta/classes.rb', line 13702

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


13708
13709
13710
# File 'lib/google/apis/compute_beta/classes.rb', line 13708

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)


13720
13721
13722
# File 'lib/google/apis/compute_beta/classes.rb', line 13720

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)


13725
13726
13727
# File 'lib/google/apis/compute_beta/classes.rb', line 13725

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)


13737
13738
13739
# File 'lib/google/apis/compute_beta/classes.rb', line 13737

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


13742
13743
13744
# File 'lib/google/apis/compute_beta/classes.rb', line 13742

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


13750
13751
13752
# File 'lib/google/apis/compute_beta/classes.rb', line 13750

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



13759
13760
13761
# File 'lib/google/apis/compute_beta/classes.rb', line 13759

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


13765
13766
13767
# File 'lib/google/apis/compute_beta/classes.rb', line 13765

def src_threat_intelligences
  @src_threat_intelligences
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



13772
13773
13774
13775
13776
13777
13778
13779
13780
13781
13782
13783
13784
13785
13786
13787
13788
13789
13790
13791
13792
# File 'lib/google/apis/compute_beta/classes.rb', line 13772

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