我有一個運行的WCF服務,託管在IIS7上,該服務使用netTcp端點進行公開,並使用Windows身份驗證(Transport
安全性和clientCredentialType="Windows"
)進行配置,並且這一切都正常。通過WCF服務傳遞NetworkCredential以與EWS API一起使用
在服務中,我使用EWS API發送電子郵件,並在Exchange服務器上檢查收件箱。我有這個工作的一部分,目前在發展中,我已通過創建一個NetworkCredential
對象通過手動指定憑證屬性。
我想要做的事情是使用用戶的身份該服務,以便我可以發送郵件,並通過他們的收件箱迭代。
我可以用
ServiceSecurityContext.Current.PrimaryIdentity
可以訪問調用用戶的細節,但這個返回IIdentity
對象,而不是我需要創建到Exchange服務器的連接的憑據。
我不能明確地創建一個沒有密碼的NetworkCredential
對象,我沒有,並且從我所看到的我無法從IIdentity
對象創建一個NetworkCredential
對象。
必須有一種方法來實現這一點。所有的建議歡迎。
偉大的想法,我很樂觀,但是拋出異常:'爲「Microsoft.Exchange.WebServices.Data.ExchangeServiceBase」的類型初始值拋出exception.' – 2013-03-13 17:04:13
什麼樣的例外?也許你需要配置委派才能使其工作? – Slava 2013-03-13 17:08:04
如果您的遠程客戶端連接到您的服務器,並且您的服務器調用Exchange服務器(在遠程計算機上),則需要爲您的服務器配置代理。 – Slava 2013-03-13 17:09:53