2010-07-09 100 views
0

我有一個繼承System.ServiceProcess.ServiceBase的窗口服務。當以調試模式運行時(未經測試編譯),線程不會看到當前的用戶憑證。ServiceBase憑證

我需要憑據,所以我可以設置WebProxy,我寧願使用服務正在運行的帳戶,而不是將用戶和pwd作爲字符串傳遞。

有人可以幫我弄清楚爲什麼從ServiceBase繼承的類中運行的代碼沒有登錄用戶的憑據嗎?

回答

0

我解決了我的問題。

首先,您可以通過WindowsIdentity對象訪問用戶,但這畢竟不是問題。證書確實是空白的,但它是由一些項目設置引起的。

作爲一種解決方案,我創建了一個新的Windows服務項目,並添加了我的原始類文件,並且所有工作都非常棒。我確實嘗試過文件比較,沒有發現新舊項目之間的確切原因或差異。不過,我懷疑這是清單文件(UAC)存在的事實,或者可能是我的配置文件中basicHttpBinding中的設置。