data_sources
Creates, updates, deletes or gets a data_source resource or lists data_sources in a region
Overview
| Name | data_sources |
| Type | Resource |
| Description | Definition of the AWS::QuickSight::DataSource Resource Type. |
| Id | awscc.quicksight.data_sources |
Fields
- get (all properties)
- list (identifiers only)
| Name | Datatype | Description |
|---|---|---|
status | string | |
created_time | string | <p>The time that this data source was created.</p> |
error_info | object | <p>Error information for the data source creation or update.</p> |
last_updated_time | string | <p>The last time that this data source was updated.</p> |
folder_arns | array | |
name | string | |
data_source_parameters | object | <p>The parameters that Amazon QuickSight uses to connect to your underlying data source.<br />This is a variant type structure. For this structure to be valid, only one of the<br />attributes can be non-null.</p> |
type | string | |
vpc_connection_properties | object | <p>VPC connection properties.</p> |
alternate_data_source_parameters | array | <p>A set of alternate data source parameters that you want to share for the credentials<br />stored with this data source. The credentials are applied in tandem with the data source<br />parameters when you copy a data source by using a create or update request. The API<br />operation compares the <code>DataSourceParameters</code> structure that's in the request<br />with the structures in the <code>AlternateDataSourceParameters</code> allow list. If the<br />structures are an exact match, the request is allowed to use the credentials from this<br />existing data source. If the <code>AlternateDataSourceParameters</code> list is null,<br />the <code>Credentials</code> originally used with this <code>DataSourceParameters</code><br />are automatically allowed.</p> |
aws_account_id | string | |
permissions | array | |
arn | string | <p>The Amazon Resource Name (ARN) of the data source.</p> |
ssl_properties | object | <p>Secure Socket Layer (SSL) properties that apply when Amazon QuickSight connects to your<br />underlying data source.</p> |
credentials | object | <p>Data source credentials. This is a variant type structure. For this structure to be<br />valid, only one of the attributes can be non-null.</p> |
data_source_id | string | |
tags | array | |
region | string | AWS region. |
| Name | Datatype | Description |
|---|---|---|
aws_account_id | string | |
data_source_id | string | |
region | string | AWS region. |
For more information, see AWS::QuickSight::DataSource.
Methods
| Name | Resource | Accessible by | Required Params |
|---|---|---|---|
create_resource | data_sources | INSERT | Name, Type, region |
delete_resource | data_sources | DELETE | Identifier, region |
update_resource | data_sources | UPDATE | Identifier, PatchDocument, region |
list_resources | data_sources_list_only | SELECT | region |
get_resource | data_sources | SELECT | Identifier, region |
SELECT examples
- get (all properties)
- list (identifiers only)
Gets all properties from an individual data_source.
SELECT
region,
status,
created_time,
error_info,
last_updated_time,
folder_arns,
name,
data_source_parameters,
type,
vpc_connection_properties,
alternate_data_source_parameters,
aws_account_id,
permissions,
arn,
ssl_properties,
credentials,
data_source_id,
tags
FROM awscc.quicksight.data_sources
WHERE
region = 'us-east-1' AND
Identifier = '{{ aws_account_id }}|{{ data_source_id }}';
Lists all data_sources in a region.
SELECT
region,
aws_account_id,
data_source_id
FROM awscc.quicksight.data_sources_list_only
WHERE
region = 'us-east-1';
INSERT example
Use the following StackQL query and manifest file to create a new data_source resource, using stack-deploy.
- Required Properties
- All Properties
- Manifest
/*+ create */
INSERT INTO awscc.quicksight.data_sources (
Name,
Type,
region
)
SELECT
'{{ name }}',
'{{ type }}',
'{{ region }}';
/*+ create */
INSERT INTO awscc.quicksight.data_sources (
ErrorInfo,
FolderArns,
Name,
DataSourceParameters,
Type,
VpcConnectionProperties,
AlternateDataSourceParameters,
AwsAccountId,
Permissions,
SslProperties,
Credentials,
DataSourceId,
Tags,
region
)
SELECT
'{{ error_info }}',
'{{ folder_arns }}',
'{{ name }}',
'{{ data_source_parameters }}',
'{{ type }}',
'{{ vpc_connection_properties }}',
'{{ alternate_data_source_parameters }}',
'{{ aws_account_id }}',
'{{ permissions }}',
'{{ ssl_properties }}',
'{{ credentials }}',
'{{ data_source_id }}',
'{{ tags }}',
'{{ region }}';
version: 1
name: stack name
description: stack description
providers:
- aws
globals:
- name: region
value: '{{ vars.AWS_REGION }}'
resources:
- name: data_source
props:
- name: error_info
value:
type: '{{ type }}'
message: '{{ message }}'
- name: folder_arns
value:
- '{{ folder_arns[0] }}'
- name: name
value: '{{ name }}'
- name: data_source_parameters
value:
aurora_postgre_sql_parameters:
port: null
database: '{{ database }}'
host: '{{ host }}'
teradata_parameters:
port: null
database: '{{ database }}'
host: '{{ host }}'
rds_parameters:
instance_id: '{{ instance_id }}'
database: '{{ database }}'
athena_parameters:
work_group: '{{ work_group }}'
identity_center_configuration:
enable_identity_propagation: '{{ enable_identity_propagation }}'
role_arn: '{{ role_arn }}'
spark_parameters:
port: null
host: '{{ host }}'
maria_db_parameters:
port: null
database: '{{ database }}'
host: '{{ host }}'
oracle_parameters:
use_service_name: '{{ use_service_name }}'
port: null
database: '{{ database }}'
host: '{{ host }}'
presto_parameters:
port: null
host: '{{ host }}'
catalog: '{{ catalog }}'
starburst_parameters:
port: null
database_access_control_role: '{{ database_access_control_role }}'
product_type: '{{ product_type }}'
oauth_parameters:
token_provider_url: '{{ token_provider_url }}'
oauth_scope: '{{ oauth_scope }}'
identity_provider_vpc_connection_properties:
vpc_connection_arn: '{{ vpc_connection_arn }}'
identity_provider_resource_uri: '{{ identity_provider_resource_uri }}'
host: '{{ host }}'
catalog: '{{ catalog }}'
authentication_type: '{{ authentication_type }}'
redshift_parameters:
iam_parameters:
auto_create_database_user: '{{ auto_create_database_user }}'
database_user: '{{ database_user }}'
role_arn: '{{ role_arn }}'
database_groups:
- '{{ database_groups[0] }}'
cluster_id: '{{ cluster_id }}'
port: null
database: '{{ database }}'
host: '{{ host }}'
identity_center_configuration: null
my_sql_parameters:
port: null
database: '{{ database }}'
host: '{{ host }}'
sql_server_parameters:
port: null
database: '{{ database }}'
host: '{{ host }}'
snowflake_parameters:
warehouse: '{{ warehouse }}'
database_access_control_role: '{{ database_access_control_role }}'
database: '{{ database }}'
oauth_parameters: null
host: '{{ host }}'
authentication_type: null
amazon_elasticsearch_parameters:
domain: '{{ domain }}'
amazon_open_search_parameters:
domain: '{{ domain }}'
postgre_sql_parameters:
port: null
database: '{{ database }}'
host: '{{ host }}'
aurora_parameters:
port: null
database: '{{ database }}'
host: '{{ host }}'
s3_parameters:
manifest_file_location:
bucket: '{{ bucket }}'
key: '{{ key }}'
role_arn: '{{ role_arn }}'
trino_parameters:
port: null
host: '{{ host }}'
catalog: '{{ catalog }}'
databricks_parameters:
port: null
host: '{{ host }}'
sql_endpoint_path: '{{ sql_endpoint_path }}'
- name: type
value: '{{ type }}'
- name: vpc_connection_properties
value: null
- name: alternate_data_source_parameters
value:
- null
- name: aws_account_id
value: '{{ aws_account_id }}'
- name: permissions
value:
- principal: '{{ principal }}'
actions:
- '{{ actions[0] }}'
- name: ssl_properties
value:
disable_ssl: '{{ disable_ssl }}'
- name: credentials
value:
secret_arn: '{{ secret_arn }}'
copy_source_arn: '{{ copy_source_arn }}'
credential_pair:
alternate_data_source_parameters:
- null
username: '{{ username }}'
password: '{{ password }}'
- name: data_source_id
value: '{{ data_source_id }}'
- name: tags
value:
- key: '{{ key }}'
value: '{{ value }}'
UPDATE example
Use the following StackQL query and manifest file to update a data_source resource, using stack-deploy.
/*+ update */
UPDATE awscc.quicksight.data_sources
SET PatchDocument = string('{{ {
"ErrorInfo": error_info,
"FolderArns": folder_arns,
"Name": name,
"DataSourceParameters": data_source_parameters,
"VpcConnectionProperties": vpc_connection_properties,
"AlternateDataSourceParameters": alternate_data_source_parameters,
"Permissions": permissions,
"SslProperties": ssl_properties,
"Credentials": credentials,
"Tags": tags
} | generate_patch_document }}')
WHERE
region = '{{ region }}' AND
Identifier = '{{ aws_account_id }}|{{ data_source_id }}';
DELETE example
/*+ delete */
DELETE FROM awscc.quicksight.data_sources
WHERE
Identifier = '{{ aws_account_id }}|{{ data_source_id }}' AND
region = 'us-east-1';
Permissions
To operate on the data_sources resource, the following permissions are required:
- Read
- Create
- Update
- List
- Delete
quicksight:DescribeDataSource,
quicksight:DescribeDataSourcePermissions,
quicksight:ListTagsForResource
quicksight:CreateDataSource,
quicksight:DescribeDataSource,
quicksight:DescribeDataSourcePermissions,
quicksight:TagResource,
quicksight:ListTagsForResource,
quicksight:CreateFolderMembership,
quicksight:DeleteFolderMembership,
quicksight:ListFoldersForResource
quicksight:DescribeDataSource,
quicksight:DescribeDataSourcePermissions,
quicksight:UpdateDataSource,
quicksight:UpdateDataSourcePermissions,
quicksight:CreateFolderMembership,
quicksight:DeleteFolderMembership,
quicksight:ListFoldersForResource,
quicksight:TagResource,
quicksight:UntagResource,
quicksight:ListTagsForResource
quicksight:DescribeDataSource,
quicksight:ListDataSources
quicksight:DescribeDataSource,
quicksight:DescribeDataSourcePermissions,
quicksight:DeleteDataSource,
quicksight:ListTagsForResource