Amazon Redshift Setup Instructions
Prerequisites
- An Amazon Redshift provisioned cluster or Serverless workgroup
- An AWS IAM user with Redshift Data API permissions
- The cluster identifier or workgroup name
- Your database name and AWS region
Step 1: Create an IAM Policy
Create an IAM policy with the minimum required permissions:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"redshift-data:ExecuteStatement",
"redshift-data:DescribeStatement",
"redshift-data:GetStatementResult",
"redshift-data:CancelStatement"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": [
"redshift:GetClusterCredentials"
],
"Resource": [
"arn:aws:redshift:*:*:dbuser:*/vendo_reader",
"arn:aws:redshift:*:*:dbname:*/your_database"
]
}
]
}For Redshift Serverless, replace the redshift:GetClusterCredentials action with:
{
"Effect": "Allow",
"Action": [
"redshift-serverless:GetCredentials"
],
"Resource": "arn:aws:redshift-serverless:*:*:workgroup/*"
}Step 2: Create an IAM User
- Go to IAM > Users > Create user
- Attach the policy from Step 1
- Create an access key (programmatic access)
- Save the Access Key ID and Secret Access Key
Step 3: Create a Database User (Provisioned Clusters)
For provisioned clusters, create a read-only database user:
CREATE USER vendo_reader PASSWORD '<strong_password>';
GRANT USAGE ON SCHEMA public TO vendo_reader;
GRANT SELECT ON ALL TABLES IN SCHEMA public TO vendo_reader;
ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT SELECT ON TABLES TO vendo_reader;Step 4: Configure in Vendo
- Go to Sources > Add Source > Amazon Redshift
- Enter your credentials:
| Field | Description |
|---|---|
| Cluster Identifier | Provisioned cluster ID (leave empty for Serverless) |
| Workgroup Name | Serverless workgroup name (leave empty for provisioned) |
| Database | Database name (e.g. dev) |
| Database User | Optional — user for GetClusterCredentials |
| AWS Region | Region where the cluster is located |
| Access Key ID | IAM user access key |
| Secret Access Key | IAM user secret key |
- Click Test Connection
- Once verified, click Save
Troubleshooting
Statement Failed
- Verify IAM permissions include all
redshift-data:*actions - Check that the database name is correct
- For provisioned clusters, ensure
GetClusterCredentialsis allowed
Timeout
- The Redshift Data API is async — large queries may take longer
- Check that the cluster is not paused or in maintenance
- Verify the cluster/workgroup is in the specified AWS region
Permission Denied on Tables
- Run
GRANT SELECT ON ALL TABLES IN SCHEMA public TO vendo_reader - Check
ALTER DEFAULT PRIVILEGESfor future tables
Last updated on