endpoint_access
Creates, updates, deletes, gets or lists an endpoint_access resource.
Overview
| Name | endpoint_access |
| Type | Resource |
| Id | aws.redshift.endpoint_access |
Fields
The following fields are returned by SELECT queries:
- describe_endpoint_access
| Name | Datatype | Description |
|---|---|---|
address | string | The DNS address of the endpoint. |
cluster_identifier | string | The cluster identifier of the cluster associated with the endpoint. |
endpoint_create_time | string | The time (UTC) that the endpoint was created. |
endpoint_name | string | The name of the endpoint. |
endpoint_status | string | The status of the endpoint. |
port | integer | The port number on which the cluster accepts incoming connections. |
resource_owner | string | The Amazon Web Services account ID of the owner of the cluster. |
subnet_group_name | string | The subnet group name where Amazon Redshift chooses to deploy the endpoint. |
vpc_endpoint | string | The connection endpoint for connecting to an Amazon Redshift cluster through the proxy. |
vpc_security_groups | string | The security groups associated with the endpoint. |
Methods
The following methods are available for this resource:
| Name | Accessible by | Required Params | Optional Params | Description |
|---|---|---|---|---|
describe_endpoint_access | select | region | ClusterIdentifier, ResourceOwner, EndpointName, VpcId, MaxRecords, Marker | Describes a Redshift-managed VPC endpoint. |
create_endpoint_access | insert | EndpointName, SubnetGroupName, region | ClusterIdentifier, ResourceOwner, VpcSecurityGroupIds | Creates a Redshift-managed VPC endpoint. |
authorize_endpoint_access | update | Account, region | ClusterIdentifier, VpcIds | Grants access to a cluster. |
modify_endpoint_access | update | EndpointName, region | VpcSecurityGroupIds | Modifies a Redshift-managed VPC endpoint. |
revoke_endpoint_access | update | region | ClusterIdentifier, Account, VpcIds, Force | Revokes access to a cluster. |
delete_endpoint_access | delete | EndpointName, region | Deletes a Redshift-managed VPC endpoint. |
Parameters
Parameters can be passed in the WHERE clause of a query. Check the Methods section to see which parameters are required or optional for each operation.
| Name | Datatype | Description |
|---|---|---|
Account | string | The Amazon Web Services account ID to grant access to. |
EndpointName | string | The Redshift-managed VPC endpoint to delete. |
SubnetGroupName | string | The subnet group from which Amazon Redshift chooses the subnet to deploy the endpoint. |
region | string | AWS region (default: us-east-1) |
Account | string | The Amazon Web Services account ID whose access is to be revoked. |
ClusterIdentifier | string | The cluster to revoke access from. |
EndpointName | string | The name of the endpoint to be described. |
Force | boolean | Indicates whether to force the revoke action. If true, the Redshift-managed VPC endpoints associated with the endpoint authorization are also deleted. |
Marker | string | An optional pagination token provided by a previous DescribeEndpointAccess request. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by the MaxRecords parameter. |
MaxRecords | integer | The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a pagination token called a Marker is included in the response so that the remaining results can be retrieved. |
ResourceOwner | string | The Amazon Web Services account ID of the owner of the cluster. This is only required if the cluster is in another Amazon Web Services account. |
VpcId | string | The virtual private cloud (VPC) identifier with access to the cluster. |
VpcIds | array | The virtual private cloud (VPC) identifiers for which access is to be revoked. |
VpcSecurityGroupIds | array | The complete list of VPC security groups associated with the endpoint after the endpoint is modified. |
SELECT examples
- describe_endpoint_access
Describes a Redshift-managed VPC endpoint.
SELECT
address,
cluster_identifier,
endpoint_create_time,
endpoint_name,
endpoint_status,
port,
resource_owner,
subnet_group_name,
vpc_endpoint,
vpc_security_groups
FROM aws.redshift.endpoint_access
WHERE region = '{{ region }}' -- required
AND ClusterIdentifier = '{{ ClusterIdentifier }}'
AND ResourceOwner = '{{ ResourceOwner }}'
AND EndpointName = '{{ EndpointName }}'
AND VpcId = '{{ VpcId }}'
AND MaxRecords = '{{ MaxRecords }}'
AND Marker = '{{ Marker }}'
;
INSERT examples
- create_endpoint_access
- Manifest
Creates a Redshift-managed VPC endpoint.
INSERT INTO aws.redshift.endpoint_access (
EndpointName,
SubnetGroupName,
region,
ClusterIdentifier,
ResourceOwner,
VpcSecurityGroupIds
)
SELECT
'{{ EndpointName }}',
'{{ SubnetGroupName }}',
'{{ region }}',
'{{ ClusterIdentifier }}',
'{{ ResourceOwner }}',
'{{ VpcSecurityGroupIds }}'
RETURNING
address,
cluster_identifier,
endpoint_create_time,
endpoint_name,
endpoint_status,
port,
resource_owner,
subnet_group_name,
vpc_endpoint,
vpc_security_groups
;
# Description fields are for documentation purposes
- name: endpoint_access
props:
- name: EndpointName
value: "{{ EndpointName }}"
description: Required parameter for the endpoint_access resource.
- name: SubnetGroupName
value: "{{ SubnetGroupName }}"
description: Required parameter for the endpoint_access resource.
- name: region
value: "{{ region }}"
description: Required parameter for the endpoint_access resource.
- name: ClusterIdentifier
value: "{{ ClusterIdentifier }}"
description: The cluster identifier of the cluster to access.
description: The cluster identifier of the cluster to access.
- name: ResourceOwner
value: "{{ ResourceOwner }}"
description: The Amazon Web Services account ID of the owner of the cluster. This is only required if the cluster is in another Amazon Web Services account.
description: The Amazon Web Services account ID of the owner of the cluster. This is only required if the cluster is in another Amazon Web Services account.
- name: VpcSecurityGroupIds
value: "{{ VpcSecurityGroupIds }}"
description: The security group that defines the ports, protocols, and sources for inbound traffic that you are authorizing into your endpoint.
description: The security group that defines the ports, protocols, and sources for inbound traffic that you are authorizing into your endpoint.
UPDATE examples
- authorize_endpoint_access
- modify_endpoint_access
- revoke_endpoint_access
Grants access to a cluster.
UPDATE aws.redshift.endpoint_access
SET
-- No updatable properties
WHERE
Account = '{{ Account }}' --required
AND region = '{{ region }}' --required
AND ClusterIdentifier = '{{ ClusterIdentifier}}'
AND VpcIds = '{{ VpcIds}}'
RETURNING
allowed_all_vpcs,
allowed_vpcs,
authorize_time,
cluster_identifier,
cluster_status,
endpoint_count,
grantee,
grantor,
status;
Modifies a Redshift-managed VPC endpoint.
UPDATE aws.redshift.endpoint_access
SET
-- No updatable properties
WHERE
EndpointName = '{{ EndpointName }}' --required
AND region = '{{ region }}' --required
AND VpcSecurityGroupIds = '{{ VpcSecurityGroupIds}}'
RETURNING
address,
cluster_identifier,
endpoint_create_time,
endpoint_name,
endpoint_status,
port,
resource_owner,
subnet_group_name,
vpc_endpoint,
vpc_security_groups;
Revokes access to a cluster.
UPDATE aws.redshift.endpoint_access
SET
-- No updatable properties
WHERE
region = '{{ region }}' --required
AND ClusterIdentifier = '{{ ClusterIdentifier}}'
AND Account = '{{ Account}}'
AND VpcIds = '{{ VpcIds}}'
AND Force = {{ Force}}
RETURNING
allowed_all_vpcs,
allowed_vpcs,
authorize_time,
cluster_identifier,
cluster_status,
endpoint_count,
grantee,
grantor,
status;
DELETE examples
- delete_endpoint_access
Deletes a Redshift-managed VPC endpoint.
DELETE FROM aws.redshift.endpoint_access
WHERE EndpointName = '{{ EndpointName }}' --required
AND region = '{{ region }}' --required
;