wcf msmq服务激活失败 [英] wcf msmq service activation fails

查看:94
本文介绍了wcf msmq服务激活失败的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有使用net.msmq协议的wcf服务,但服务无法激活,并出现以下错误.有什么问题吗?

I have wcf service using net.msmq protocol but service fails to activate with following error. What could be wrong?

看起来它正在尝试在AD中找到machineid或其他内容,但是为什么呢? 服务名称类似于net.msmq://localhost/private/myservice.svc

Looks like it is trying to find machineid or something in AD but why? Sevice name is like net.msmq://localhost/private/myservice.svc

  A connection with Active Directory cannot be established. Verify that there are sufficient permissions to perform this operation.

System.Messaging.MessageQueue.GetMachineId(String machineName)
System.Messaging.MessageQueueCriteria.set_MachineName(String value)
System.Messaging.MessageQueue.GetPublicQueuesByMachine(String machineName)
System.ServiceModel.Channels.MsmqBindingMonitor.OnTimer(Object state)

推荐答案

您具有哪些安全设置?默认情况下,MSMQ绑定将期望用户出示证书对他们进行身份验证,并需要访问AD来验证该证书.

What security settings to you have? By default, the MSMQ binding will expect users to present a certificate to authenticate them and needs access to AD to verify that certificate.

如果您想完全关闭所有安全性,请将此代码段添加到您的配置中:

If you want to totally turn off all security, add this snippet to your config:

<bindings>
  <netMsmqBinding>
    <binding name="NoSecurity">
      <security mode="off" />
    </binding>    
  </netMsmqBinding>
</bindings>
<endpoint name="...." address="..." contract="....."
   binding="netMsmqBinding" bindingConfiguration="NoSecurity" />

这样,您应该可以在不访问AD的情况下调用MSMQ.

That way, you should be able to call MSMQ without access to AD.

马克

这篇关于wcf msmq服务激活失败的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