Class: Google::Apis::ComputeV1::FirewallPolicyRuleMatcher

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



11919
11920
11921
# File 'lib/google/apis/compute_v1/classes.rb', line 11919

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


11794
11795
11796
# File 'lib/google/apis/compute_v1/classes.rb', line 11794

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


11801
11802
11803
# File 'lib/google/apis/compute_v1/classes.rb', line 11801

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


11807
11808
11809
# File 'lib/google/apis/compute_v1/classes.rb', line 11807

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)


11817
11818
11819
# File 'lib/google/apis/compute_v1/classes.rb', line 11817

def dest_network_context
  @dest_network_context
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)


11827
11828
11829
# File 'lib/google/apis/compute_v1/classes.rb', line 11827

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


11835
11836
11837
# File 'lib/google/apis/compute_v1/classes.rb', line 11835

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


11841
11842
11843
# File 'lib/google/apis/compute_v1/classes.rb', line 11841

def dest_threat_intelligences
  @dest_threat_intelligences
end

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

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



11846
11847
11848
# File 'lib/google/apis/compute_v1/classes.rb', line 11846

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


11852
11853
11854
# File 'lib/google/apis/compute_v1/classes.rb', line 11852

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


11859
11860
11861
# File 'lib/google/apis/compute_v1/classes.rb', line 11859

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


11865
11866
11867
# File 'lib/google/apis/compute_v1/classes.rb', line 11865

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)


11877
11878
11879
# File 'lib/google/apis/compute_v1/classes.rb', line 11877

def src_network_context
  @src_network_context
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)


11889
11890
11891
# File 'lib/google/apis/compute_v1/classes.rb', line 11889

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


11894
11895
11896
# File 'lib/google/apis/compute_v1/classes.rb', line 11894

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


11902
11903
11904
# File 'lib/google/apis/compute_v1/classes.rb', line 11902

def src_region_codes
  @src_region_codes
end

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



11911
11912
11913
# File 'lib/google/apis/compute_v1/classes.rb', line 11911

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


11917
11918
11919
# File 'lib/google/apis/compute_v1/classes.rb', line 11917

def src_threat_intelligences
  @src_threat_intelligences
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



11924
11925
11926
11927
11928
11929
11930
11931
11932
11933
11934
11935
11936
11937
11938
11939
11940
11941
11942
# File 'lib/google/apis/compute_v1/classes.rb', line 11924

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