我正在VS2010中開發一個內部.Net應用程序,以便在我公司的Intranet內進行部署。該站點使用Windows身份驗證,以便用戶在成功通過域身份驗證時不必登錄。對於一頁,我需要從內部網獲取一些信息,包括照片和其他信息。對於員工的照片,我使用的是控制:設置img基本身份驗證的憑據
<asp:Image ID="imgPhoto" Style="display: inline-block" runat="server" CssClass="EmployeePhoto"
alt="Photo not available" />
從後端,這讓我改變照片的網址如下改變顯示哪張照片,這取決於用戶的選擇:
imgPhoto.ImageUrl = string.Format("http://{0}/{1}.jpg", MySitePath, employeePhotoPath);
但是路徑受密碼保護。是否有任何方法可以明確提供用於訪問asp:映像的憑據,以便我可以傳遞當前已通過身份驗證的用戶的憑據,而無需提示用戶進行身份驗證?
UPDATE
曾經有指定的用戶名+密碼,比如img標籤的方式:
<img src="http://username:[email protected]/photos/1.jpg">
或類似的東西。這樣憑證可以訪問目錄嗎?這現在有可能嗎?
您正在使用哪個版本的IIS?這一點很重要。另外,你在這裏交織了三個不同的問題。第一個關於Firefox的是可以解決的;然而,關於使用匿名的第二個問題隱藏在你的問題中。第三,關於第三方不夠複雜,無法通過用戶名和密碼..好吧,它提出了一個問題,你爲什麼試圖走下NTLM的道路開始。 – NotMe
我使用在Windows 2003服務器上運行的IIS V6.0。我們正在使用的PDF服務僅轉到我們提供的URL,加載頁面並將其導出到PDF。我無法將用戶名/密碼傳遞給服務,所以我確實試圖找到一種程序化方式(我不知道該怎麼說)設置用於從Intranet獲取照片的用戶名和密碼。我只是將Firefox問題用於更具體的問題示例。我的「匿名」頁面設置爲使用Windows域用戶帳戶進行身份驗證並具有訪問Intranet照片的權限。我怎樣才能不使用NTLM? – Rondel