Microsoft 开发人员网络 > 论坛主页 > AppFabric > Unable to get the EchoService to work (System.ServiceModel.Security.MessageSecurityException)
提出问题提出问题
 

已答复Unable to get the EchoService to work (System.ServiceModel.Security.MessageSecurityException)

  • 2008年11月24日 0:33zeppo 用户奖牌用户奖牌用户奖牌用户奖牌用户奖牌
     
    I keep getting this exception - System.ServiceModel.Security.MessageSecurityException  and the inner exception is 

    An error occurred when verifying security for the message.

    Message: "An unsecured or incorrectly secured fault was received from the other party. See the inner FaultException for the fault code and detail."

    I just cant figure out what this is due to. I have followed the instructions in the hand on labs to the letter. I have tried both Windows CardSpace Credentials and UsernamePassword and get the same results. Having had no luck, I opened up the solution that was in the samples, compiled it and ran it and get the same exception. I am using a Virutal PC with Windows Server 2008.

    My solution name is zeppo_az

    Complete Stack Trace
    -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    {"An unsecured or incorrectly secured fault was received from the other party. See the inner FaultException for the fault code and detail."}[System.ServiceModel.Security.MessageSecurityException]: {"An unsecured or incorrectly secured fault was received from the other party. See the inner FaultException for the fault code and detail."}
    Data: {System.Collections.ListDictionaryInternal}
    HelpLink: null
    InnerException: {"An error occurred when verifying security for the message."}
    Message: "An unsecured or incorrectly secured fault was received from the other party. See the inner FaultException for the fault code and detail."
    Source: "System.ServiceModel"
    StackTrace: "\r\nServer stack trace: \r\n at System.ServiceModel.Channels.SecurityChannelFactory`1.SecurityRequestChannel.ProcessReply(Message reply, SecurityProtocolCorrelationState correlationState, TimeSpan timeout)\r\n at System.ServiceModel.Channels.SecurityChannelFactory`1.SecurityRequestChannel.Request(Message message, TimeSpan timeout)\r\n at System.ServiceModel.Dispatcher.RequestChannelBinder.Request(Message message, TimeSpan timeout)\r\n at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout)\r\n at System.ServiceModel.Channels.ServiceChannel.Request(Message message, TimeSpan timeout)\r\n\r\nException rethrown at [0]: \r\n at System.ServiceModel.Security.IssuanceTokenProviderBase`1.DoNegotiation(TimeSpan timeout)\r\n at System.ServiceModel.Security.IssuanceTokenProviderBase`1.GetTokenCore(TimeSpan timeout)\r\n at System.IdentityModel.Selectors.SecurityTokenProvider.GetToken(TimeSpan timeout)\r\n at System.ServiceModel.Security.Tokens.IssuedSecurityTokenProvider.GetTokenCore(TimeSpan timeout)\r\n at System.IdentityModel.Selectors.SecurityTokenProvider.GetToken(TimeSpan timeout)\r\n at Microsoft.ServiceBus.CardSpaceTokenProvider.OnGetToken(String appliesTo, List`1 requiredClaims, TimeSpan timeout)\r\n at Microsoft.ServiceBus.TokenProvider.GetToken(String appliesTo, List`1 requiredClaims, TimeSpan timeout)\r\n at Microsoft.ServiceBus.TokenProvider.GetToken(String appliesTo, String action, TimeSpan timeout)\r\n at Microsoft.ServiceBus.RelayedOnewayTcpListener.Subscribe(IDuplexChannel channel)\r\n at Microsoft.ServiceBus.RelayedOnewayTcpListener.OnOnline(Object sender, EventArgs args)\r\n at Microsoft.ServiceBus.RelayedOnewayTcpClient.SetStatus(RelayedOnewayStatus status, Exception error)\r\n at Microsoft.ServiceBus.RelayedOnewayTcpClient.Connected(IDuplexChannel channel)\r\n at Microsoft.ServiceBus.RelayedOnewayTcpClient.Connect()\r\n at Microsoft.ServiceBus.RelayedOnewayTcpClient.EnsureChannel()\r\n at Microsoft.ServiceBus.RelayedOnewayTcpClient.OnOpen(TimeSpan timeout)\r\n at Microsoft.ServiceBus.Channels.CommunicationObject.Open(TimeSpan timeout)\r\n at Microsoft.ServiceBus.RelayedOnewayTcpListener.OnOpen(TimeSpan timeout)\r\n at Microsoft.ServiceBus.Channels.RefcountedCommunicationObject.Open(TimeSpan timeout)\r\n at Microsoft.ServiceBus.RelayedOnewayChannelListener.OnOpen(TimeSpan timeout)\r\n at Microsoft.ServiceBus.Channels.CommunicationObject.Open(TimeSpan timeout)\r\n at System.ServiceModel.Dispatcher.ChannelDispatcher.OnOpen(TimeSpan timeout)\r\n at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)\r\n at System.ServiceModel.ServiceHostBase.OnOpen(TimeSpan timeout)\r\n at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)\r\n at System.ServiceModel.Channels.CommunicationObject.Open()\r\n at Microsoft.ServiceBus.RelayedSocketListener.Listen()\r\n at Microsoft.ServiceBus.SocketConnectionListener.Listen()\r\n at Microsoft.ServiceBus.Channels.BufferedConnectionListener.Listen()\r\n at Microsoft.ServiceBus.Channels.ConnectionAcceptor.StartAccepting()\r\n at Microsoft.ServiceBus.Channels.ConnectionDemuxer.StartDemuxing(OnViaDelegate viaDelegate)\r\n at Microsoft.ServiceBus.SocketConnectionTransportManager.OnOpen()\r\n at Microsoft.ServiceBus.Channels.TransportManager.Open(TransportChannelListener channelListener)\r\n at Microsoft.ServiceBus.Channels.TransportManagerContainer.Open(SelectTransportManagersCallback selectTransportManagerCallback)\r\n at Microsoft.ServiceBus.Channels.TransportChannelListener.OnOpen(TimeSpan timeout)\r\n at Microsoft.ServiceBus.Channels.ConnectionOrientedTransportChannelListener.OnOpen(TimeSpan timeout)\r\n at Microsoft.ServiceBus.SocketConnectionChannelListener`2.OnOpen(TimeSpan timeout)\r\n at Microsoft.ServiceBus.Channels.CommunicationObject.Open(TimeSpan timeout)\r\n at System.ServiceModel.Dispatcher.ChannelDispatcher.OnOpen(TimeSpan timeout)\r\n at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)\r\n at System.ServiceModel.ServiceHostBase.OnOpen(TimeSpan timeout)\r\n at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)\r\n at System.ServiceModel.Channels.CommunicationObject.Open()\r\n at Service.Program.Main() in C:\\AzureServicesKit\\Labs\\IntroServiceBus\\Ex01-BasicSample\\end\\Service\\Program.cs:line 33\r\n at System.AppDomain._nExecuteAssembly(Assembly assembly, String[] args)\r\n at System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args)\r\n at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()\r\n at System.Threading.ThreadHelper.ThreadStart_Context(Object state)\r\n at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)\r\n at System.Threading.ThreadHelper.ThreadStart()"
    TargetSite: {System.IdentityModel.Tokens.SecurityToken DoNegotiation(System.TimeSpan)}
    -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

    Please Help

    Thanks in advance

