其他人如何防范此漏洞?在多个逻辑层中分离的MVC应用程序中,即表示层(MVC)>服务层>业务层>存储库层。是否只是在控制器级别执行检查,例如
[Authorize]
public class AccountsController : Controller
{
[HttpGet]
public ActionResult Details(long accountNumber)
{
var account;
//account = Call Service Layer to get the account.
if (account.UserId != User.Identity.GetUserId())
{
return new HttpUnauthorizedResult("User is not Authorized.");
}
}
}
我是否可以使用任何特定的设计模式来改进此设计?此外,在我的服务层执行此检查不是更好吗?