情景:我不想使用服務器Windows憑據連接到數據庫,而是想使用個人訪問網站的Windows憑據。如何使用客戶端窗口憑據連接到Web上的SQL Server數據庫
- IIS託管服務器IP:10.10.10.10
- 網站從客戶機訪問:10.10.10.11
我想使用的憑據從登錄用戶的10.10.10.11用於訪問數據庫。
有沒有辦法做到這一點?我試圖在谷歌廣泛搜索,並沒有得到正確的答案。請讓我知道如何做到這一點,或者讓我領先一步以完成這一任務。
情景:我不想使用服務器Windows憑據連接到數據庫,而是想使用個人訪問網站的Windows憑據。如何使用客戶端窗口憑據連接到Web上的SQL Server數據庫
我想使用的憑據從登錄用戶的10.10.10.11用於訪問數據庫。
有沒有辦法做到這一點?我試圖在谷歌廣泛搜索,並沒有得到正確的答案。請讓我知道如何做到這一點,或者讓我領先一步以完成這一任務。
更改配置爲
<configuration>
<system.web>
<authentication mode="Windows"/>
<identity impersonate="true" />
</system.web>
</configuration>
,並轉到IIS服務器>>網站>>網站>>認證
Anonymous Authentication >> Disabled
ASP.Net Impersonation >> Enabled
Basic Authentication >> Enabled
Forms Authentication >> Disabled
Windows Authentication >> Disabled
這將生成憑證的彈出窗口。輸入憑證後,將用於連接到數據庫。
如果使用Windows身份驗證,您可以簡單地使用Impersonation使網絡工作者進程的當前線程使用客戶端的用戶憑據
在web.config中:
<configuration>
<system.web>
<identity impersonate="true" />
</system.web>
</configuration>
,使ado.net連接使用相同的用戶通過將此屬性添加到連接字符串(假設您使用SQL Server或任何其他支持此選項的DBMS)
Integrated Security=sspi
我認爲你需要設置和使用一些模擬(通過web.config)連同字符串修飾符「Integrated Security = true」,但我從來沒有這樣做,所以我不能提供具體的方向。雖然這可能會給你如此的想法。 – CodingGorilla
我認爲集成安全性只有在客戶端位於同一個域時纔有效 –