如何使用用户凭据通过msnodesqlv8与MS SQL进行身份验证?

时间:2018-07-24 18:37:24

标签: node.js iis windows-authentication node-mssql

我有一个在远程服务器上运行的节点js服务器。它使用node-mssql和msnodesqlv8驱动程序连接到另一台远程服务器中的MS SQL数据库。这是连接代码:

var conn = new sql.ConnectionPool({
    database: "***",
    server: "***",
    driver: "msnodesqlv8",
    options: {
        trustedConnection: true
    }
});

当我在本地计算机上运行nodejs服务器进行开发时,它将使用Windows凭据登录,因此工作正常。

现在,nodejs应用程序正在远程托管,它尝试使用服务器的凭据登录,但是它没有访问权限,所以出现此错误:

{ ConnectionError: [Microsoft][SQL Server Native Client 11.0][SQL Server]Login failed for user '{name of server's computer}'.

我希望服务器改为使用发出http请求的用户的凭据来访问数据库。

我正在使用IIS 10和iisnode托管nodejs服务器。 IIS配置为使用Windows身份验证和NTLM作为提供程序进行身份验证。我知道用户在访问网页时已通过身份验证,因为用户名出现在日志中。

我已经进行了许多Google搜索,发现ASP.NET具有“ ASP.NET模拟”功能,正是我所需要的,除了它似乎不适用于节点之外……是否可以模拟nodejs中的用户?

0 个答案:

没有答案