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 String
ACCESS_TOKEN
static String
EXPIRES_IN
static String
FETCHED_AT
static String
REFRESH_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 DefaultCredentials
getCredential()
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:CredentialsProvider
Retrieves credentials for database connection.- Specified by:
getCredential
in interfaceCredentialsProvider
- Returns:
- Credentials object (username/password or OAuth)
-
getCredentialMap
public Map<String,String> getCredentialMap()
Description copied from interface:CredentialsProvider
Retrieves credential properties for database connection.- Specified by:
getCredentialMap
in 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.
-
-