2013-10-02 55 views
0

我已經編寫了一個使用Microsoft.Exchange.WebServices(EWS)訪問電子郵件帳戶的Windows服務。目前,電子郵件帳戶的憑證是在Windows服務的源代碼中硬編碼的。我的問題是,這裏的最佳做法是什麼,就電子郵件的憑證而言?它應該保持原樣,這在Windows服務的源代碼中是硬編碼的?如果我們決定更改電子郵件的密碼,那麼我們必須更改服務的源代碼。任何有關最佳實踐的見解將不勝感激。在Windows服務中使用的Exchange電子郵件帳戶的憑證

回答

0

我最近開發了一些類似的東西。我們使用模擬ews。所以你可以使用你的服務運行的憑據。 這就是它的工作原理...... 您創建一個普通的域用戶並設置該用戶的模擬權限。 ---對不起,我從我的手機寫信,否則我會鏈接到msdn-網站,但我相信你的searchengine會找到該網站--- 比你設置service.UseDefaultCredentials = true和服務.ImpersonatedUserID = new ImpersonationId(type.smtp,「[email protected]」) 因此,如果您將我的代碼更正爲真實的語法,則不必存儲任何密碼。目標郵箱可能來自您喜歡的任何類型的配置。 希望這可以幫助你。

0

如果您想使用一個帳戶訪問另一個帳戶的詳細信息,模擬是很好的;但這並不能解決我認爲你有的問題,因爲你需要提供Impersonator的憑證,並且遇到同樣的問題。

您的服務是否通過EWS訪問數據?如果是這樣,請使用它。 如果不是,請使用項目屬性爲用戶名,密碼和域定義應用程序設置;然後調整app.config

您可以在運行時使用以下命令訪問設置: (C#)Properties.Settings.Default.InterAcctDirectory;或者 (VB)My.Settings

相關問題