簡體   English   中英

VS C# Sql Client unable to connect to SQL Server, uses Windows auth instead of SQL Server auth

[英]VS C# Sql Client unable to connect to SQL Server, uses Windows auth instead of SQL Server auth

我有兩個使用 VS 2017 的桌面客戶端。我繼承了一個 C# .NET 應用程序,該應用程序連接到隔壁房間的 SQL 服務器。 當我們執行 SQL 查詢時,我們通常使用 SQL 服務器身份驗證(而不是 Windows 身份驗證)。

我使用一個看起來像這樣的連接字符串......

"Data Source=DR101; User Id = DR_DATA; Password = CD7504st; Integrated Security=SSPI; TransparentNetworkIPResolution=False"

...這就像第一個桌面的魅力一樣。 從第二個桌面它總是無法訪問數據庫,給出一個錯誤指示 Windows 登錄失敗...

...拋出異常。
System.Data.SqlClient.SqlException:用戶“SDAR\SdarAutoSvc”登錄失敗

我已經比較了這兩個系統之間我能想到的一切。 據我所知,它們在幾乎所有方面都是相同的......都使用相同的 Visual Studio(幫助 > 關於,並比較了模塊版本的長列表。在兩個系統上相同),相同的System.Data.dll模塊,同樣的App.config , C# 源碼,輸入數據等。

失敗的系統僅通過此 Visual Studio 應用程序失敗 - 即,我可以使用 SQL 服務器憑據(不是 Windows 身份驗證)通過 SMSS 從該桌面訪問數據庫服務器。

我不知道這第二台機器如何可能無法訪問數據庫,以及為什么它顯然使用 Windows 身份驗證而不是連接字符串中的 sql 用戶 ID/密碼。

如果您想要SQL 服務器身份驗證,則刪除Integrated Security=SSPI 從連接字符串。

試試這個連接字符串 -

 "Data Source=DR101; User Id = DR_DATA; Password = CD7504st; TransparentNetworkIPResolution=False"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM