2

我有一个使用 EntityFramework 4 连接到后端数据库的 MVC 4 应用程序。我正在尝试使用受信任的连接,这样只要查看网页的用户有权访问数据库,我就希望使用他们的 Windows 帐户进行连接。我搜索了解决方案,并将以下内容放在了我的 web.config 中:

  <system.web>
    <authentication mode="Windows"/>
    <identity impersonate="true"/>
    ...

我的连接设置如下:

<add name="MyDbEntities" connectionString="metadata=res://*/MyDbEntities.csdl|res://*/MyDbEntities.ssdl|res://*/MyDbEntities.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=MyServer;initial catalog=MyDb;integrated security=True;Trusted_Connection=True;multipleactiveresultsets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />

我也玩过模拟和委托,但到目前为止,我无法克服错误:

Login failed for user ''. The user is not associated with a trusted SQL Server connection.

我见过的所有解决方案都建议在托管服务器上修改 IIS,但我无法在我们的 QA 或生产环境中这样做。所以我试图找到一个只使用代码的解决方案,或者我可以在 JavaScript 中做的事情,或者在控制器中,或者底层业务或数据层。

提前感谢您的任何建议!

4

1 回答 1

2

你好,我相信这个答案可以在几个小时内提供一些指导,我可能会仔细检查它。

使用实体框架模拟用户

希望这可以帮助!

于 2013-10-08T23:56:36.890 回答