Class: Google::Apis::NetworksecurityV1beta1::GatewaySecurityPolicyRule

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/networksecurity_v1beta1/classes.rb,
lib/google/apis/networksecurity_v1beta1/representations.rb,
lib/google/apis/networksecurity_v1beta1/representations.rb

Overview

The GatewaySecurityPolicyRule resource is in a nested collection within a GatewaySecurityPolicy and represents a traffic matching condition and associated action to perform.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ GatewaySecurityPolicyRule

Returns a new instance of GatewaySecurityPolicyRule.



1674
1675
1676
# File 'lib/google/apis/networksecurity_v1beta1/classes.rb', line 1674

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#application_matcherString

Optional. CEL expression for matching on L7/application level criteria. Corresponds to the JSON property applicationMatcher

Returns:

  • (String)


1621
1622
1623
# File 'lib/google/apis/networksecurity_v1beta1/classes.rb', line 1621

def application_matcher
  @application_matcher
end

#basic_profileString

Required. Profile which tells what the primitive action should be. Corresponds to the JSON property basicProfile

Returns:

  • (String)


1626
1627
1628
# File 'lib/google/apis/networksecurity_v1beta1/classes.rb', line 1626

def basic_profile
  @basic_profile
end

#create_timeString

Output only. Time when the rule was created. Corresponds to the JSON property createTime

Returns:

  • (String)


1631
1632
1633
# File 'lib/google/apis/networksecurity_v1beta1/classes.rb', line 1631

def create_time
  @create_time
end

#descriptionString

Optional. Free-text description of the resource. Corresponds to the JSON property description

Returns:

  • (String)


1636
1637
1638
# File 'lib/google/apis/networksecurity_v1beta1/classes.rb', line 1636

def description
  @description
end

#enabledBoolean Also known as: enabled?

Required. Whether the rule is enforced. Corresponds to the JSON property enabled

Returns:

  • (Boolean)


1641
1642
1643
# File 'lib/google/apis/networksecurity_v1beta1/classes.rb', line 1641

def enabled
  @enabled
end

#nameString

Required. Immutable. Name of the resource. ame is the full resource name so projects/project/locations/location/gatewaySecurityPolicies/ gateway_security_policy/rules/rule rule should match the pattern: (^a-z?$). Corresponds to the JSON property name

Returns:

  • (String)


1650
1651
1652
# File 'lib/google/apis/networksecurity_v1beta1/classes.rb', line 1650

def name
  @name
end

#priorityFixnum

Required. Priority of the rule. Lower number corresponds to higher precedence. Corresponds to the JSON property priority

Returns:

  • (Fixnum)


1655
1656
1657
# File 'lib/google/apis/networksecurity_v1beta1/classes.rb', line 1655

def priority
  @priority
end

#session_matcherString

Required. CEL expression for matching on session criteria. Corresponds to the JSON property sessionMatcher

Returns:

  • (String)


1660
1661
1662
# File 'lib/google/apis/networksecurity_v1beta1/classes.rb', line 1660

def session_matcher
  @session_matcher
end

#tls_inspection_enabledBoolean Also known as: tls_inspection_enabled?

Optional. Flag to enable TLS inspection of traffic matching on , can only be true if the parent GatewaySecurityPolicy references a TLSInspectionConfig. Corresponds to the JSON property tlsInspectionEnabled

Returns:

  • (Boolean)


1666
1667
1668
# File 'lib/google/apis/networksecurity_v1beta1/classes.rb', line 1666

def tls_inspection_enabled
  @tls_inspection_enabled
end

#update_timeString

Output only. Time when the rule was updated. Corresponds to the JSON property updateTime

Returns:

  • (String)


1672
1673
1674
# File 'lib/google/apis/networksecurity_v1beta1/classes.rb', line 1672

def update_time
  @update_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
# File 'lib/google/apis/networksecurity_v1beta1/classes.rb', line 1679

def update!(**args)
  @application_matcher = args[:application_matcher] if args.key?(:application_matcher)
  @basic_profile = args[:basic_profile] if args.key?(:basic_profile)
  @create_time = args[:create_time] if args.key?(:create_time)
  @description = args[:description] if args.key?(:description)
  @enabled = args[:enabled] if args.key?(:enabled)
  @name = args[:name] if args.key?(:name)
  @priority = args[:priority] if args.key?(:priority)
  @session_matcher = args[:session_matcher] if args.key?(:session_matcher)
  @tls_inspection_enabled = args[:tls_inspection_enabled] if args.key?(:tls_inspection_enabled)
  @update_time = args[:update_time] if args.key?(:update_time)
end