integrations
Creates, updates, deletes or gets an integration
resource or lists integrations
in a region
Overview
Name | integrations |
Type | Resource |
Description | Integration from a source AWS service to a Redshift cluster |
Id | aws.redshift.integrations |
Fields
Name | Datatype | Description |
---|---|---|
integration_arn | string | The Amazon Resource Name (ARN) of the integration. |
integration_name | string | The name of the integration. |
source_arn | string | The Amazon Resource Name (ARN) of the database to use as the source for replication |
target_arn | string | The Amazon Resource Name (ARN) of the Redshift data warehouse to use as the target for replication |
tags | array | An array of key-value pairs to apply to this resource. |
create_time | string | The time (UTC) when the integration was created. |
kms_key_id | string | An KMS key identifier for the key to use to encrypt the integration. If you don't specify an encryption key, the default AWS owned KMS key is used. |
additional_encryption_context | object | An optional set of non-secret key–value pairs that contains additional contextual information about the data. |
region | string | AWS region. |
For more information, see AWS::Redshift::Integration
.
Methods
Name | Accessible by | Required Params |
---|---|---|
create_resource | INSERT | SourceArn, TargetArn, region |
delete_resource | DELETE | data__Identifier, region |
update_resource | UPDATE | data__Identifier, data__PatchDocument, region |
list_resources | SELECT | region |
get_resource | SELECT | data__Identifier, region |
SELECT
examples
Gets all integrations
in a region.
SELECT
region,
integration_arn,
integration_name,
source_arn,
target_arn,
tags,
create_time,
kms_key_id,
additional_encryption_context
FROM aws.redshift.integrations
WHERE region = 'us-east-1';
Gets all properties from an individual integration
.
SELECT
region,
integration_arn,
integration_name,
source_arn,
target_arn,
tags,
create_time,
kms_key_id,
additional_encryption_context
FROM aws.redshift.integrations
WHERE region = 'us-east-1' AND data__Identifier = '<IntegrationArn>';
INSERT
example
Use the following StackQL query and manifest file to create a new integration
resource, using stack-deploy
.
- Required Properties
- All Properties
- Manifest
/*+ create */
INSERT INTO aws.redshift.integrations (
SourceArn,
TargetArn,
region
)
SELECT
'{{ SourceArn }}',
'{{ TargetArn }}',
'{{ region }}';
/*+ create */
INSERT INTO aws.redshift.integrations (
IntegrationName,
SourceArn,
TargetArn,
Tags,
KMSKeyId,
AdditionalEncryptionContext,
region
)
SELECT
'{{ IntegrationName }}',
'{{ SourceArn }}',
'{{ TargetArn }}',
'{{ Tags }}',
'{{ KMSKeyId }}',
'{{ AdditionalEncryptionContext }}',
'{{ region }}';
version: 1
name: stack name
description: stack description
providers:
- aws
globals:
- name: region
value: '{{ vars.AWS_REGION }}'
resources:
- name: integration
props:
- name: IntegrationName
value: '{{ IntegrationName }}'
- name: SourceArn
value: '{{ SourceArn }}'
- name: TargetArn
value: '{{ TargetArn }}'
- name: Tags
value:
- Key: '{{ Key }}'
Value: '{{ Value }}'
- name: KMSKeyId
value: '{{ KMSKeyId }}'
- name: AdditionalEncryptionContext
value: {}
DELETE
example
/*+ delete */
DELETE FROM aws.redshift.integrations
WHERE data__Identifier = '<IntegrationArn>'
AND region = 'us-east-1';
Permissions
To operate on the integrations
resource, the following permissions are required:
Create
redshift:CreateIntegration,
redshift:DescribeIntegrations,
redshift:CreateTags,
redshift:DescribeTags,
redshift:DescribeClusters,
redshift:CreateInboundIntegration,
redshift-serverless:ListNamespaces,
kms:CreateGrant,
kms:DescribeKey
Read
redshift:DescribeIntegrations,
redshift:DescribeTags
Update
redshift:DescribeIntegrations,
redshift:ModifyIntegration,
redshift:CreateTags,
redshift:DeleteTags,
redshift:DescribeClusters,
redshift:DescribeTags,
redshift-serverless:ListNamespaces
Delete
redshift:DeleteTags,
redshift:DeleteIntegration,
redshift:DescribeIntegrations
List
redshift:DescribeTags,
redshift:DescribeIntegrations