首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> .NET 網頁程式設計 >> ASP.NET 基礎 >> 關於ASP.NET

ASP.NET 實現匿名訪問控制

     編輯:關於ASP.NET

Forms 認證 + Web.config 授權規則:完整匿名存取控制方案

兩種控制方式比較

  • IIS 目錄/檔案安全性:設定繁瑣、難以集中管理。
  • ASP.NET Forms 認證: 程式碼控制、易維護、支援細粒度頁面級授權。

實作流程

  1. 登入驗證: 驗證帳號密碼(DB/AD),成功呼叫 FormsAuthentication.RedirectFromLoginPage(userName, createPersistentCookie) 寫入加密 Cookie 並導向原請求頁。
  2. 頁面授權檢查: Context.User.Identity.IsAuthenticated 判斷是否通過驗證,未驗證導向登入頁。
  3. Web.config 設定:
<authentication mode="Forms">
  <forms loginUrl="Login.aspx" />
</authentication>

<authorization>
  <deny users="?" /> <!-- 禁止匿名用戶 -->
</authorization>

<location path="NewUser.aspx">
  <system.web>
    <authorization>
      <allow users="*" /> <!-- 允許所有人存取註冊頁 -->
    </authorization>
  </system.web>
</location>

關鍵點

  • deny users="?" 封鎖所有匿名請求。
  • location 區段對特定頁面覆蓋授權規則(如註冊頁允許匿名)。
  • Cookie 內含加密票證,自動處理過期與續期。

此方案為 ASP.NET 經典表單認證授權模式,清晰分離驗證與授權關注點。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved