Class: Google::Apis::NetworksecurityV1beta1::AuthzPolicyAuthzRuleFromRequestSource

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

Describes the properties of a single source.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ AuthzPolicyAuthzRuleFromRequestSource

Returns a new instance of AuthzPolicyAuthzRuleFromRequestSource.



405
406
407
# File 'lib/google/apis/networksecurity_v1beta1/classes.rb', line 405

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

Instance Attribute Details

#ip_blocksArray<Google::Apis::NetworksecurityV1beta1::AuthzPolicyAuthzRuleIpBlock>

Optional. A list of IP addresses or IP address ranges to match against the source IP address of the request. Limited to 10 ip_blocks per Authorization Policy Corresponds to the JSON property ipBlocks



383
384
385
# File 'lib/google/apis/networksecurity_v1beta1/classes.rb', line 383

def ip_blocks
  @ip_blocks
end

#principalsArray<Google::Apis::NetworksecurityV1beta1::AuthzPolicyAuthzRulePrincipal>

Optional. A list of identities derived from the client's certificate. This field will not match on a request unless frontend mutual TLS is enabled for the forwarding rule or Gateway and the client certificate has been successfully validated by mTLS. Each identity is a string whose value is matched against a list of URI SANs, DNS Name SANs, or the common name in the client's certificate. A match happens when any principal matches with the rule. Limited to 50 principals per Authorization Policy for regional internal Application Load Balancers, regional external Application Load Balancers, cross-region internal Application Load Balancers, and Cloud Service Mesh. This field is not supported for global external Application Load Balancers. Corresponds to the JSON property principals



397
398
399
# File 'lib/google/apis/networksecurity_v1beta1/classes.rb', line 397

def principals
  @principals
end

#resourcesArray<Google::Apis::NetworksecurityV1beta1::AuthzPolicyAuthzRuleRequestResource>

Optional. A list of resources to match against the resource of the source VM of a request. Limited to 10 resources per Authorization Policy. Corresponds to the JSON property resources



403
404
405
# File 'lib/google/apis/networksecurity_v1beta1/classes.rb', line 403

def resources
  @resources
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



410
411
412
413
414
# File 'lib/google/apis/networksecurity_v1beta1/classes.rb', line 410

def update!(**args)
  @ip_blocks = args[:ip_blocks] if args.key?(:ip_blocks)
  @principals = args[:principals] if args.key?(:principals)
  @resources = args[:resources] if args.key?(:resources)
end