单个用户无法向他(或其他任何人)创建的数据库“添加表”。其他用户可以添加表。
我们已经检查了权限,它们是相同的 - 但显然我们错过了一些东西。任何人都可以提供有关我们应该在哪里解决这个问题的提示吗?
细节
SQL Server 2014、Windows Server 2012 R2、Domain Auth 远程桌面到服务器;通过域进行 Windows 身份验证。启动 SQL Management Studio 添加数据库(或使用其他用户创建的现有数据库)添加表:失败并显示以下消息:
请求的操作无法完成。必须信任计算机才能进行委派,并且必须将当前用户帐户配置为允许委派。(SQL 编辑器)
错误的完整堆栈跟踪是:
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)
Run Code Online (Sandbox Code Playgroud)
我们注意到它与用户帐户直接相关:
使用 Windows 身份验证或 SQL 用户连接到数据库(在 Management Studio 中)没有任何区别。
另一个用户(具有明显相同的权限)可以从同一台主机进入 RDC 并正常运行。
即使当来自另一台主机的 RDC 时,有问题的用户仍然有问题。
因此,存在问题的是 RDC 在/启动了管理工作室的用户。
我们能找到的唯一线索是在https://technet.microsoft.com/en-au/library/cc739474(v=ws.10).aspx - 但这表明委托是针对服务帐户的,而不是用户帐户。
我们错过了什么许可/设置?谢谢。
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 management studio,但 Visual Studio 无法附加进程或调试。
| 归档时间: |
|
| 查看次数: |
2888 次 |
| 最近记录: |