如何通过 WCF 服务从远程计算机启动/停止 Windows 服务?
我创建了一个部署在本地计算机上的 WCF 服务。该服务公开了一种在我的本地计算机上启动/停止 Windows 服务的方法。
在远程计算机上,我创建了一个使用 WCF 服务的客户端。当我尝试调用从 WCF 服务公开的启动/停止服务的方法时,我收到 InvalidOperationException 。我发现这是安全问题。
另外,当我在本地计算机上执行相同的操作(启动/停止 Windows 服务)时,它可以工作!
WCF 服务托管在使用 basichttpBinding 的 IIS 7.0 上。还检查匿名访问。我还在 Web 配置文件的 Web 部分下添加了
但仍然没有成功。
请帮忙!!
I have created a WCF service which is deployed on my local machine. This service exposes one method which start/stop a windows service on my local machine.
On the remote machine I have created a client that consumes the WCF service. When I try to invoke the method which start/stop service exposed from a WCF service , I get InvalidOperationException . I found that this is the Security issue.
Also when I do the same operation (start/stop windows service) on the local machine it works!!
The WCF service is hosted on IIS 7.0 which is using basichttpBinding. Also Anonnymous access is checked. I have also added <identity Impersonate = true >
under the web section in the web config file but still no success.
Please help!!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您为 ASP.NET 设置模拟。 WCF 中的模拟使用其自己的基础结构。此外,在 WCF 中,客户端必须允许服务冒充他的身份。查看这个简单的示例。
You set impersonation for ASP.NET. Impersonation in WCF uses its own infrastructure. Moreover in WCF client has to allow service to impersonate his identity. Check this simple example.