SQL 2014:添加表时显示“无法完成请求的操作。必须信任计算机”

SQL 2014:添加表时显示“无法完成请求的操作。必须信任计算机”

单个用户无法向他(或任何其他人)创建的数据库“添加表”。其他用户可以添加表。

我们已经检查了权限,发现它们是相同的 - 但显然我们漏掉了一些东西。有人能提示一下我们应该从哪里解决这个问题吗?

细节

SQL Server 2014、Windows Server 2012 R2、域身份验证远程桌面进入服务器;通过域进行 Windows 身份验证。启动 SQL Management Studio 添加数据库(或使用其他用户创建的现有数据库)添加表:失败并显示以下消息:

无法完成请求的操作。必须信任计算机才能进行委派,并且必须配置当前用户帐户以允许委派。(SQLEditors)

错误的完整堆栈跟踪是:

Program Location:

at Microsoft.SqlServer.Management.Data.DataProtection.EncryptString(String s)
at Microsoft.SqlServer.Management.DataTools.DataServices.DataConnection.SetConnectionStrings(DataConnectionProperties connectionProperties)
at Microsoft.SqlServer.Management.DataTools.DataServices.DataConnection.SetConnectionStrings(String connectionString)
at Microsoft.SqlServer.Management.DataTools.DataServices.DataConnection..ctor(DataProvider provider, String connectionString, Boolean encryptedString)
at Microsoft.SqlServer.Management.DataTools.DataServices.DataConnectionFactory.CreateDataConnectionImpl(Guid provider, String connectionString, Boolean encryptedString)
at Microsoft.SqlServer.Management.Data.DataConnectionFactory.CreateDataConnection(Guid provider, String connectionString, Boolean encryptedString)
at Microsoft.SqlServer.Management.DataTools.DataServices.DataConnectionManager.CreateDataConnection(Guid provider, String connectionString, Boolean encryptedString)
at Microsoft.SqlServer.Management.Data.DataConnectionManager.GetDataConnection(Guid provider, String connectionString, Boolean encryptedString, Boolean update)
at Microsoft.SqlServer.Management.DataTools.DataServices.DataConnectionManager.Microsoft.SqlServer.Management.Data.Interop.IVsDataConnectionManager.GetDataConnection(Guid& guidProvider, String bstrConnectionString, Boolean fEncryptedString)
at Microsoft.SqlServer.Management.UI.VSIntegration.Editors.VsDataDesignerNode.CreateDesigner()
at Microsoft.SqlServer.Management.UI.VSIntegration.Editors.VsDataDesignerNode.Open()
at Microsoft.SqlServer.Management.UI.VSIntegration.Editors.VirtualProject.CreateDesigner(Urn origUrn, DocumentType editorType, DocumentOptions aeOptions, IManagedConnection con, String fileName)
at Microsoft.SqlServer.Management.UI.VSIntegration.Editors.VirtualProject.Microsoft.SqlServer.Management.UI.VSIntegration.Editors.ISqlVirtualProject.CreateDesigner(Urn origUrn, DocumentType editorType, DocumentOptions aeOptions, IManagedConnection con, String fileName)
at Microsoft.SqlServer.Management.UI.VSIntegration.Editors.ISqlVirtualProject.CreateDesigner(Urn origUrn, DocumentType editorType, DocumentOptions aeOptions, IManagedConnection con, String fileName)
at Microsoft.SqlServer.Management.UI.VSIntegration.Editors.VsDocumentMenuItem.CreateDesignerWindow(IManagedConnection mc, DocumentOptions options)

我们注意到它与用户账户直接相关:

  • 使用 Windows 身份验证或 SQL 用户连接到数据库(在 Management Studio 中)没有区别。

  • 另一个用户(显然具有相同的权限)可以从同一台主机进行 RDC 并且无问题地进行操作。

  • 即使从另一台主机进行 RDC,有问题的用户仍然存在问题。

因此,存在问题的是 RDC 中的/启动了 Mangement Studio 的用户。

我们能找到的唯一线索是https://technet.microsoft.com/en-au/library/cc739474(v=ws.10).aspx - 但这表明委派是针对服务帐户,而不是用户帐户。

我们遗漏了什么权限/设置?谢谢。

答案1

2016 年 1 月编辑:下面是可能的解决方案。


原始回应

对于其他正在寻找这个问题的人来说,答案似乎是因为“SimpleAD”(http://docs.aws.amazon.com/directoryservice/latest/simple-ad/what_is.html

SimpleAD 应该是 Windows Active Directory 的免费替代品,但看起来还是有些区别。通过这个论坛帖子找到:https://forums.aws.amazon.com/thread.jspa?messageID=633745

解决方案: - 用真实版本替换 SimpleAD(显然很贵而且工作量很大),或者 - 继续使用它。从其他评论来看,这似乎是一个老问题,不会很快得到修复。

虽然并不完美,但我希望对于那些遇到同样问题的人来说,这能够有所帮助。


更新时间:2016 年 1 月

读完下面的内容已经为我们解决了这个问题:

https://www.suse.com/support/kb/doc.php?id=7016786

您将在此 Microsoft 文档中找到他们建议的解决方法。 https://support.microsoft.com/en-us/kb/3000850

以下是该文件中的一些信息。

解决方法要解决此问题,请将 ProtectionPolicy 注册表项的值设置为 1,以启用 MasterKey 的本地备份,而不是要求在以下注册表子项中使用 RWDC:HKEY_LOCAL_MACHINE\Software\Microsoft\Cryptography\Protect\Providers\df9d8cd0-1501-11d1-8c7a-00c04fc297eb

根据该信息,显然需要在每个已使用 KB2992611 或 KB3000850 更新的 Windows 8.1 客户端上执行此操作。

似乎适用于 SQL 管理工作室,但 Visual Studio 无法附加进程或调试。

答案2

如果您的 SQL 计算机上安装了 IIS 6/7,请确保将其卸载。

相关内容