【发布时间】:2014-09-04 18:53:08
【问题描述】:
我一直在阅读有关基于声明的身份验证的内容,并且我知道将身份验证、授权和业务层相互分离是一种很好的做法。我们应该有一个验证组件,一个检查授权并与验证器分开的组件,我们还有一个业务逻辑层。除了一部分之外,所有这些都是有道理的。想象一下,我们有一个像 youtube 这样的产品,但用户只能看到他们订阅的人的视频,并且订阅需要批准。现在,这个单独的授权组件如何在没有访问数据库的情况下决定是否允许获取视频?这不是我们可以提出索赔的东西。唯一的方法是查看请求的视频 ID 是否在允许(订阅)的视频中。
我应该将这些检查放在业务逻辑中还是在我的授权组件中访问数据库?
谢谢
【问题讨论】:
-
根据是否是业务规则,您可能确实将其放入业务逻辑中。
标签: .net security business-logic