Asp.net
在 web.config 中授權屬性與授權節點
我知道我可以使用 web.config 中的授權標記來限制對 ASP.NET MVC 3 應用程序的訪問
<authentication mode="Windows"></authentication> <roleManager enabled="true" defaultProvider="AspNetWindowsTokenRoleProvider" /> <授權> <allow roles="MyDomain\MyGroup" /> <拒絕使用者="*" /> <拒絕使用者=“?” /> </授權>或者用一個裝飾控制器基類
$$ Authorize() $$屬性(甚至使用自定義 Authorize 屬性)
[AdminOnly] public class BaseController : Controller{}問題是:它們是替代方法和等效方法嗎?我應該總是使用一種方法而不是另一種嗎?我應該記住哪些元素?
我知道我可以使用 web.config 中的授權標記來限制對 ASP.NET MVC 3 應用程序的訪問
不,不要在 ASP.NET MVC 中使用它。
問題是:它們是替代方法和等效方法嗎?
不,它們不是替代品。您不應
<authorization>在 ASP.NET MVC 應用程序中使用 web.config 中的標記,因為它基於路徑,而 MVC 與控制器操作和路由一起使用。在 ASP.NET MVC 中進行授權的正確方法是使用[Authorize]屬性。