none
Unified Contact Store UCS integration issue - Event Source: LS Storage Service - Event ID: 32043 RRS feed

  • Question

  • Experiencing weird issues with getting UCS working in one environment (including OWA/IM and UM). Event Source: LS Storage Service - Event ID: 32043

    I've had no issues with UCS in other environments with multiple 2013 Mailbox servers and multiple 2013 CAS servers. This particular environment is having issues. I do have Exchange split with MBX and CAS.

    I Followed all procedures from TechNet, NextHop, etc. I am Running same oAuth cert on all exchange and lync boxes.

    I still have Lync 2010 and Exchange 2010 in the environment, since I'm in the middle of a coexistence migration but don't really want to cut over to new servers until the Lync 2013 to Exchange 2013 integration is complete and tested.

    Test-CsExStorageConnectivity -SipUri user@domain.com 

    Test-CsExStorageConnectivity : ExCreateItem exchange operation failed,
    code=574, reason=StoreContext{traceId=[2048369003],
    activityId=[53f4e8c5-e7e3-491a-adf4-cef37c517cb4]}StoreException:
    code=ErrorUnhandledException, reason=Wrapped callback failed --->
    System.InvalidOperationException: Client found response content type of '',
    but expected 'text/xml'.

    I have had a case opened with MS for weeks now and have torn down and rebuilt the config several times - the certificates should solid all around including using servers' FQDNs in the SN instead of just somewhere in the SAN list and using just the domain as the SN for the oAuth certs (using the exact same cert on both Lync and Exchange for oAuth)

    Any comments would be greatly appreciated

    Here are the steps i did on the integration (certificates not included however they are verified)


    ****************** ON LYNC

    Get-CsCertificate -Type OAuthTokenIssuer


    Issuer             : CN=dc02, DC=domain, DC=com
    NotAfter           : 11/12/2015 5:38:22 PM
    NotBefore          : 11/12/2013 5:38:22 PM
    SerialNumber       : 360000000901D6BF9542A0E971000100000009
    Subject            : CN=domain.com, OU=IT Department, O="Customer Name",
                         L=Santa Clarita, S=California, C=US
    AlternativeNames   : {}
    Thumbprint         : A42D2481AB68473EB25B78DAB8964ADDFF9F8245
    EffectiveDate      : 11/12/2013 5:48:30 PM
    PreviousThumbprint :
    UpdateTime         :
    Use                : OAuthTokenIssuer
    SourceScope        : Global


    Set-CsOAuthConfiguration -Identity Global -ExchangeAutoDiscoverURL 'https://excas02.domain.com/autodiscover/autodiscover.svc'

    New-CsPartnerApplication -Identity Exchange -ApplicationTrustLevel Full -MetadataUrl "https://excas02.domain.com/autodiscover/metadata/json/1"


    Identity                            : Exchange
    AuthToken                           : Value=https://excas02.domain.com/au
                                          todiscover/metadata/json/1
    Name                                : Exchange
    ApplicationIdentifier               : 00000002-0000-0ff1-ce00-000000000000
    Realm                               : domain.com
    ApplicationTrustLevel               : Full
    AcceptSecurityIdentifierInformation : False
    Enabled                             : True



    Get-CsOAuthConfiguration


    Identity                           : Global
    PartnerApplications                : {Name=Exchange;ApplicationIdentifier=00000
                                         002-0000-0ff1-ce00-000000000000;Realm=ushw
                                         orks.com;ApplicationTrustLevel=Full;Accept
                                         SecurityIdentifierInformation=False;Enable
                                         d=True}
    OAuthServers                       : {}
    Realm                              : domain.com
    ServiceName                        : 00000004-0000-0ff1-ce00-000000000000
    ExchangeAutodiscoverUrl            : https://excas02.domain.com/autodisco
                                         ver/autodiscover.svc
    ExchangeAutodiscoverAllowedDomains :





    ****************** ON Exchange
    [Get-AuthConfig


    RunspaceId                    : 2b3c00ee-adbf-45a0-81d1-dc87d1e8aa6f
    CurrentCertificateThumbprint  : A42D2481AB68473EB25B78DAB8964ADDFF9F8245
    PreviousCertificateThumbprint :
    NextCertificateThumbprint     :
    NextCertificateEffectiveDate  :
    ServiceName                   : 00000002-0000-0ff1-ce00-000000000000
    Realm                         :
    Name                          : Auth Configuration
    AdminDisplayName              :
    ExchangeVersion               : 0.20 (15.0.0.0)
    DistinguishedName             : CN=Auth Configuration,CN=Customer,CN=Microsoft
                                    Exchange,CN=Services,CN=Configuration,DC=domain,DC=com
    Identity                      : Auth Configuration
    Guid                          : db55e975-4986-49b7-a799-15ecb8c40e8f
    ObjectCategory                : domain.com/Configuration/Schema/ms-Exch-Auth-Auth-Config
    ObjectClass                   : {top, container, msExchContainer, msExchAuthAuthConfig}
    WhenChanged                   : 1/28/2014 5:37:30 PM
    WhenCreated                   : 10/8/2013 6:35:32 PM
    WhenChangedUTC                : 1/29/2014 1:37:30 AM
    WhenCreatedUTC                : 10/9/2013 1:35:32 AM
    OrganizationId                :
    OriginatingServer             : DC04.domain.com
    IsValid                       : True
    ObjectState                   : Unchanged





    Set-ClientAccessServer -identity excas02 -AutodiscoverServiceInternalUri 'https://excas02.domain.com/autodiscover/autodiscover.xml'


    Get-ClientAccesSserver excas02 | fl


    RunspaceId                           : 568a785b-b51f-459a-abf2-d7283744a84a
    Name                                 : EXCAS02
    Fqdn                                 : EXCAS02.domain.com
    OutlookAnywhereEnabled               : True
    AutoDiscoverServiceCN                : EXCAS02
    AutoDiscoverServiceClassName         : ms-Exchange-AutoDiscover-Service
    AutoDiscoverServiceInternalUri       : https://excas02.domain.com/autodiscover/autodiscover.xml
    AutoDiscoverServiceGuid              : 77378f46-2c66-4aa9-a6a6-3e7a48b19596
    AutoDiscoverSiteScope                : {West}
    AlternateServiceAccountConfiguration :
    IsOutOfService                       : False
    WorkloadManagementPolicy             : DefaultWorkloadManagementPolicy_15.0.505.0
    Identity                             : EXCAS02
    IsValid                              : True
    ExchangeVersion                      : 0.1 (8.0.535.0)
    DistinguishedName                    : CN=EXCAS02,CN=Servers,CN=Exchange Administrative Group
                                           (FYDIBOHF23SPDLT),CN=Administrative Groups,CN=Customer,CN=Microsoft
                                           Exchange,CN=Services,CN=Configuration,DC=domain,DC=com
    Guid                                 : 2d3b4138-a933-46e1-b5da-3f7115cb5d00
    ObjectCategory                       : domain.com/Configuration/Schema/ms-Exch-Exchange-Server
    ObjectClass                          : {top, server, msExchExchangeServer}
    WhenChanged                          : 1/30/2014 11:35:25 AM
    WhenCreated                          : 10/8/2013 7:06:35 PM
    WhenChangedUTC                       : 1/30/2014 7:35:25 PM
    WhenCreatedUTC                       : 10/9/2013 2:06:35 AM
    OrganizationId                       :
    OriginatingServer                    : DC04.domain.com
    ObjectState                          : Unchanged



    cd "C:\Program Files\Microsoft\Exchange Server\V15\Scripts\"

    .\Configure-EnterPrisePartnerApplication.ps1 -AuthMetadataUrl "https://lyfe02.domain.com/metadata/json/1" -ApplicationType Lync

    Creating User <LyncEnterprise-ApplicationAccount> for Partner Application.

    Created User <domain.com/Users/LyncEnterprise-ApplicationAccount> for Partner Application.

    Assigning role <UserApplication> to Application User <domain.com/Users/LyncEnterprise-ApplicationAccount>.

    Assigning role <ArchiveApplication> to Application User <domain.com/Users/LyncEnterprise-ApplicationAccount>.

    Creating Partner Application <LyncEnterprise-dd9f8b8f52fd4b4fb5f928a0d4a02b9c> using metadata <https://lyfe02.ushwor
    ks.com/metadata/json/1> with linked account <domain.com/Users/LyncEnterprise-ApplicationAccount>.

    Created Partner Application <LyncEnterprise-dd9f8b8f52fd4b4fb5f928a0d4a02b9c>.

    THE CONFIGURATION HAS SUCCEEDED.


    ****************** On Lync

    ******************  ERROR

    Test-CsExStorageConnectivity -SipUri jens.madsen@domain.com

    Test-CsExStorageConnectivity : ExCreateItem exchange operation failed,
    code=574, reason=StoreContext{traceId=[2109175579],
    activityId=[cf8138ff-9436-4f56-937e-26ab8c712ab2]}StoreException:
    code=ErrorUnhandledException, reason=Wrapped callback failed --->
    System.InvalidOperationException: Client found response content type of '',
    but expected 'text/xml'.
    The request failed with an empty response.
       at System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapCli
    entMessage message, WebResponse response, Stream responseStream, Boolean
    asyncCall)
       at
    System.Web.Services.Protocols.SoapHttpClientProtocol.EndInvoke(IAsyncResult
    asyncResult)
       at Microsoft.Rtc.Internal.Storage.Exchange.Ews.ExchangeServiceBinding.EndInv
    oke(IAsyncResult asyncResult)
       at Microsoft.Rtc.Internal.Storage.Exchange.Ews.ExchangeServiceBinding.EndCre
    ateItem(IAsyncResult asyncResult)
       at Microsoft.Rtc.Internal.Storage.Adaptor.ExStoreAdaptor.OnCreateItemComplet
    e(IAsyncResult result)
       at
    Microsoft.Rtc.Internal.Storage.StoreAsyncResult`1.CallbackWrapper(IAsyncResult
    result)
       --- End of inner exception stack trace ---
       at Microsoft.Rtc.Internal.Storage.Api.StorageService.EndExecuteCommand(IAsyn
    cResult asyncResult)
    , exception=System.ServiceModel.FaultException:
    StoreContext{traceId=[2109175579],
    activityId=[cf8138ff-9436-4f56-937e-26ab8c712ab2]}StoreException:
    code=ErrorUnhandledException, reason=Wrapped callback failed --->
    System.InvalidOperationException: Client found response content type of '',
    but expected 'text/xml'.
    The request failed with an empty response.
       at System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapCli
    entMessage message, WebResponse response, Stream responseStream, Boolean
    asyncCall)
       at
    System.Web.Services.Protocols.SoapHttpClientProtocol.EndInvoke(IAsyncResult
    asyncResult)
       at Microsoft.Rtc.Internal.Storage.Exchange.Ews.ExchangeServiceBinding.EndInv
    oke(IAsyncResult asyncResult)
       at Microsoft.Rtc.Internal.Storage.Exchange.Ews.ExchangeServiceBinding.EndCre
    ateItem(IAsyncResult asyncResult)
       at Microsoft.Rtc.Internal.Storage.Adaptor.ExStoreAdaptor.OnCreateItemComplet
    e(IAsyncResult result)
       at
    Microsoft.Rtc.Internal.Storage.StoreAsyncResult`1.CallbackWrapper(IAsyncResult
    result)
       --- End of inner exception stack trace ---
       at Microsoft.Rtc.Internal.Storage.Api.StorageService.EndExecuteCommand(IAsyn
    cResult asyncResult)
    Server stack trace:
       at
    System.ServiceModel.Channels.ServiceChannel.HandleReply(ProxyOperationRuntime
    operation, ProxyRpc& rpc)
       at System.ServiceModel.Channels.ServiceChannel.EndCall(String action,
    Object[] outs, IAsyncResult result)
       at System.ServiceModel.Channels.ServiceChannelProxy.InvokeEndService(IMethod
    CallMessage methodCall, ProxyOperationRuntime operation)
       at System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message)
    Exception rethrown at [0]:
       at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage
    reqMsg, IMessage retMsg)
       at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData&
    msgData, Int32 type)
       at
    Microsoft.Rtc.Internal.Storage.IStorageService.EndExecuteCommand(IAsyncResult
    asyncResult)
       at Microsoft.Rtc.Management.Lyss.Cmdlets.LyssCmdletCommon.ExecuteExCommand(S
    toreOperation operation, String sipUri, BaseRequestType ewsRequest, Nullable`1
    autoCreateParentFolder, IStorageService& client, Boolean reAuthorize), inner
    exception=. Please check event log and trace for relevant information.
    At line:1 char:1
    + Test-CsExStorageConnectivity -SipUri jens.madsen@domain.com
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        + CategoryInfo          : InvalidOperation: (:) [Test-CsExStorageConnectiv
       ity], FaultException
        + FullyQualifiedErrorId : ErrorExecuteExchangeCommandFailedWithFaultExcept
       ion,Microsoft.Rtc.Management.Lyss.Cmdlets.TestExStorageConnectivityCmdlet

    Test failed.
    PS C:\Users\jmadsen>



    Jens



    Friday, January 31, 2014 1:13 AM

Answers

  • I fixed the issue

    It had to do with the Lync server still trying to access the old CAS server

    For internal URLs on both CAS servers I am using the internal name, however the external url is https://webmail.domain.com

    On both servers and internally that DNS record points to the old CAS server since we haven't cut over users yet

    This was affecting the connection process some how Lync was using the external URL instead of the internal URL to connect to EWS

    I was able to see with a packet sniffer that Lync frontend was trying to communicate with both the new CAS server and the old CAS server

    When connecting to auto discovery it was connecting to the right CAS server, but after receiving the Autodiscover.xml it started connecting to webmail.ushworls.com (not EXCAS02)

    I create an entry in the local HOST file on the Lync Front end server and pointed webmail.domain.com to the new CAS server

    Issue Fixed – I can remove the entry from the host file after we make the DNS change internally and cut over users

    Friday, February 7, 2014 2:47 PM

All replies

  • The command Set-CsOAuthConfiguration -Identity Global –ExchangeAutoDiscoverURL is used to set URL for the autodiscovery service used by the Office 365 version of Microsoft Exchange Server.

    Please check the requirements for Unified Contact Store and how to deploy Unified Contact Store at

    http://technet.microsoft.com/en-us/library/jj205317.aspx

    For further troubleshooting, you can enable centralized logging to collect trace file, for the details, you can refer to http://blogs.technet.com/b/saleesh_nv/archive/2013/03/14/lync-2013-unified-contact-store-ucs-troubleshooting-tips.aspx


    Lisa Zheng
    TechNet Community Support

    Monday, February 3, 2014 3:16 AM
    Moderator
  • I fixed the issue

    It had to do with the Lync server still trying to access the old CAS server

    For internal URLs on both CAS servers I am using the internal name, however the external url is https://webmail.domain.com

    On both servers and internally that DNS record points to the old CAS server since we haven't cut over users yet

    This was affecting the connection process some how Lync was using the external URL instead of the internal URL to connect to EWS

    I was able to see with a packet sniffer that Lync frontend was trying to communicate with both the new CAS server and the old CAS server

    When connecting to auto discovery it was connecting to the right CAS server, but after receiving the Autodiscover.xml it started connecting to webmail.ushworls.com (not EXCAS02)

    I create an entry in the local HOST file on the Lync Front end server and pointed webmail.domain.com to the new CAS server

    Issue Fixed – I can remove the entry from the host file after we make the DNS change internally and cut over users

    Friday, February 7, 2014 2:47 PM