2010-09-09 95 views
2

在业务层中实现授权的最佳方式(对于.Net 4项目)是什么?简单地说,我想检查某个特定身份是否可以访问某个特定的操作/资源。业务层授权的最佳实践?

我试图在图案&中看到这个实践,但还没有发现任何有用的东西。

那么ASP.Net 2.0的PrincipalPermission呢?这仍然是相关的?维护怎么样?

我想使用一个优雅的解决方案,最好(重新)使用asp.net角色管理。

谢谢!

+0

我最近也一直在思考这个问题,因为我们目前的解决方案需要彻底检修。如果您处于MS环境中,与AD用户/组进行集成具有吸引力,并与ASP.NET角色管理集成。还没有尝试过,但... – Kendrick 2010-09-09 14:38:22

回答

0

就我所见,如果应用程序在运行时需要基于角色的安全性,则只有在某些编码错误的情况下,该属性才能用作逆止器。 CSLA.net在业务层具有安全性,您可以拥有任意数量的自定义规则,只要其实现返回布尔值即可。

1

当您只是想要防止在用户(代码正在运行)和抛出异常的情况下调用任何代码是一个很好的解决方案时,在这种情况下PrinicipalPermissionAttribute工作良好并且仍然相关。