簡體   English   中英

asp.net如何知道不對login.aspx應用安全性? 反向代理給我問題

[英]How does asp.net know not to apply security to login.aspx? Reverse proxy is giving me issues

我有一個asp.net應用程序,該應用程序使用拒絕匿名用戶的表單身份驗證。 如果我直接訪問服務器,則工作正常,但是,如果我通過反向代理訪問服務器,則效果似乎不太好。

發生的情況是反向代理將您發送到默認頁面,然后重定向到login.aspx頁面,因為我尚未登錄,這一切都很好,並證明了代理設置很好。 但是它無法呈現login.aspx,給出302(重定向)響應。

我猜想asp.net可以通過某種方式賦予login.aspx特殊權限,這樣您就無需像其他網站一樣登錄即可訪問它。 我進一步猜測,當通過反向代理訪問該邏輯時,此邏輯將失敗,它以某種方式認為“由於您未登錄,所以您不被允許看到login.aspx”。 但這只是一個猜測...

無論如何,有人可以伸出援手嗎? 非常感謝。

  • 盡可能使用提琴手/ wireshark /任何東西來查看實際發生的事情
  • 默認情況下,獲得“特殊待遇”的頁面由您的web.config-> system.web->身份驗證->表單loginUrl中指定的loginUrl確定-例如,類似於:
  • 您可以通過web.config禁用特定路徑上的身份驗證要求:

`

<location path="js">
  <system.web>
    <authorization>
      <allow users="*"/>
    </authorization>
  </system.web>
</location>

我看到發生的一個常見問題(可能是您遇到的問題)是“登錄”頁面跳過了auth檢查,但是“登錄”頁面所引用的內容(圖像,JavaScript文件等)卻沒有,因此這些請求結束了302返回登錄。 如果您的情況也是如此,那么只需添加足以“取消保護”您的“登錄”頁面需要訪問才能正確顯示的位置路徑(如上)即可。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM