我有SMO代码,可以将表从一个数据库复制到另一个数据库。它在桌面应用程序中运行良好。放在服务中的相同确切代码会产生错误。该错误实际上是模糊的,并没有暗示权限。
我想知道SMO对象是否需要使用任何类型的安全性。安全背景? Windows凭据..等?我不是在谈论SQL Server安全性,而是围绕使用SMO方法的安全性。
答案 0 :(得分:1)
你需要完全信任。您可能在某些托管的ASP.NET帐户,从互联网上下载的应用程序或共享驱动器上运行此操作时遇到问题,其中CAS启动并为代码提供低于完全信任的代码,并且某些API将无法调用。
答案 1 :(得分:0)
您是否在连接中使用集成安全性?如果是这样,请确保运行该服务的凭据具有必要的访问权限。
答案 2 :(得分:0)
确保您的服务帐户(运行Windows服务的帐户)具有“作为操作系统的一部分”策略。