为了记录我正在开发的应用程序的使用情况,我需要每个使用我的应用程序的用户在他们自己的凭据下对我的 SQL Server 数据库执行查询。
为了不以可检索的方式存储他们的密码,我不能在每个用户的基础上创建连接(因为这将需要在他们登录时通过简短的窗口知道他们的密码)。
看似显而易见,解决这个问题(可能不是最佳的)是将所有敏感查询作为通用“应用程序”用户运行,模拟登录用户(要求我只将登录用户与用户名相关联。 ..这不是一件坏事)。
我的问题是我不确定如何授予某个角色的所有用户或所有一般用户的模拟权限(这不是最聪明的想法,因为我不希望应用程序模拟系统管理员)。
grant impersonate on all to ApplicationLogin
不起作用,并且我找不到任何文件表明授予角色成员模拟是可行的......
有任何想法吗?