Class: Google::Apis::ComputeAlpha::NetworkPolicyTrafficClassificationRule
- Inherits:
-
Object
- Object
- Google::Apis::ComputeAlpha::NetworkPolicyTrafficClassificationRule
- 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 traffic classification rule that describes one or more match conditions along with the action to be taken when traffic matches this condition.
Instance Attribute Summary collapse
-
#action ⇒ Google::Apis::ComputeAlpha::NetworkPolicyTrafficClassificationRuleAction
The Action to perform when the client connection triggers the rule.
-
#description ⇒ String
An optional description for this resource.
-
#disabled ⇒ Boolean
(also: #disabled?)
Denotes whether the network policy rule is disabled.
-
#kind ⇒ String
[Output only] Type of the resource.
-
#match ⇒ Google::Apis::ComputeAlpha::NetworkPolicyTrafficClassificationRuleMatcher
Represents a match condition that incoming traffic is evaluated against.
-
#priority ⇒ Fixnum
An integer indicating the priority of a rule in the list.
-
#rule_name ⇒ String
An optional name for the rule.
-
#rule_tuple_count ⇒ Fixnum
[Output Only] Calculation of the complexity of a single network policy rule.
-
#target_secure_tags ⇒ Array<Google::Apis::ComputeAlpha::NetworkPolicyTrafficClassificationRuleSecureTag>
A list of secure tags that controls which instances the traffic classification rule applies to.
-
#target_service_accounts ⇒ Array<String>
A list of service accounts indicating the sets of instances that are applied with this rule.
Instance Method Summary collapse
-
#initialize(**args) ⇒ NetworkPolicyTrafficClassificationRule
constructor
A new instance of NetworkPolicyTrafficClassificationRule.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ NetworkPolicyTrafficClassificationRule
Returns a new instance of NetworkPolicyTrafficClassificationRule.
39330 39331 39332 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 39330 def initialize(**args) update!(**args) end |
Instance Attribute Details
#action ⇒ Google::Apis::ComputeAlpha::NetworkPolicyTrafficClassificationRuleAction
The Action to perform when the client connection triggers the rule.
Corresponds to the JSON property action
39263 39264 39265 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 39263 def action @action end |
#description ⇒ String
An optional description for this resource.
Corresponds to the JSON property description
39268 39269 39270 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 39268 def description @description end |
#disabled ⇒ Boolean Also known as: disabled?
Denotes whether the network policy rule is disabled. When set to true, the
network policy rule is not enforced and traffic behaves as if it did not exist.
If this is unspecified, the network policy rule will be enabled.
Corresponds to the JSON property disabled
39275 39276 39277 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 39275 def disabled @disabled end |
#kind ⇒ String
[Output only] Type of the resource. Always compute#
networkPolicyTrafficClassificationRule for network policy traffic
classification rules
Corresponds to the JSON property kind
39283 39284 39285 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 39283 def kind @kind end |
#match ⇒ Google::Apis::ComputeAlpha::NetworkPolicyTrafficClassificationRuleMatcher
Represents a match condition that incoming traffic is evaluated against.
Exactly one field must be specified.
Corresponds to the JSON property match
39289 39290 39291 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 39289 def match @match end |
#priority ⇒ Fixnum
An integer indicating the priority of a rule in the list. The priority must be
a positive value between 1 and 2147482647. The priority values from 2147482648
to 2147483647 (1000) are reserved for system default network policy rules.
Rules are evaluated from highest to lowest priority where 1 is the highest
priority and 2147483647 is the lowest priority.
Corresponds to the JSON property priority
39298 39299 39300 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 39298 def priority @priority end |
#rule_name ⇒ String
An optional name for the rule. This field is not a unique identifier and can
be updated.
Corresponds to the JSON property ruleName
39304 39305 39306 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 39304 def rule_name @rule_name end |
#rule_tuple_count ⇒ Fixnum
[Output Only] Calculation of the complexity of a single network policy rule.
Corresponds to the JSON property ruleTupleCount
39309 39310 39311 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 39309 def rule_tuple_count @rule_tuple_count end |
#target_secure_tags ⇒ Array<Google::Apis::ComputeAlpha::NetworkPolicyTrafficClassificationRuleSecureTag>
A list of secure tags that controls which instances the traffic classification
rule applies to. If targetSecureTag are specified, then the traffic
classification rule applies only to instances in the VPC network that have one
of those EFFECTIVE secure tags, if all the targetSecureTag are in INEFFECTIVE
state, then this rule will be ignored. targetSecureTag may not be set at the
same time as targetServiceAccounts. If neither targetServiceAccounts nor
targetSecureTag are specified, the traffic classification rule applies to all
instances on the specified network. Maximum number of target label tags
allowed is 256.
Corresponds to the JSON property targetSecureTags
39322 39323 39324 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 39322 def @target_secure_tags end |
#target_service_accounts ⇒ Array<String>
A list of service accounts indicating the sets of instances that are applied
with this rule.
Corresponds to the JSON property targetServiceAccounts
39328 39329 39330 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 39328 def target_service_accounts @target_service_accounts end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
39335 39336 39337 39338 39339 39340 39341 39342 39343 39344 39345 39346 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 39335 def update!(**args) @action = args[:action] if args.key?(:action) @description = args[:description] if args.key?(:description) @disabled = args[:disabled] if args.key?(:disabled) @kind = args[:kind] if args.key?(:kind) @match = args[:match] if args.key?(:match) @priority = args[:priority] if args.key?(:priority) @rule_name = args[:rule_name] if args.key?(:rule_name) @rule_tuple_count = args[:rule_tuple_count] if args.key?(:rule_tuple_count) @target_secure_tags = args[:target_secure_tags] if args.key?(:target_secure_tags) @target_service_accounts = args[:target_service_accounts] if args.key?(:target_service_accounts) end |