Skip to main content

endpoint_policies

Creates, updates, deletes, gets or lists a endpoint_policies resource.

Overview

Nameendpoint_policies
TypeResource
Idgoogle.networkservices.endpoint_policies

Fields

NameDatatypeDescription
namestringIdentifier. Name of the EndpointPolicy resource. It matches pattern projects/{project}/locations/global/endpointPolicies/{endpoint_policy}.
descriptionstringOptional. A free-text description of the resource. Max length 1024 characters.
authorizationPolicystringOptional. 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.
clientTlsPolicystringOptional. 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.
createTimestringOutput only. The timestamp when the resource was created.
endpointMatcherobjectA definition of a matcher that selects endpoints to which the policies should be applied.
labelsobjectOptional. Set of label tags associated with the EndpointPolicy resource.
serverTlsPolicystringOptional. 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.
trafficPortSelectorobjectSpecification of a port-based selector.
typestringRequired. The type of endpoint policy. This is primarily used to validate the configuration.
updateTimestringOutput only. The timestamp when the resource was updated.

Methods

NameAccessible byRequired ParamsDescription
getSELECTendpointPoliciesId, locationsId, projectsIdGets details of a single EndpointPolicy.
listSELECTlocationsId, projectsIdLists EndpointPolicies in a given project and location.
createINSERTlocationsId, projectsIdCreates a new EndpointPolicy in a given project and location.
deleteDELETEendpointPoliciesId, locationsId, projectsIdDeletes a single EndpointPolicy.
patchUPDATEendpointPoliciesId, locationsId, projectsIdUpdates the parameters of a single EndpointPolicy.

SELECT examples

Lists EndpointPolicies in a given project and location.

SELECT
name,
description,
authorizationPolicy,
clientTlsPolicy,
createTime,
endpointMatcher,
labels,
serverTlsPolicy,
trafficPortSelector,
type,
updateTime
FROM google.networkservices.endpoint_policies
WHERE locationsId = '{{ locationsId }}'
AND projectsId = '{{ projectsId }}';

INSERT example

Use the following StackQL query and manifest file to create a new endpoint_policies resource.

/*+ create */
INSERT INTO google.networkservices.endpoint_policies (
locationsId,
projectsId,
name,
labels,
type,
authorizationPolicy,
endpointMatcher,
trafficPortSelector,
description,
serverTlsPolicy,
clientTlsPolicy
)
SELECT
'{{ locationsId }}',
'{{ projectsId }}',
'{{ name }}',
'{{ labels }}',
'{{ type }}',
'{{ authorizationPolicy }}',
'{{ endpointMatcher }}',
'{{ trafficPortSelector }}',
'{{ description }}',
'{{ serverTlsPolicy }}',
'{{ clientTlsPolicy }}'
;

UPDATE example

Updates a endpoint_policies resource.

/*+ update */
UPDATE google.networkservices.endpoint_policies
SET
name = '{{ name }}',
labels = '{{ labels }}',
type = '{{ type }}',
authorizationPolicy = '{{ authorizationPolicy }}',
endpointMatcher = '{{ endpointMatcher }}',
trafficPortSelector = '{{ trafficPortSelector }}',
description = '{{ description }}',
serverTlsPolicy = '{{ serverTlsPolicy }}',
clientTlsPolicy = '{{ clientTlsPolicy }}'
WHERE
endpointPoliciesId = '{{ endpointPoliciesId }}'
AND locationsId = '{{ locationsId }}'
AND projectsId = '{{ projectsId }}';

DELETE example

Deletes the specified endpoint_policies resource.

/*+ delete */
DELETE FROM google.networkservices.endpoint_policies
WHERE endpointPoliciesId = '{{ endpointPoliciesId }}'
AND locationsId = '{{ locationsId }}'
AND projectsId = '{{ projectsId }}';