使用Windows模拟连接到SQL Server

时间:2012-11-27 01:01:26

标签: c# windows wcf service impersonation

我在C#中编写了一个Windows服务,我必须对SQL服务器使用Windows身份验证。所以我在SQL连接字符串中使用Trusted Connection。

这是设置: Windows服务中包含WCF。 Windows服务使用本地服务帐户,该帐户是该应用程序服务器上的管理员...因为WCF必须注册uri。 所以我冒充另一个帐户,它将使用Windows身份验证到SQL服务器...我没有给一个SQL帐户..所以问题是当我尝试在模仿后授权...它试图使用服务所在的帐户虽然我检查了Windows身份并且它是正确的并且是模拟帐户,但仍在运行。为什么使用服务帐户?

另一个问题是,WCF服务的一个方法返回所有异常的列表...这个列表在它为空时或者我在其中放入一个新的异常但是如果Windows服务引发了异常并且那个异常进入列表,我尝试检索它,它说没有终点。有任何想法吗?它没有超时或任何事情我增加了时间。我有其他方法只返回字符串,它们工作正常。

1 个答案:

答案 0 :(得分:0)

好的我经过多次调试后发现了这一点。模仿工作正常,但我的解密密码不正确。所以修好了。

关于未检索的异常列表的问题......显然.Net无法序列化异常类。所以我写了一个返回异常信息的客户类,效果很好。