2011-06-23 48 views
9

我有一個在IIS 6.0上運行的asp.net 2.0應用程序。我正在使用集成Windows身份驗證。一些用戶有兩個網絡帳戶,一個個人帳戶和一個管理帳戶。我面臨的問題是,有時當他們使用他們的個人賬戶登錄到客戶端時,登錄的用戶將作爲管理員賬戶出現在服務器端。我使用System.Security.Principal.WindowsIdentity.GetCurrent()。名稱檢索登錄的用戶網絡ID。 我懷疑他們的管理員憑據被緩存在某處並通過。集成的Windows身份驗證顯示錯誤登錄用戶

回答

11

我有正好這個同樣的問題。即使我以我的個人帳戶登錄,該網站仍然將我視爲管理員帳戶進行身份驗證。

事實證明,在Windows中,您可以將特定用戶名和密碼與特定網站相關聯。一旦完成,通過IE(和Chrome!)的集成身份驗證將始終使用這些憑據。而且,爲了讓事情變得簡單,通過Internet Explorer的設置或選項來訪問這些設置並沒有明顯的方法。

要修復的Windows XP您的問題:

  1. 單擊開始,設置,控制面板,用戶帳戶。
  2. 單擊高級選項卡。
  3. 單擊管理密碼。
  4. 在列表中找到與您看到此行爲的網站對應的條目。去掉它。

信用證到期時的信用:這個答案几乎是從一個未命名的「初級會員」在ObjectMix逐字採取的。

+0

不是我的問題,但我有同樣的問題 - 但是,我只是嘗試這樣做,沒有運氣。該網站在每次新訪問時都會提示(通過瀏覽器彈出)AD憑據,無論是IE,FireFox還是Chrome。如果我在我的開發機器上本地運行該站點,它會提取我的正確用戶名。如果我登錄到遠程直播站點,它會找到我以前擁有的舊帳戶名稱。 – Widor

+0

@Widor我不太清楚我的理解。你是否也經歷了遠程現場的這些步驟? (換句話說,您必須在運行Internet Explorer的機器上的答案中執行這些步驟。) –

+0

啊,我明白了!當我在倫敦的用戶無法訪問網站,但其他用戶時,將訪問該機器並報告返回... – Widor

4

對於Windows 7,使用「控制面板/憑證管理器」(也可通過「控制面板/用戶帳戶/管理憑證」)。這列出了所有緩存的憑據,並可讓您輕鬆刪除導致問題的憑證。

1

當您使用遠程桌面連接到服務器並保存您的登錄憑據時,它不僅可以將它們保存到遠程桌面,還可以通過IE和Chrome瀏覽器進行連接。

0

我的電腦在工作中被鎖定,IT人員從控制面板的菜單中刪除了Credential Manager。

我能夠通過從命令行運行cmdkey/list來解決此問題。在「當前存儲的憑據」列表中找到了違規主機名,並運行了cmdkey/delete:[主機名](沒有方括號並將hostname替換爲主機名),這爲我解決了問題。

根據to this site,rundll32.exe keymgr.dll,KRShowKeyMgr會調出對話框來執行此操作。

一些背景資料:http://windows.microsoft.com/en-gb/windows7/what-is-credential-manager

相關問題