2011-11-10 22 views

回答

9

要授權所有用戶,只需全部省略使用[Authorize]屬性。要授權已認證的用戶,請使用[Authorize]屬性。要授權特定角色或用戶,即當您有[Authorize (Users = "someuser")][Authorize (Roles = "somerole")]時。

+0

我試過..它不這樣工作.. – Muthukumar

+0

你試過了哪個?怎麼了?什麼不行? – 2011-11-10 16:29:15

+0

我嘗試[授權(用戶=「*」)]到一個行動。它甚至不允許經過認證的用戶。當我只添加[授權]時,它允許經過身份驗證的用戶。 – Muthukumar

0

看着documentation for the attribute它看起來不像你可以這樣使用它。默認情況下,AuthorizeAttribute僅允許訪問經過身份驗證和授權的用戶,因此傳遞*(全部)或?(guest)是沒有意義的。
Users屬性用於進一步限制可以訪問Action方法的經過身份驗證的用戶列表以及Roles屬性,該屬性還可用於進一步過濾任何經過身份驗證的訪問。

+0

相同的陷阱。當我使用[Authorize(Users =「」)]時,它只允許通過身份驗證的用戶。 – Muthukumar

+0

感謝Andy的信息 – Muthukumar

0

我認爲第二篇文章是正確的,在[Authorize(Users = " * ")]" * "部分沒有任何意義(在web.config它確實,但這是完全不同的東西)。