Skip to main content

gateways

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

Overview

Namegateways
TypeResource
Idgoogle.networkservices.gateways

Fields

NameDatatypeDescription
namestringIdentifier. Name of the Gateway resource. It matches pattern projects/*/locations/*/gateways/.
descriptionstringOptional. A free-text description of the resource. Max length 1024 characters.
addressesarrayOptional. Zero or one IPv4 or IPv6 address on which the Gateway will receive the traffic. When no address is provided, an IP from the subnetwork is allocated This field only applies to gateways of type 'SECURE_WEB_GATEWAY'. Gateways of type 'OPEN_MESH' listen on 0.0.0.0 for IPv4 and :: for IPv6.
certificateUrlsarrayOptional. A fully-qualified Certificates URL reference. The proxy presents a Certificate (selected based on SNI) when establishing a TLS connection. This feature only applies to gateways of type 'SECURE_WEB_GATEWAY'.
createTimestringOutput only. The timestamp when the resource was created.
envoyHeadersstringOptional. Determines if envoy will insert internal debug headers into upstream requests. Other Envoy headers may still be injected. By default, envoy will not insert any debug headers.
gatewaySecurityPolicystringOptional. A fully-qualified GatewaySecurityPolicy URL reference. Defines how a server should apply security policy to inbound (VM to Proxy) initiated connections. For example: projects/*/locations/*/gatewaySecurityPolicies/swg-policy. This policy is specific to gateways of type 'SECURE_WEB_GATEWAY'.
ipVersionstringOptional. The IP Version that will be used by this gateway. Valid options are IPV4 or IPV6. Default is IPV4.
labelsobjectOptional. Set of label tags associated with the Gateway resource.
networkstringOptional. The relative resource name identifying the VPC network that is using this configuration. For example: projects/*/global/networks/network-1. Currently, this field is specific to gateways of type 'SECURE_WEB_GATEWAY'.
portsarrayRequired. One or more port numbers (1-65535), on which the Gateway will receive traffic. The proxy binds to the specified ports. Gateways of type 'SECURE_WEB_GATEWAY' are limited to 1 port. Gateways of type 'OPEN_MESH' listen on 0.0.0.0 for IPv4 and :: for IPv6 and support multiple ports.
routingModestringOptional. The routing mode of the Gateway. This field is configurable only for gateways of type SECURE_WEB_GATEWAY. This field is required for gateways of type SECURE_WEB_GATEWAY.
scopestringOptional. Scope determines how configuration across multiple Gateway instances are merged. The configuration for multiple Gateway instances with the same scope will be merged as presented as a single coniguration to the proxy/load balancer. Max length 64 characters. Scope should start with a letter and can only have letters, numbers, hyphens.
selfLinkstringOutput only. Server-defined URL of this resource
serverTlsPolicystringOptional. A fully-qualified ServerTLSPolicy URL reference. Specifies how TLS traffic is terminated. If empty, TLS termination is disabled.
subnetworkstringOptional. The relative resource name identifying the subnetwork in which this SWG is allocated. For example: projects/*/regions/us-central1/subnetworks/network-1 Currently, this field is specific to gateways of type 'SECURE_WEB_GATEWAY".
typestringImmutable. The type of the customer managed gateway. This field is required. If unspecified, an error is returned.
updateTimestringOutput only. The timestamp when the resource was updated.

Methods

NameAccessible byRequired ParamsDescription
getSELECTgatewaysId, locationsId, projectsIdGets details of a single Gateway.
listSELECTlocationsId, projectsIdLists Gateways in a given project and location.
createINSERTlocationsId, projectsIdCreates a new Gateway in a given project and location.
deleteDELETEgatewaysId, locationsId, projectsIdDeletes a single Gateway.
patchUPDATEgatewaysId, locationsId, projectsIdUpdates the parameters of a single Gateway.

SELECT examples

Lists Gateways in a given project and location.

SELECT
name,
description,
addresses,
certificateUrls,
createTime,
envoyHeaders,
gatewaySecurityPolicy,
ipVersion,
labels,
network,
ports,
routingMode,
scope,
selfLink,
serverTlsPolicy,
subnetwork,
type,
updateTime
FROM google.networkservices.gateways
WHERE locationsId = '{{ locationsId }}'
AND projectsId = '{{ projectsId }}';

INSERT example

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

/*+ create */
INSERT INTO google.networkservices.gateways (
locationsId,
projectsId,
name,
labels,
description,
type,
addresses,
ports,
scope,
serverTlsPolicy,
certificateUrls,
gatewaySecurityPolicy,
network,
subnetwork,
ipVersion,
envoyHeaders,
routingMode
)
SELECT
'{{ locationsId }}',
'{{ projectsId }}',
'{{ name }}',
'{{ labels }}',
'{{ description }}',
'{{ type }}',
'{{ addresses }}',
'{{ ports }}',
'{{ scope }}',
'{{ serverTlsPolicy }}',
'{{ certificateUrls }}',
'{{ gatewaySecurityPolicy }}',
'{{ network }}',
'{{ subnetwork }}',
'{{ ipVersion }}',
'{{ envoyHeaders }}',
'{{ routingMode }}'
;

UPDATE example

Updates a gateways resource.

/*+ update */
UPDATE google.networkservices.gateways
SET
name = '{{ name }}',
labels = '{{ labels }}',
description = '{{ description }}',
type = '{{ type }}',
addresses = '{{ addresses }}',
ports = '{{ ports }}',
scope = '{{ scope }}',
serverTlsPolicy = '{{ serverTlsPolicy }}',
certificateUrls = '{{ certificateUrls }}',
gatewaySecurityPolicy = '{{ gatewaySecurityPolicy }}',
network = '{{ network }}',
subnetwork = '{{ subnetwork }}',
ipVersion = '{{ ipVersion }}',
envoyHeaders = '{{ envoyHeaders }}',
routingMode = '{{ routingMode }}'
WHERE
gatewaysId = '{{ gatewaysId }}'
AND locationsId = '{{ locationsId }}'
AND projectsId = '{{ projectsId }}';

DELETE example

Deletes the specified gateways resource.

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