答案

  • 2008年11月28日 21:44zeppo 用户奖牌用户奖牌用户奖牌用户奖牌用户奖牌
     已答复
     Here is an update. I tried this on a Windows XP computer and I am able to get this to work as expected. I am not sure what is preventing this from working properly in my Windows Vista or my Windows Server 2008 machines. Atleast I have a way forward now.

全部回复

  • 2008年11月24日 18:41Clemens Vasters - MSFT版主用户奖牌用户奖牌用户奖牌用户奖牌用户奖牌
     

    This looks a bit strange. Sorry for asking, but are you 100% sure your credentials are OK?


    --- Clemens Vasters | Technical Lead | Microsoft .NET Service Bus | Microsoft Corporation
  • 2008年11月27日 13:05zeppo 用户奖牌用户奖牌用户奖牌用户奖牌用户奖牌
     
    Clemens - Thank you for your response. I changed the password twice and repeated this exercise on 2 different computers - all with the same result. Is there anything wrong with my solution. I also ran the samples from the .NET Services SDK and I get the same exception. At this point I am totally stuck.

    Thanks
  • 2008年11月28日 21:44zeppo 用户奖牌用户奖牌用户奖牌用户奖牌用户奖牌
     已答复
     Here is an update. I tried this on a Windows XP computer and I am able to get this to work as expected. I am not sure what is preventing this from working properly in my Windows Vista or my Windows Server 2008 machines. Atleast I have a way forward now.
  • 2008年12月12日 10:09Juval LowyMVP用户奖牌用户奖牌用户奖牌用户奖牌用户奖牌
     
    I get the same error actually on all my demos and samples. I tried both XP and Vista.
    Any idea...?
  • 2008年12月23日 15:42IAP 用户奖牌用户奖牌用户奖牌用户奖牌用户奖牌
     
    I have the same error as well: I'm using only Windows Server 2008 as my development OS, so cannot try other OS's. The only firewall is the one that comes with Server 2008.
  • 2008年12月27日 21:00IAP 用户奖牌用户奖牌用户奖牌用户奖牌用户奖牌
     
    Update, using the same OS (WS2008 Std), but with a different .NET account, and a reinstall of the CTP, and it still does not work. So it looks to me like an OS problem, or with an installed component.

    As a side note, I changed the authentication type from username & password to cardspace - and this still produced the  same error.

    Has anybody had any success to get this working... I really don't want to change my dev OS just for this!!

    Many thanks
  • 2009年1月12日 23:25Jesse Srogoncik 用户奖牌用户奖牌用户奖牌用户奖牌用户奖牌
     
    I have encountered the same issue. You mention running the example on Windows XP. The Azure SDK requires Vista or Windows Server 2008. How did you subvert the installation prerequisites? Thanks in advance...