Skip to content

Snowflake: key-pair auth from a Malloy config file - #3172

Merged
mtoy-googly-moogly merged 3 commits into
mainfrom
snowflake-keypair-authenticator
Oct 22, 2026
Merged

mtoy-googly-moogly merged 3 commits into
mainfrom
snowflake-keypair-authenticator

Conversation

@mtoy-googly-moogly

@mtoy-googly-moogly mtoy-googly-moogly commented Oct 21, 2026 •

Copy link
Copy Markdown
Collaborator

Fixes #3046. Snowflake key-pair auth couldn't be set up from a Malloy config file. snowflake-sdk only uses the key when authenticator is SNOWFLAKE_JWT, and authenticator wasn't a declared property, so the config compiler dropped it and the driver asked for a password.

authenticator is now declared, and a private key given without one implies SNOWFLAKE_JWT, so a config that supplies only the key works as written.

A config with both a password and a key, and no authenticator, used to log in with the password; it now uses the key.

Along the way we also:

  • add the missing privateKey to the Snowflake property list in packages/malloy/src/connection/CONTEXT.md

Followup:

  • Add authenticator to the Snowflake table in malloydata.github.io src/documentation/setup/config.malloynb, noting that a key takes precedence over a password

Declare the authenticator property, and default it to SNOWFLAKE_JWT when
a private key is given without one.

Fixes #3046
Also type the createPool spy in the config test.
The driver ignores an empty privateKeyPath, so it must not switch a
password login to key-pair auth.
@mtoy-googly-moogly
mtoy-googly-moogly merged commit 74ff1c7 into main Oct 22, 2026
21 checks passed
@mtoy-googly-moogly
mtoy-googly-moogly deleted the snowflake-keypair-authenticator branch October 22, 2026 01:55
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.

Snowflake key-pair auth is unreachable from a connections config file

1 participant