2013-05-28 20 views
9

是否有包含具有使用Kerberos進行身份驗證的MVC應用程序的項目的完整Visual Studio解決方案。這反過來調用一個ASP.Net Web API服務項目(在相同的解決方案中),在服務調用期間將憑據委託給服務(GetAsync或PostAsync)?使用Kerberos,Web API和MVC的示例項目

我遇到了憑據的特定問題,其中Web API項目中的模擬用戶作爲運行MVC應用程序的服務帳戶而不是發出請求的用戶。我找到了特定行或代碼來解決特定問題的示例,但我真的在尋找一種將所有內容結合在一起的單一解決方案。

我見過資源,如Pro ASP.NET Web API SecurityASP.Net Web-API Security,但沒有包含完整的解決方案,顯示如何實施Windows Authenticaiton授權方案,特別是Kerberos。

我認識到這可能有點超出正常提問的範圍,但我更喜歡完整的解決方案,而不是在可能的情況下發布特定的代碼問題。

回答

2

當MVC Web應用程序運行初始查詢時,用戶的身份被附加到處理請求的線程。如果您進行異步Web服務調用,則遠程調用由沒有用戶身份附件的線程池線程完成。您可以嘗試傳遞對當前身份的引用(來自HttpContext)並冒充,但看起來會有您需要避免的競爭條件。

當然,這是假設遠程調用同步進行時工作。你有那麼遠嗎?

+0

是的,我確實讓WebClient工作。因爲發送數據對象更加困難,所以我希望使用新的HttpClient。但在我閱讀過的文章中,似乎我堅持使用WebClient。 – tlbignerd

相關問題