【发布时间】:2017-06-22 12:36:05
【问题描述】:
我正在尝试使用 Trusted_Connection=True 验证我的 MSSQL 连接。为了让它工作,我安装了 NuGet 包Impersonate.AspNetCore.Windows(Impersonate),并在我的 Startup.cs 中进行设置,如下所示:
public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
{
app.UseWindowsImpersonation(options => {
options.Enabled = true;
});
}
在我的 Program.cs 中,我添加了 UseIISIntegration 来设置 .net 核心以托管在 IIS 中:
public static void Main(string[] args)
{
var host = new WebHostBuilder()
.UseKestrel()
.UseContentRoot(Directory.GetCurrentDirectory())
.UseIISIntegration()
.UseStartup<Startup>()
.Build();
host.Run();
}
在 IIS 中,我创建了一个新网站,将 ApplicationPool 基本设置更改为 No managed Code 和 Classic 管道模式。在高级设置中,我将进程模型下的Identity 设置为现有的 Windows 用户帐户:
当我在连接字符串中使用Trusted_Connection=True 时,应用程序无法验证我与 SQL 服务器的连接:
"ConnectionStrings": {
"DashboardDatabase": "Server=<SOME_SERVER>;Database=<SOME_DATABASE>;Trusted_Connection=True"
}
(当然,其中和替换为服务器和数据库的实际名称)。
我的问题是:我在这里忘记了什么吗?
【问题讨论】:
标签: c# sql-server .net-core