使用定义的 Windows 用户而不是 NT AUTHORITY / IUSR
我有一个 Asp.Net MVC 2 Web 应用程序和一个 SQL Express 服务。 是否可以使用定义的Windows用户而不是内置的IUSR来连接数据库。
如果是,请指出所需的设置,
谢谢。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
如果您想以特定用户身份运行所有数据库请求,请修改您的应用程序池以以所需用户身份运行。请参阅指定应用程序池的标识。这是正确的方法,您会发现有关此主题的很多不好的建议,例如使用 登录用户.不要那样做。
如果您想以连接到 Intranet 站点的用户身份连接到数据库,则需要使用模拟(请参阅 ASP.NET 模拟)并启用约束委派(请参阅 为 IIS 配置约束委派)。
If you want to run all your DB requests as a specific user then modify your app pool to run as the desired user. See Specify an Identity for an Application Pool. This is the correct way, you will find plenty of bad advice on this topic, like using LogonUser. Don't do that.
If you want to connect to the DB as whichever the user that connected to your intranet site, then you need to use impersonation ( see ASP.NET Impersonation) and enable constrained delegation (see Configuring Constrained Delegation for IIS).
您可以尝试以下连接字符串:
还要确保为 SQL Server 启用了 Windows 身份验证。
You might try the following connection string:
Also make sure that Windows Authentication is enabled for the SQL server.