使用 Identity Impersonate 时,我无法访问本地 ASPNETDB.MDF 数据库

Posted

技术标签:

【中文标题】使用 Identity Impersonate 时,我无法访问本地 ASPNETDB.MDF 数据库【英文标题】:When using Identity Impersonate I cannot access my local ASPNETDB.MDF database 【发布时间】:2010-12-02 10:21:36 【问题描述】:

我有一个与 Dynamic CRM 交互的 ASP.Net 网站。它还使用本地 ASPNETDB.MDF 进行表单身份验证。

对于 CRM,我需要模拟为此目的在域上创建的身份。启用身份模拟后,我不再有权访问本地成员数据库。如何允许用于模拟访问成员数据库的域用户?

任何帮助将不胜感激。

【问题讨论】:

您不能简单地为 mdf 文件的该身份添加完全控制权吗? 我已经做到了,包括包含它的文件夹结构。还是不行。 【参考方案1】:

“我不再有权访问本地会员数据库”是什么意思?

然后,按照您的表述方式,我可以猜到对数据库的访问不是本地的,而是远程的。您应该了解“模拟”一词仅对本地访问有意义。在远程访问中使用术语“委托”。

我只能建议您在 ASP.NET、IIS 和 SQL Server 的上下文中搜索模拟与委托。 相关术语有“双跳”、Kerberos、SPN(Service Principal Name)等。

您可能想从开始 - How To: Use Impersonation and Delegation in ASP.NET 2.0 - ASP.NET Identity Matrix

虽然这是一个品味、上下文等问题,但我认为您很容易找到更适合您的上下文和理解的文章。

【讨论】:

以上是关于使用 Identity Impersonate 时,我无法访问本地 ASPNETDB.MDF 数据库的主要内容,如果未能解决你的问题,请参考以下文章

托管服务器中的 <identity impersonate /> 问题

关于 web.config impersonate 帐号模拟

beeline启动时,错误 User: root is not allowed to impersonate root

服务器上office不能正常使用?

WindowsIdentity.GetCurrent().Impersonate() 做啥

WindowsIdentity.Impersonate 和 PostBack 问题