[英]Issue with connection to snowflake using c# console application running on EC2
我有一個 C# 控制台應用程序,它使用 Snowflake .NET 連接器連接 Snowflake DB。 應用程序在我的系統上運行良好,但是如果我將該應用程序帶到 EC2 並執行,則它不會連接到 Showflake DB,並給出錯誤“SnowflakeDbException:請求達到超時”。
AWS EC2 實例和 Snowflake DB 之間的網絡連接就位。
下面是我正在使用的代碼:
static void Main(string[] args)
{
try
{
using (IDbConnection conn = new SnowflakeDbConnection())
{
conn.ConnectionString = "scheme=https;account=<accountname>;port=443;user=.
<xxxxxx>;password=<xxxxxx>;ROLE=<definedRole>;warehouse=<warehouse>;db=
<DBNAME>;schema=<schemaname>";
conn.Open(); //ERROR: "SnowflakeDbException: Request reach its timeout"
Console.WriteLine("Connection successful!");
using (IDbCommand cmd = conn.CreateCommand())
{
cmd.CommandText = "select * from TABLE1";
//data from an existing table
IDataReader reader = cmd.ExecuteReader();
while (reader.Read())
{
Console.WriteLine(reader.GetString(0));
}
conn.Close();
}
}
}
catch (DbException exc)
{
Console.WriteLine("Error Message: {0}", exc.Message);
}
}
如果我使用 powershell 執行“Test-NetConnection”命令,如下所示,那么它就成功了。
Test-NetConnection -computerName xxxx.eu-west-1.privatelink.snowflakecomputing.com -port 443
結果:TCPTestSucceeded:真
System.Net.Http.HttpRequestException:發送請求時出錯。 ---> System.Net.WebException: 底層連接已關閉:無法為 SSL/TLS 安全通道建立信任關系。 ---> System.Security.Authentication.AuthenticationException: 根據驗證程序,遠程證書無效。
您未通過CRL 檢查。 設置參數INSECUREMODE=true將禁用證書吊銷列表檢查和測試應該通過,但在生產系統中不建議這樣做。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.