【发布时间】:2016-10-19 18:26:47
【问题描述】:
成功登录后,应用程序中的每个用户都会收到一个授权令牌和专用的 SQL 服务器连接。
当 Node 服务器收到请求时,它会检查授权令牌,如果它有效 - 使用专用于用户的连接向数据库发出请求。
令牌和连接存储在常规 JSON 对象中,在 Node 服务器重新启动后会被清除。因此,用户必须再次输入他们的 SQL 服务器凭据。
由于我的 API 不稳定,我需要经常重启 Node 服务器,这会给用户带来一些不便。
我使用专用连接的原因是能够在 SQL 服务器级别管理用户的访问权限(授予对某些表或视图的访问权限),并使用 SUSER_SNAME() 函数来记录用户的活动。这种方法还允许我实现行级安全模型。
或者也许有一种方法可以为 SQL 服务器会话存储某种令牌,从而允许在不提供用户凭据的情况下连接到服务器?
提前致谢!
【问题讨论】:
-
请修正问题标题中的拼写错误。老实说,我不确定您的意思是什么,否则我会自己解决。我不认为你“让数据库感到痛苦”,所以有些不对劲。
-
@jfriend00 我很抱歉。现在已经修好了。
-
我想这是不言而喻的,最好修复您的 API 并使其稳定,这样您就不必定期重新启动节点服务器。如果我打算投入大量工程来解决这个问题,那似乎是一个更好的地方来消磨你的时间。
标签: sql-server node.js knex.js