Database connection 集成安全性,模拟=true/连接字符串问题/ASP.NET

Database connection 集成安全性,模拟=true/连接字符串问题/ASP.NET,database-connection,connection-string,impersonation,integrated-security,Database Connection,Connection String,Impersonation,Integrated Security,我们有一个网站部署了Impersonate=true 连接字符串定义如下: 综合安全=SSPI;持久安全信息=false;首字母 Catalog=MyDatabase;数据源=MyServer 我假设持久化安全信息是冗余的,因为它只适用于SQL身份验证?我们需要使用集成安全性,因为由于公司安全策略,配置文件中不能有密码 该网站以服务帐户运行。服务帐户具有访问数据库的权限,但其他帐户没有访问权限(安全策略) 我们面临的问题是,由于Impersonate=true,用户帐户被传递到数据库并被拒绝 我

我们有一个网站部署了Impersonate=true

连接字符串定义如下:

综合安全=SSPI;持久安全信息=false;首字母 Catalog=MyDatabase;数据源=MyServer

我假设持久化安全信息是冗余的,因为它只适用于SQL身份验证?我们需要使用集成安全性,因为由于公司安全策略,配置文件中不能有密码

该网站以服务帐户运行。服务帐户具有访问数据库的权限,但其他帐户没有访问权限(安全策略)

我们面临的问题是,由于Impersonate=true,用户帐户被传递到数据库并被拒绝

我们需要有Impersonate=true才能使单个登录组件工作

这是第22条陷阱还是有解决办法

我希望我写得足够清楚

根据
“模拟独立于使用身份验证配置元素配置的身份验证模式。身份验证元素用于确定当前HttpContext的用户属性。模拟用于相应地确定ASP.NET应用程序“”的WindowsIdentity,您无需启用模拟即可对用户进行身份验证。但是请注意,您的应用程序必须处理授权。实现授权的现成框架是NetSQLAzman,请参见

您是说集成的Windows身份验证应该足够了,而不必将模拟设置为true吗?将其设置为impersonate=false是否仍然有效,但在数据库上使用服务帐户权限,就像我们需要它一样?是的,这应该足够了。好的,这是有意义的。我认为我们的软件有问题,因为我们需要打开模拟才能进行windows身份验证。不幸的是,我没有参与编码,所以无法调查。谢谢你的帮助。