我刚刚开始研究一个实现与标准略有不同的安全性的系统。
他们为系统的每个用户创建一个新的 SQL 用户(现在大约有 32K)。每个查询都是通过最初使用 SA 帐户的连接发送的(不要陷入困境),然后在我们知道用户是谁之后,每个查询都使用 EXECUTE AS USER。
现在有这么多用户,创建新用户和切换对性能有明显影响,公司正在考虑改善这种情况。
几点: - SQL 代码是动态 sql(不是存储过程) - 最初的想法是为了减轻公司的开发人员担心写 SQL 担心权限的需要 - 让另一层担心它。
如何尝试改进查询执行时间并避免 EXECUTE AS USER 代码并仍然获得相同的安全审查?
SQL Server 是否支持会话变量来存储用户帐户?