Skip to content

feat: OAuth2 support#455

Open
rkravinder05 wants to merge 5 commits intoMeltanoLabs:mainfrom
rkravinder05:feat/add_oauth2_support
Open

feat: OAuth2 support#455
rkravinder05 wants to merge 5 commits intoMeltanoLabs:mainfrom
rkravinder05:feat/add_oauth2_support

Conversation

@rkravinder05
Copy link

Add OAuth 2.0 Token Authentication Support

What's Added

  • OAuth 2.0 token-based authentication for Snowflake target
  • External token management approach - users provide pre-generated access tokens
  • Added a test

Why External Token Management?

Users generate OAuth tokens outside of Meltano. This approach provides:

  • User Control: Full autonomy over token generation and lifecycle
  • Security: No OAuth flow complexity in the target itself

Configuration

target_snowflake:
  config:
    account: my_account
    user: my_user
    warehouse: my_warehouse
    role: my_role
    database: my_database
    oauth_access_token: "${SNOWFLAKE_OAUTH_TOKEN}"

@edgarrmondragon edgarrmondragon changed the title Feat/add oauth2 support feat: OAuth2 support Feb 3, 2026
@edgarrmondragon edgarrmondragon self-assigned this Feb 3, 2026
@edgarrmondragon edgarrmondragon added the enhancement New feature or request label Feb 3, 2026
Copy link
Member

@edgarrmondragon edgarrmondragon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @rkravinder05, just one question about where token should be passed to the connector?

Links

msg = "OAuth access token is required but not provided or is empty"
raise ConfigValidationError(msg)
params["authenticator"] = "oauth"
params["token"] = oauth_token
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We're passing the token in two places: here and in line 280. We probably only need one, can you confirm?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants