2012-12-25 65 views

回答

1

在MVC中,您可以簡單地在您的控制器方法或類上添加[Authorize]來控制受保護的頁面。或者爲了防止僞造,您可以在視圖和控制器上使用[ValidateAntiForgeryToken]。它將使用MachineKeys來評估相關用戶。 Asp.net Web API和MVC平臺沒有區別。但MVC平臺和Web頁面之間存在一些差異。您也可以employ Authorization in the Web.config file

  • 2授權在Asp.net MVC的類型有:

1- Role-Based Authorization

2- User-Based Authorization

1

你應該先分開的授權和身份驗證邏輯。您可以通過主機不可知的方式通過消息處理程序執行身份驗證,並通過操作篩選器執行授權。

查看PingYourPackage項目,它是一個示例ASP.NET Web API應用程序。您可以在那裏看到basic authentication message handler。如果請求經過身份驗證,則此處理程序爲該請求設置Thread.CurrentPrincipal

此外,看看應用AuthorizaAttribute執行授權的控制器。 AuthorizaAttribute檢查Thread.CurrentPrincipal執行授權。