Class SnowflakeCredentialsProvider
- java.lang.Object
-
- com.amazonaws.athena.connectors.snowflake.SnowflakeCredentialsProvider
-
- All Implemented Interfaces:
CredentialsProvider
public class SnowflakeCredentialsProvider extends Object implements CredentialsProvider
Snowflake credentials provider that manages multiple authentication methods. This provider handles OAuth token lifecycle, key-pair authentication, and password authentication. Authentication method is automatically determined based on the secret contents.
-
-
Field Summary
Fields Modifier and Type Field Description static StringACCESS_TOKENstatic StringEXPIRES_INstatic StringFETCHED_ATstatic StringREFRESH_TOKEN
-
Constructor Summary
Constructors Constructor Description SnowflakeCredentialsProvider(String oauthSecretName)SnowflakeCredentialsProvider(String oauthSecretName, software.amazon.awssdk.services.secretsmanager.SecretsManagerClient secretsClient)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description DefaultCredentialsgetCredential()Retrieves credentials for database connection.Map<String,String>getCredentialMap()Retrieves credential properties for database connection.
-
-
-
Field Detail
-
ACCESS_TOKEN
public static final String ACCESS_TOKEN
- See Also:
- Constant Field Values
-
FETCHED_AT
public static final String FETCHED_AT
- See Also:
- Constant Field Values
-
REFRESH_TOKEN
public static final String REFRESH_TOKEN
- See Also:
- Constant Field Values
-
EXPIRES_IN
public static final String EXPIRES_IN
- See Also:
- Constant Field Values
-
-
Method Detail
-
getCredential
public DefaultCredentials getCredential()
Description copied from interface:CredentialsProviderRetrieves credentials for database connection.- Specified by:
getCredentialin interfaceCredentialsProvider- Returns:
- Credentials object (username/password or OAuth)
-
getCredentialMap
public Map<String,String> getCredentialMap()
Description copied from interface:CredentialsProviderRetrieves credential properties for database connection.- Specified by:
getCredentialMapin interfaceCredentialsProvider- Returns:
- Map containing credential properties for database connection. The default implementation returns a map with "user" and "password" keys. Overriding implementations may return additional properties as needed for their specific authentication requirements.
-
-