2016-01-22 78 views
1

概述架構(可惜我沒能在任何方面改變這種)的:驗證電話掛斷

  • .NET MVC網站需要身份驗證,住在「機認證文件A」,處理針對認證
  • WCF數據服務‘’,住在‘機器B’

我創建了一個自定義主體(繼承的IPrincipal)和自定義授權屬性(繼承AuthorizeAttribute)做幾個獨特的檢查請求使用這個系統(類似於檢查角色)。每個公共控制器操作(除了「LoginController」中的操作)都有我的自定義授權屬性。

在我的控制器操作中,處理具有「AllowAnonymous」屬性的登錄請求,我向機器B上的數據服務發送請求,它只是掛起。我調試了服務,我可以看到它收到請求,完成工作併發送響應。機器A上的站點似乎沒有收到響應。

這裏是我試圖到目前爲止做:

  • 我創建了計算機C一個小應用程序相同的數據發佈到數據服務,運行的過程完成,並且在機器C中的應用收到回覆。
  • 我已回滾到不包含任何身份驗證限制的修訂,嘗試發佈相同的數據,但仍未收到響應。
  • 我禁用了機器A上的所有安全軟件,以查看防火牆或其他東西是否捕獲到響應,但沒有運氣。
  • 如果我模擬身份驗證,則其他來自站點的非身份驗證數據的數據服務調用會接收響應並按預期行爲。

所以,如果您有任何其他嘗試的建議,或者如果您想要更多的細節(我不幸分享代碼),我會盡我所能來提供它。

謝謝

回答

0

這裏的問題是有嵌套的異步調用。當我將async調用移動到數據服務之外的異步方法調用它時,它工作得很好。