Skip to content

Redshift destination IAM support#3

Open
prakhar0042 wants to merge 8 commits into
masterfrom
feature/redshift-destination-iam-support
Open

Redshift destination IAM support#3
prakhar0042 wants to merge 8 commits into
masterfrom
feature/redshift-destination-iam-support

Conversation

@prakhar0042
Copy link
Copy Markdown
Collaborator

What

Enables IAM role support for authentication in staging process.

How

Review guide

User Impact

Can this PR be safely reverted and rolled back?

  • YES 💚
  • NO ❌

dmanojbabu added 7 commits May 8, 2026 14:21
…e_arn field

Support IAM role-based authentication (IRSA / instance profile) by making
access_key_id and secret_access_key optional. Add iam_role_arn for explicit
Redshift COPY IAM role specification.
Use IAM_ROLE syntax for DefaultAWSCredentialsProviderChain (IRSA/instance profile), CREDENTIALS for static keys, and handle ASSUME_ROLE with session
token. Exhaustive when-branch prevents silent breakage if S3CredentialType grows.
Extract iam_role_arn from S3 options in both check() and getSerializedMessageConsumer() and pass it to RedshiftStagingStorageOperation.
access_key_id and secret_access_key are now optional for IRSA users,
so they should not be checked in anyOfS3FieldsAreNullOrEmpty.
…ration

Cover ACCESS_KEY, DEFAULT_PROFILE (with and without explicit ARN),
ASSUME_ROLE with and without session token, ARN validation, and
precedence when both static keys and IAM role ARN are configured.
…nd iam_role_arn

Verify that configs without access_key_id/secret_access_key pass
validation, and that iam_role_arn is accepted in the spec.
Add support for IAM role-based authentication (IRSA / instance profile)
for S3 staging and Redshift COPY commands.
@prakhar0042 prakhar0042 self-assigned this May 8, 2026
@prakhar0042 prakhar0042 marked this pull request as ready for review May 8, 2026 12:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants