如何?某一目錄的forms身分識別驗證

來源:互聯網
上載者:User
前段時間在學習後台登入驗證的問題,聽說forms身分識別驗證要比較的方便,於是研究了一番,結果發現網上的資料都不全(或者不適合初學者),出了好多的問題,現在我把My Code公布出來,希望能給大家一些協助.
我的後台檔案全部放在admin目錄下,背景登入口為admin_login.aspx,現在要實現的功能是:
不能直接存取admin目錄下除了admin_login.aspx(即登入口)檔案以外的檔案,但是前台的檔案,比如default.aspx等,要不受forms驗證的影響,也就是說,即使沒有登入,訪問default.aspx時,也不能轉到admin_login.aspx.

下面說一下實現過程:
在web.config檔案中,設為forms身分識別驗證:
<authentication mode="Forms">
<forms name=".LoginUser" loginUrl="admin/admin_login.aspx" protection="All" timeout="30" />
</authentication>
<authorization>
<allow users="*" />
</authorization>

然後在</system.web>後還要加入:

<location path="admin">
<system.web>
<authorization>
<deny users="?" />
<allow users="*" />
</authorization>
</system.web>
</location>

否則無論訪問哪個檔案,都會轉到登入口的,加了上面這段代碼後,就只有訪問admin目錄下的檔案時可能轉到admin_login.aspx,以上就是web.config檔案中的設定,接下來就是後台登入按鈕的代碼了:

//檢查登入的使用者名稱和密碼是否正確,我用的是從資料庫中檢查的方法,你可以用其它方法,這裡就不說了.
if (OpenData.CheckUser(strSql,"ToEmpire_UserInfo"))
{
//儲存登入的使用者名稱
Session["LoginUser"] = strLoginUser;

//這一句就是關鍵,strLoginUser為登入框中的使用者名稱.false為不永久記錄.
FormsAuthentication.RedirectFromLoginPage(strLoginUser,false);

Response.Redirect("admin_index.aspx");
}

以上就是forms身分識別驗證的實現過程了,希望對各位有用.如果有什麼疑問,請在這裡留言,我看到的話會回複的.



相關文章

E-Commerce Solutions

Leverage the same tools powering the Alibaba Ecosystem

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。