我们正在使用大量 AJAX “Page Method” 调用的 ASP.NET。页面中定义的 WebServices 会调用我们的 BusinessLayer 中的方法。为了防止黑客调用页面方法,我们希望在 BusinessLayer 中实现一些安全性。
我们遇到了两个不同的问题。
第一个问题:
我希望您能提供一种通用的模式/最佳实践来实现这种安全性(而不是每次都编写if-then-else) 希望您理解我的意思 :-)
我们遇到了两个不同的问题。
第一个问题:
public List<Employees> GetAllEmployees()
{
// do stuff
}
该方法应由拥有“HR”角色的经过授权的用户调用。
第二个:
public Order GetMyOrder(int orderId)
{
// do sutff
}
这个方法只能由订单的所有者调用。
我知道为每个方法实现安全性很容易,比如:
public List<Employees> GetAllEmployees()
{
// check if the user is in Role HR
}
或者
public Order GetMyOrder(int orderId)
{
// check if the order.Owner = user
}
我希望您能提供一种通用的模式/最佳实践来实现这种安全性(而不是每次都编写if-then-else) 希望您理解我的意思 :-)