上,我從IIS7(WebAdmin的)在Windows 2008上運行塞雷爾語傳統的ASP網站試圖寫一個服務器(web05)的文件經典ASP模擬問題。這會失敗,web05會在保存操作過程中記錄匿名登錄嘗試。IIS7的Windows 2008服務器
WebAdmin的網站在經典模式的應用程序池使用域用戶的進程帳戶運行。流程帳戶有權「將此用戶委派給任何服務(僅Kerberos)」。這同樣適用於web05和webadmin服務器。
該網站使用Windows身份驗證和想法是,當我登錄我的域用戶在網站上,我的用戶權利應該定義哪些允許我在IIS站點的情況下做的。如果我打開基本身份驗證,一切正常。
我也使用setspn.exe爲URL添加一個SPN。如果鍵入SETSPN.EXE -L WebAdmin中,我得到:
HTTP/webadmin.companyname.com
TERMSRV/webadmin
TERMSRV/webadmin.companypub.local
HOST/webadmin
HOST/webadmin.companypub.local
所以從我瞭解的SPN的設置是否正確。
如果我在執行保存操作時在webadmin上運行processmonitor,它表示該進程確實模擬我的域用戶 - 但獲得「訪問被拒絕」(並且正如我之前所說,web05記錄了匿名登錄嘗試)。
任何想法是什麼原因造成的?
親切的問候, 西蒙
你完全正確的說我迷惑了假冒。所以,如果我回去開始並問自己我想做什麼:我希望我的域用戶通過身份驗證,這樣我就可以讓他的傳統ASP站點使用我的域用戶憑據寫入另一臺服務器上的文件。 我在正確的軌道上跟我使用Windows身份驗證完成它的方式?匿名身份驗證未啓用。 我想從ADODB流對象中保存文件。 FileSytemObject也失敗。 – nitech 2010-02-03 14:01:32
是的,你是在正確的軌道上,如果你想在客戶端用戶身份下完成活動,關閉匿名訪問,至少在包含你的代碼的頁面,並打開Windows集成安全。假設用戶擁有正確的權限,代碼應該可以工作。 – AnthonyWJones 2010-02-03 14:37:46
這很好。但是,我已經關閉了匿名訪問並打開了Windows身份驗證。我可以在站點上使用我的域用戶登錄 - 用戶甚至可以對數據庫訪問進行身份驗證(使用Windows身份驗證的系統dsn),但即使登錄用戶擁有適當的權限,我也無法將文件保存在遠程服務器上權利。 – nitech 2010-02-09 08:00:32