我的Asp.Net MVC网站使用基于存储过程的数据访问SQL Server数据库。如果当前用户可以执行此操作,则几乎每个过程都应检查权限。我通过将附加参数UserId
传递给每个过程并检查用户是否在特殊表中具有特殊权限代码来解决此问题。
它会导致许多复制粘贴的脚本。我想知道,还有其他办法吗?或者您可能有建议来改进我的解决方案......
答案 0 :(得分:1)
只是一个想法,但如果您封装逻辑以查找用户定义函数中给定用户和项的权限,该怎么办?然后,从必要的存储过程调用该函数并检查返回值。你仍然会结束一些复制和粘贴,但理论上它应该会导致更清洁的方法。