2017-02-27 44 views
0

我們有一個打開SSL的MySql數據庫。從Azure Cloud Service Web應用程序連接到MySql的連接字符串是什麼?

我們有一個Azure雲服務,我們安裝我們的證書。

我們使用的是.Net MySql Connector的v6.9.9。

請看下面 - 有沒有人看到我們做錯了什麼?連接字符串是否正確?有人可以在Azure的雲環境中解釋「證書位置」是什麼?

任何幫助,非常感謝。謝謝。

基於這些鏈接:

https://dev.mysql.com/doc/connector-net/en/connector-net-tutorials-ssl.html 

https://dev.mysql.com/doc/connector-net/en/connector-net-connection-options.html 

https://www.connectionstrings.com/mysql-connector-net-mysqlconnection/ 

我們使用的是像這樣的連接字符串:

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword; 
SSL Mode=Required;Certificate Store Location=CurrentUser; 
Certificate Thumbprint=479436009a40f3017a145cf8479e7694d7aadef0; 

的問題 - 當我運行我們的代碼,我得到一個MySQL例外:

不支持關鍵字。參數名:證書指紋

在MySql.Data.MySqlClient.MySqlConnectionStringBuilder.set_Item(字符串關鍵字,對象的值) 在System.Data.Common.DbConnectionStringBuilder.set_ConnectionString(字符串值) 在MySql.Data.MySqlClient。 MySqlConnectionStringBuilder..ctor(字符串connStr) 在MySql.Data.MySqlClient.MySqlConnection.set_ConnectionString(字符串值)

更新:這個問題的 部分原因是,在證書的存儲位置和證書指紋的「空間」。我已經刪除這些空間,並且還試圖使用該位置爲 「LOCALMACHINE」

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword; 
SSL Mode=Required;CertificateStoreLocation=LocalMachine; 
CertificateThumbprint=479436009a40f3017a145cf8479e7694d7aadef0; 

然而,我的新的錯誤是:

證書與指紋479436009a40f3017a145cf8479e7694d7aadef0沒有發現

的MySQL。在MySql.Data.MySqlClient.NativeDriver.StartSSL上的Data.MySqlClient.NativeDriver.GetClientCertificates()在MySql.Data.MySqlClient.NativeDriver.Open()上的MySql.Data.MySqlClient.Driver.Open()在MySql.Data。 MySql.Client.Driver.Create(MySqlConnectionStringBuilder設置)在MySql.Data.MySqlClie在MySql.Data.MySqlClient.MySqlPool.GetPooledConnection()在MySql.Data.MySqlClient.MySqlPool.TryToGetDriver()在MySql.Data.MySqlClient.MySqlPool.GetConnection()在MySql.Data.MySqlClient nt.MySqlPool.CreateNewPooledConnection()。 MySqlConnection.Open()在Cmm.Data.MySql.MySqlContext.get_DbConnection()

回答

0

首先嚐試將證書上傳到您的雲服務,然後更改證書位置「LOCALMACHINE」。

我希望這會有所幫助。

+0

謝謝,試過這個但仍然獲得thumprint證書....未找到。我們已經在Azure中安裝了證書,並使用列在那裏的thumprint,但仍然沒有運氣。 – Raymond

+0

您是否知道我們是否必須使用證書「配置」我們的Cloud Service(Web角色和工作者角色)?我認爲通過Azure門戶上傳就足夠了,並且在Visual Studio中的Cloud Service配置中進行配置僅適用於Web HTTPS方面的事情? – Raymond

+0

是的。您需要使用證書配置雲服務。嘗試將證書上傳到雲服務。 –

相關問題