2013-01-03 69 views
0

目前我使用的應用程序的app.config文件中此連接字符串如何使用從.NET應用程序寡婦認證,連接遠程的SQLserver如果可能的話

add name="LightSailEntities" connectionString="metadata=res://*/LightSailEntities.csdl|res://*/LightSailEntities.ssdl|res://*/LightSailEntities.msl;provider=System.Data.SqlClient;provider connection string='data source=abc.xyz.com;initial catalog=LightSail;user id=LightSail; password=yourpasswordhere;MultipleActiveResultSets=True;App=EntityFramework'" providerName="System.Data.EntityClient" 

.NET應用的領域和客戶端使用.Net應用程序的域與SQL服務器的域不同。我提到「使用寡婦的身份驗證」只是因爲,我已經在服務器計算機(意味着我可以使用遠程桌面連接)上安裝了SQL服務器的訪問。

+0

你嘗試過什麼?如果防火牆設置權 – nunespascal

+0

是您的Windows帳戶添加到裏面SQLSERVER安全表你不應該面對任何問題嗎? – AssaultingCuccos

+0

你爲什麼給密碼?集成安全性不是密碼和用戶名,進程必須在AD集成帳戶中運行。不這樣做,這是不可能的。 – TomTom

回答

2

對於Windows身份驗證,你並不需要設置用戶ID和密碼,但你確實需要包括「集成安全性= SSPI;」

嘗試:

add name="LightSailEntities" connectionString="metadata=res://*/LightSailEntities.csdl|res://*/LightSailEntities.ssdl|res://*/LightSailEntities.msl;provider=System.Data.SqlClient;provider connection string='data source=dev.shopcube.com;initial catalog=LightSail;Integrated Security=SSPI;MultipleActiveResultSets=True;App=EntityFramework'" providerName="System.Data.EntityClient" 

還有多一點的信息在這裏: http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlconnection.connectionstring(VS.71).aspx

+0

的人誰的興趣,還有「集成安全性=真」(由@Marcin提到的)和「集成安全性= SSPI」之間的差異。詳細信息在這裏介紹:http://stackoverflow.com/questions/1229691/difference-between-integrated-security-true-and-integrated-security-sspi – Vaze

0

優爾可以使用下面的代碼:

SqlConnection conn = new SqlConnection(Configuration.DBConn); 

,或者如果你使用LINQ2SQL:

DBContext ctx = new DBContext(Configuration.DBConn);

對在構成類DBConn字符串包含連接字符串爲sql即:

Data Source=XYZ\\DEV;Initial Catalog=YOURDB;Integrated Security=True;Connect Timeout=600;connection lifetime=600

Integrated Security=True告訴您要使用Windows驗證。

+0

OP正在使用EF。 – Candide

+0

好吧,你是對的...... :) –

1

你必須改變的ConnectionString使用的userIntegrated Security=SSPI insetad和password

add name="LightSailEntities" 
connectionString="metadata=res://*/LightSailEntities.csdl|res://*/LightSailEntities.ssdl|res://*/LightSailEntities.msl; 
provider=System.Data.SqlClient; 
provider connection string='data source=dev.shopcube.com;initial catalog=LightSail;Integrated Security=SSPI;MultipleActiveResultSets=True;App=EntityFramework'" 
providerName="System.Data.EntityClient" 

之後,看看Identity設置爲你的應用程序的Application Pool
該用戶必須被授權訪問內部Object Explorer泛Management Studio中的使用Security\Logins您的數據庫

相關問題