Class: Google::Apis::NetworkservicesV1beta1::EndpointPolicy
- Inherits:
-
Object
- Object
- Google::Apis::NetworkservicesV1beta1::EndpointPolicy
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/networkservices_v1beta1/classes.rb,
lib/google/apis/networkservices_v1beta1/representations.rb,
lib/google/apis/networkservices_v1beta1/representations.rb
Overview
EndpointPolicy is a resource that helps apply desired configuration on the endpoints that match specific criteria. For example, this resource can be used to apply "authentication config" an all endpoints that serve on port 8080.
Instance Attribute Summary collapse
-
#authorization_policy ⇒ String
Optional.
-
#client_tls_policy ⇒ String
Optional.
-
#create_time ⇒ String
Output only.
-
#description ⇒ String
Optional.
-
#endpoint_matcher ⇒ Google::Apis::NetworkservicesV1beta1::EndpointMatcher
A definition of a matcher that selects endpoints to which the policies should be applied.
-
#labels ⇒ Hash<String,String>
Optional.
-
#name ⇒ String
Identifier.
-
#security_policy ⇒ String
Optional.
-
#server_tls_policy ⇒ String
Optional.
-
#traffic_port_selector ⇒ Google::Apis::NetworkservicesV1beta1::TrafficPortSelector
Specification of a port-based selector.
-
#type ⇒ String
Required.
-
#update_time ⇒ String
Output only.
Instance Method Summary collapse
-
#initialize(**args) ⇒ EndpointPolicy
constructor
A new instance of EndpointPolicy.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ EndpointPolicy
Returns a new instance of EndpointPolicy.
706 707 708 |
# File 'lib/google/apis/networkservices_v1beta1/classes.rb', line 706 def initialize(**args) update!(**args) end |
Instance Attribute Details
#authorization_policy ⇒ String
Optional. This field specifies the URL of AuthorizationPolicy resource that
applies authorization policies to the inbound traffic at the matched endpoints.
Refer to Authorization. If this field is not specified, authorization is
disabled(no authz checks) for this endpoint.
Corresponds to the JSON property authorizationPolicy
632 633 634 |
# File 'lib/google/apis/networkservices_v1beta1/classes.rb', line 632 def @authorization_policy end |
#client_tls_policy ⇒ String
Optional. Deprecated: This field is not used and is a no-op. A URL referring
to a ClientTlsPolicy resource. ClientTlsPolicy can be set to specify the
authentication for traffic from the proxy to the actual endpoints. More
specifically, it is applied to the outgoing traffic from the proxy to the
endpoint. This is typically used for sidecar model where the proxy identifies
itself as endpoint to the control plane, with the connection between sidecar
and endpoint requiring authentication. If this field is not set,
authentication is disabled(open). Applicable only when EndpointPolicyType is
SIDECAR_PROXY.
Corresponds to the JSON property clientTlsPolicy
645 646 647 |
# File 'lib/google/apis/networkservices_v1beta1/classes.rb', line 645 def client_tls_policy @client_tls_policy end |
#create_time ⇒ String
Output only. The timestamp when the resource was created.
Corresponds to the JSON property createTime
650 651 652 |
# File 'lib/google/apis/networkservices_v1beta1/classes.rb', line 650 def create_time @create_time end |
#description ⇒ String
Optional. A free-text description of the resource. Max length 1024 characters.
Corresponds to the JSON property description
655 656 657 |
# File 'lib/google/apis/networkservices_v1beta1/classes.rb', line 655 def description @description end |
#endpoint_matcher ⇒ Google::Apis::NetworkservicesV1beta1::EndpointMatcher
A definition of a matcher that selects endpoints to which the policies should
be applied.
Corresponds to the JSON property endpointMatcher
661 662 663 |
# File 'lib/google/apis/networkservices_v1beta1/classes.rb', line 661 def endpoint_matcher @endpoint_matcher end |
#labels ⇒ Hash<String,String>
Optional. Set of label tags associated with the EndpointPolicy resource.
Corresponds to the JSON property labels
666 667 668 |
# File 'lib/google/apis/networkservices_v1beta1/classes.rb', line 666 def labels @labels end |
#name ⇒ String
Identifier. Name of the EndpointPolicy resource. It matches pattern projects/
project/locations/*/endpointPolicies/endpoint_policy`.
Corresponds to the JSON propertyname`
672 673 674 |
# File 'lib/google/apis/networkservices_v1beta1/classes.rb', line 672 def name @name end |
#security_policy ⇒ String
Optional. A URL referring to a SecurityPolicy resource. SecurityPolicy is used
to enforce rate limiting policy on the inbound traffic at the identified
backends. If this field is not set, rate limiting is disabled for this
endpoint.
Corresponds to the JSON property securityPolicy
680 681 682 |
# File 'lib/google/apis/networkservices_v1beta1/classes.rb', line 680 def security_policy @security_policy end |
#server_tls_policy ⇒ String
Optional. A URL referring to ServerTlsPolicy resource. ServerTlsPolicy is used
to determine the authentication policy to be applied to terminate the inbound
traffic at the identified backends. If this field is not set, authentication
is disabled(open) for this endpoint.
Corresponds to the JSON property serverTlsPolicy
688 689 690 |
# File 'lib/google/apis/networkservices_v1beta1/classes.rb', line 688 def server_tls_policy @server_tls_policy end |
#traffic_port_selector ⇒ Google::Apis::NetworkservicesV1beta1::TrafficPortSelector
Specification of a port-based selector.
Corresponds to the JSON property trafficPortSelector
693 694 695 |
# File 'lib/google/apis/networkservices_v1beta1/classes.rb', line 693 def traffic_port_selector @traffic_port_selector end |
#type ⇒ String
Required. The type of endpoint policy. This is primarily used to validate the
configuration.
Corresponds to the JSON property type
699 700 701 |
# File 'lib/google/apis/networkservices_v1beta1/classes.rb', line 699 def type @type end |
#update_time ⇒ String
Output only. The timestamp when the resource was updated.
Corresponds to the JSON property updateTime
704 705 706 |
# File 'lib/google/apis/networkservices_v1beta1/classes.rb', line 704 def update_time @update_time end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
711 712 713 714 715 716 717 718 719 720 721 722 723 724 |
# File 'lib/google/apis/networkservices_v1beta1/classes.rb', line 711 def update!(**args) @authorization_policy = args[:authorization_policy] if args.key?(:authorization_policy) @client_tls_policy = args[:client_tls_policy] if args.key?(:client_tls_policy) @create_time = args[:create_time] if args.key?(:create_time) @description = args[:description] if args.key?(:description) @endpoint_matcher = args[:endpoint_matcher] if args.key?(:endpoint_matcher) @labels = args[:labels] if args.key?(:labels) @name = args[:name] if args.key?(:name) @security_policy = args[:security_policy] if args.key?(:security_policy) @server_tls_policy = args[:server_tls_policy] if args.key?(:server_tls_policy) @traffic_port_selector = args[:traffic_port_selector] if args.key?(:traffic_port_selector) @type = args[:type] if args.key?(:type) @update_time = args[:update_time] if args.key?(:update_time) end |