【发布时间】:2013-10-14 07:52:28
【问题描述】:
为了记录我正在开发的应用程序的使用情况,我需要每个使用我的应用程序的用户在他们自己的凭据下对我的 SQL Server 数据库执行查询。
为了不以可检索的方式存储他们的密码,我不能在每个用户的基础上创建一个连接(因为这需要知道他们的密码超过了简短的窗口时他们登录)。
这个问题的解决方案看似显而易见(可能不是最佳的)是作为通用“应用程序”用户运行所有敏感查询,模拟登录用户(要求我只将登录用户与用户名...这不是一件坏事)。
我的问题是我不确定如何授予某个角色的所有用户或所有一般用户的模拟权限(这不是最聪明的想法,因为我不希望应用模拟系统管理员) .
grant impersonate on all to ApplicationLogin
不起作用,而且我找不到任何文件表明授予角色成员模拟是可行的...
有什么想法吗?
【问题讨论】:
-
某个角色是指数据库角色吗?
-
当然,只要它可以是一个非常广泛的。
标签: sql-server tsql database-permissions