AnsweredAssumed Answered

Using web services cause error: WSDoAllReceiver: Request does not contain required Security header

Question asked by alnedru on Mar 20, 2013
Hello

Basically recently I've started to try out with Alfresco and .Net management.

I generated WCF procy classes for alfresco web services.

I could successfully authenticate using AuthenticationService, but I ran into a problem with another service which in alfresco wiki said that should be configured against "HTTPS" but in my case it isn't like that. Basicall all services are available on 'http'. That is why in my config file security i set to 'None', because if i set it to "TransportWithMessageCredential" i get an error sayting that instead of "http" i should use "https".

Anyways, now when I try to call any other service on "http" it throws me an error:

WSDoAllReceiver: Request does not contain required Security header

I searched on internet, but I didn't really found a resolution to this issue, maybe here someone could bypass it?

I've read that it has something to do with the "TimeStamp" in the header … i tried programmatically inject timestamp into header but it wasn't successfully … so at this moment I really haven't got a clue how to resolve this ….

Any input will be more than welcome.

PS: if any code that i use will be needed I'll provide.

Config file has following entries:

<binding name="RepositoryServiceSoapBinding" closeTimeout="00:01:00"
                openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00"
                allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard"
                maxBufferSize="65536" maxBufferPoolSize="524288" maxReceivedMessageSize="65536"
                messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered"
                useDefaultWebProxy="true">
                <readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384"
                    maxBytesPerRead="4096" maxNameTableCharCount="16384" />
                <security mode="None">
                  <message clientCredentialType="UserName"/>
                </security>
              </binding>

            <endpoint address="http://webadress:2002/alfresco/api/RepositoryService"
                binding="basicHttpBinding" bindingConfiguration="RepositoryServiceSoapBinding"
                contract="RepositoryServiceSoapPort" name="RepositoryService" />

Outcomes