我正在学习ASP.NET MVC3,并且为我的Model/Context创建了一个控制器。但是,任何人都可以导航到这些页面并使用它们。我如何设置这些页面的权限?如何为我的CRUD设置权限?
0
A
回答
2
AuthorizeAttribute将成为您的第一道防线。您可以根据组成员资格或用户名授予访问权限。与Code Access Security/Principal Permission Attributes非常相似,但并不难。
例子:
// Allow Everybody in
public ActionResult Index()
{}
// Allow only Editors/Admin to post edits back to controller.
[HttpPost]
[Authorize(Roles="Admin,Editor"]
public ActionResult Edit(EditViewModel vm)
{}
您可以在类或方法级别使用它们,这样你就可以有一个基本的控制器,只有让授权用户使用应用的某些控制器。
如果您发现自己一遍又一遍地使用相同的组或用户,我会创建一个覆盖预定义了这些组的AuthorizeAttribute,这样您就不会拼错或忘记它们。这也会干扰你的代码,这总是很棒的。
1
您可以使用Authorize属性来rstrict权限,通常这是从基类继承的。这是最常见和推荐的。
您可以使用ActionFilter属性并覆盖OnActionExecuting并在其中设置自定义逻辑。可能的,但不是推荐的。
还有很多其他方法,但前两个是MVC的主要方法。
相关问题
- 1. 如何设置权限的IIS8为AWSTATS
- 2. IIS 7权限:如何为目录设置正确的权限?
- 3. 我的SQL设置权限
- 4. 我如何设置权限通过API
- 5. SQL如何设置权限
- 6. 如何将世界权限设置为与组权限相同?
- 7. 如何设置设备库的权限?
- 8. 设置权限
- 9. 如何设置OneNote API的权限
- 10. 如何设置Android蓝牙的权限
- 11. 如何设置Linux文件的权限?
- 12. asp.net datasource detailsview和CRUD权限
- 13. 快递JWT权限:如何设置权限?
- 14. WordPress的权限设置为777
- 15. 如何设置文件权限 - Android
- 16. 如何设置删除权限?
- 17. 如何从Perl设置文件权限?
- 18. 如何设置扩展权限?
- 19. 如何在android中设置权限WRITE_SECURE_SETTINGS?
- 20. 如何在Bukkit中设置权限?
- 21. 如何设置最低权限从PHP
- 22. 如何设置BroadcastReceiver权限(安全)
- 23. cakephp如何设置ACL权限
- 24. 如何设置Jenkins Slave权限
- 25. 如何设置文件夹权限
- 26. 如何在neo4j中设置权限?
- 27. Sharepoint 2007:如何设置列级权限?
- 28. 如何设置用户权限?
- 29. 如何设置文件夹权限?
- 30. 权限 - Apache和Pure-FTPd - 如何设置?
我建议访问http://www.asp.net/mvc/overview/security,然后再问这样的一般问题。 – marapet
谢谢,这真的很有帮助。 –