使用者身份驗證,依賴於 forms 身份驗證類:formsauthentication,它是一串加密的cookie 來實現對控制器訪問限制和登陸頁面的訪問控制。它在瀏覽器端是這樣子的:
需求:我們要實現對使用者中心只有登入的使用者才能訪問,如果沒登入就跳轉到登入頁面,其它頁面都可以訪問:
首先來看登入控制器的**:
userdto user =userservice.getuserbyid(convert.toint32(msg.msg));web.config 的配置,loginurl為指定的登入頁面//為提供的使用者名稱提供乙個身份驗證的票據
formsauthentication.setauthcookie(user.uname, true
, formsauthentication.formscookiepath);
//把使用者物件儲存在票據裡
formsauthenticationticket ticket = new formsauthenticationticket(1, user.uname, datetime.now, datetime.now.addticks(formsauthentication.timeout.ticks), false
, jsonconvert.serializeobject(user));
//加密票據
//被限制要登入的頁面會在url上帶上上一訪問的頁面
if (request["
returnurl
"] != null || request["
returnurl
"]!=""
)
"在控制器加入[forms
">
"~/account/login
" timeout="
2880
" />
"controler
"/>
"*"/>
authorize]
註解,就可以控制使用者的訪問了,
[authorize]當然也可以註解的屬性來控制不同角色和不同使用者的許可權:public
actionresult index()
[authorize(roles = "登出操作:清除cookiecontroler")]
public
actionresult index()
[authorize(users = "
admin")]
public
actionresult order()
//如果想更詳細的了解forms身份驗證請 點登出public
actionresult loginout()
本**已更新到
MVC4學習筆記(一) 認識MVC
mvc就是為了快速開發出乙個軟體專案,有多快了?你甚至可以在5分鐘內開發出乙個五臟俱全的軟體系統,一點也不假。mvc model view controller,模型 檢視 控制器模式 用於表示一種軟體架構模式。它把軟體系統分為三個基本部分 模型 model 檢視 view 和控制器 control...
MVC4程式執行報錯
近期了解mvc4的時候弄了乙個簡單的小工程,使用entity framework作為model,f5啟動除錯執行的時候沒有問題,但是發布到iis之後訪問就報錯 錯誤資訊如下 很奇怪,搜尋了一下,找到乙個老外的帖子,戳這裡 解決方案如下 首先檢查ef相關的程式集是否被引用,主要有兩個 entityfr...
MVC4 的簡單學習
1.html元件,提供很多有用的功能,html.textboxfor 這個是可以直接使用model中的東西的 2.2.remote特性,不好用,每次輸入,都要到後台去驗證,這個就有問題了,如果需要連庫查,肯定效能太差了,應該看一下怎麼回事 3和4都這個毛病 3.要詳細看看路由設定啊,很亂 4.如果要...