@@ -17,6 +17,9 @@ static class AuthConnectionString
1717 public static readonly string SsoUser = Environment . GetEnvironmentVariable ( "SNOWFLAKE_AUTH_TEST_BROWSER_USER" ) ;
1818 public static readonly string Host = Environment . GetEnvironmentVariable ( "SNOWFLAKE_AUTH_TEST_HOST" ) ;
1919 public static readonly string SsoPassword = Environment . GetEnvironmentVariable ( "SNOWFLAKE_TEST_OKTA_PASS" ) ;
20+ public static readonly string SnowflakeUser = Environment . GetEnvironmentVariable ( "SNOWFLAKE_AUTH_TEST_SNOWFLAKE_USER" ) ;
21+ public static readonly string SnowflakeRole = Environment . GetEnvironmentVariable ( "SNOWFLAKE_AUTH_TEST_INTERNAL_OAUTH_SNOWFLAKE_ROLE" ) ;
22+
2023
2124 private static SFSessionProperties GetBaseConnectionParameters ( )
2225 {
@@ -29,7 +32,20 @@ private static SFSessionProperties GetBaseConnectionParameters()
2932 { SFSessionProperty . DB , Environment . GetEnvironmentVariable ( "SNOWFLAKE_AUTH_TEST_DATABASE" ) } ,
3033 { SFSessionProperty . SCHEMA , Environment . GetEnvironmentVariable ( "SNOWFLAKE_AUTH_TEST_SCHEMA" ) } ,
3134 { SFSessionProperty . WAREHOUSE , Environment . GetEnvironmentVariable ( "SNOWFLAKE_AUTH_TEST_WAREHOUSE" ) } ,
35+ { SFSessionProperty . MINPOOLSIZE , "0" } ,
36+ { SFSessionProperty . CLIENT_STORE_TEMPORARY_CREDENTIAL , "false" }
37+ } ;
38+ return properties ;
39+ }
40+
41+ public static SFSessionProperties GetSnowflakeLoginCredentials ( )
42+ {
43+ var properties = new SFSessionProperties ( )
44+ {
45+ { SFSessionProperty . USER , Environment . GetEnvironmentVariable ( "SNOWFLAKE_AUTH_TEST_EXTERNAL_OAUTH_OKTA_CLIENT_ID" ) } ,
46+ { SFSessionProperty . PASSWORD , Environment . GetEnvironmentVariable ( "SNOWFLAKE_AUTH_TEST_EXTERNAL_OAUTH_OKTA_USER_PASSWORD" ) }
3247 } ;
48+
3349 return properties ;
3450 }
3551
@@ -41,6 +57,57 @@ public static SFSessionProperties GetExternalBrowserConnectionString()
4157 return properties ;
4258 }
4359
60+ public static SFSessionProperties GetOAuthExternalAuthorizationCodeConnectionString ( )
61+ {
62+ var properties = GetBaseConnectionParameters ( ) ;
63+ properties . Add ( SFSessionProperty . AUTHENTICATOR , "OAUTH_AUTHORIZATION_CODE" ) ;
64+ properties . Add ( SFSessionProperty . OAUTHCLIENTID , Environment . GetEnvironmentVariable ( "SNOWFLAKE_AUTH_TEST_EXTERNAL_OAUTH_OKTA_CLIENT_ID" ) ) ;
65+ properties . Add ( SFSessionProperty . OAUTHCLIENTSECRET , Environment . GetEnvironmentVariable ( "SNOWFLAKE_AUTH_TEST_EXTERNAL_OAUTH_OKTA_CLIENT_SECRET" ) ) ;
66+ properties . Add ( SFSessionProperty . OAUTHREDIRECTURI , Environment . GetEnvironmentVariable ( "SNOWFLAKE_AUTH_TEST_EXTERNAL_OAUTH_OKTA_REDIRECT_URI" ) ) ;
67+ properties . Add ( SFSessionProperty . OAUTHAUTHORIZATIONURL , Environment . GetEnvironmentVariable ( "SNOWFLAKE_AUTH_TEST_EXTERNAL_OAUTH_OKTA_AUTH_URL" ) ) ;
68+ properties . Add ( SFSessionProperty . OAUTHTOKENREQUESTURL , Environment . GetEnvironmentVariable ( "SNOWFLAKE_AUTH_TEST_EXTERNAL_OAUTH_OKTA_TOKEN" ) ) ;
69+ properties . Add ( SFSessionProperty . USER , SsoUser ) ;
70+
71+ return properties ;
72+ }
73+
74+ public static SFSessionProperties GetOAuthSnowflakeAuthorizationCodeConnectionParameters ( )
75+ {
76+ var properties = GetBaseConnectionParameters ( ) ;
77+ properties . Add ( SFSessionProperty . AUTHENTICATOR , "OAUTH_AUTHORIZATION_CODE" ) ;
78+ properties . Add ( SFSessionProperty . OAUTHCLIENTID , Environment . GetEnvironmentVariable ( "SNOWFLAKE_AUTH_TEST_INTERNAL_OAUTH_SNOWFLAKE_CLIENT_ID" ) ) ;
79+ properties . Add ( SFSessionProperty . OAUTHCLIENTSECRET , Environment . GetEnvironmentVariable ( "SNOWFLAKE_AUTH_TEST_INTERNAL_OAUTH_SNOWFLAKE_CLIENT_SECRET" ) ) ;
80+ properties . Add ( SFSessionProperty . OAUTHREDIRECTURI , Environment . GetEnvironmentVariable ( "SNOWFLAKE_AUTH_TEST_INTERNAL_OAUTH_SNOWFLAKE_REDIRECT_URI" ) ) ;
81+ properties [ SFSessionProperty . ROLE ] = Environment . GetEnvironmentVariable ( "SNOWFLAKE_AUTH_TEST_INTERNAL_OAUTH_SNOWFLAKE_ROLE" ) ;
82+ properties . Add ( SFSessionProperty . USER , Environment . GetEnvironmentVariable ( "SNOWFLAKE_AUTH_TEST_EXTERNAL_OAUTH_OKTA_CLIENT_ID" ) ) ;
83+
84+ return properties ;
85+ }
86+
87+ public static SFSessionProperties GetOAuthSnowflakeAuthorizationCodeWilidcardsConnectionParameters ( )
88+ {
89+ var properties = GetBaseConnectionParameters ( ) ;
90+ properties . Add ( SFSessionProperty . AUTHENTICATOR , "OAUTH_AUTHORIZATION_CODE" ) ;
91+ properties . Add ( SFSessionProperty . OAUTHCLIENTID , Environment . GetEnvironmentVariable ( "SNOWFLAKE_AUTH_TEST_INTERNAL_OAUTH_SNOWFLAKE_WILDCARDS_CLIENT_ID" ) ) ;
92+ properties . Add ( SFSessionProperty . OAUTHCLIENTSECRET , Environment . GetEnvironmentVariable ( "SNOWFLAKE_AUTH_TEST_INTERNAL_OAUTH_SNOWFLAKE_WILDCARDS_CLIENT_SECRET" ) ) ;
93+ properties [ SFSessionProperty . ROLE ] = Environment . GetEnvironmentVariable ( "SNOWFLAKE_AUTH_TEST_INTERNAL_OAUTH_SNOWFLAKE_ROLE" ) ;
94+ properties . Add ( SFSessionProperty . USER , Environment . GetEnvironmentVariable ( "SNOWFLAKE_AUTH_TEST_EXTERNAL_OAUTH_OKTA_CLIENT_ID" ) ) ;
95+
96+ return properties ;
97+ }
98+
99+ public static SFSessionProperties GetOAuthExternalClientCredentialParameters ( )
100+ {
101+ var properties = GetBaseConnectionParameters ( ) ;
102+ properties . Add ( SFSessionProperty . AUTHENTICATOR , "OAUTH_CLIENT_CREDENTIALS" ) ;
103+ properties . Add ( SFSessionProperty . OAUTHCLIENTID , Environment . GetEnvironmentVariable ( "SNOWFLAKE_AUTH_TEST_EXTERNAL_OAUTH_OKTA_CLIENT_ID" ) ) ;
104+ properties . Add ( SFSessionProperty . OAUTHCLIENTSECRET , Environment . GetEnvironmentVariable ( "SNOWFLAKE_AUTH_TEST_EXTERNAL_OAUTH_OKTA_CLIENT_SECRET" ) ) ;
105+ properties . Add ( SFSessionProperty . OAUTHTOKENREQUESTURL , Environment . GetEnvironmentVariable ( "SNOWFLAKE_AUTH_TEST_EXTERNAL_OAUTH_OKTA_TOKEN" ) ) ;
106+ properties . Add ( SFSessionProperty . USER , Environment . GetEnvironmentVariable ( "SNOWFLAKE_AUTH_TEST_EXTERNAL_OAUTH_OKTA_CLIENT_ID" ) ) ;
107+
108+ return properties ;
109+ }
110+
44111 public static SFSessionProperties GetOauthConnectionString ( string token )
45112 {
46113 var properties = GetBaseConnectionParameters ( ) ;
@@ -71,6 +138,13 @@ public static SFSessionProperties GetKeyPairFromFileContentParameters(string pri
71138 return properties ;
72139 }
73140
141+ public static SFSessionProperties GetPatConnectionParameters ( )
142+ {
143+ var properties = GetBaseConnectionParameters ( ) ;
144+ properties . Add ( SFSessionProperty . AUTHENTICATOR , "PROGRAMMATIC_ACCESS_TOKEN" ) ;
145+ properties . Add ( SFSessionProperty . USER , SsoUser ) ;
146+ return properties ;
147+ }
74148
75149 public static SFSessionProperties GetKeyPairFromFilePathConnectionString ( string privateKeyPath )
76150 {
0 commit comments