Note that there are some explanatory texts on larger screens.

plurals
  1. POCaller was not authenticated by the service error - CRM 2011 Deployment wcf service method call over SSL?
    primarykey
    data
    text
    <p>I am trying to utilize <strong>CRM 2011 deployment service for CRM 2011 management</strong> in a custom made vb.net application. <strong>Please do not tell me that i should use deployment manager for my operations as i have to develop this custom application tailored to the specific requirements for my organization.</strong></p> <p><strong>Everything works fine when i use http but when i try to connect call a method of deployment service using SSL (HTTPS is enabled at the server)</strong></p> <p><strong>Here is my relevant client configurtion for HTTPS/SSL only</strong></p> <pre><code>&lt;binding name="CustomBinding_IDeploymentServiceHttps"&gt; &lt;security defaultAlgorithmSuite="Default" authenticationMode="SspiNegotiatedOverTransport" requireDerivedKeys="false" securityHeaderLayout="Strict" includeTimestamp="true" keyEntropyMode="CombinedEntropy" protectTokens="false" messageSecurityVersion="WSSecurity11WSTrustFebruary2005WSSecureConversationFebruary2005WSSecurityPolicy11BasicSecurityProfile10" requireSecurityContextCancellation="true"&gt; &lt;localClientSettings cacheCookies="true" detectReplays="false" replayCacheSize="900000" maxClockSkew="00:05:00" maxCookieCachingTime="Infinite" replayWindow="00:05:00" sessionKeyRenewalInterval="10:00:00" sessionKeyRolloverInterval="00:05:00" reconnectTransportOnFailure="true" timestampValidityDuration="00:05:00" cookieRenewalThresholdPercentage="60" /&gt; &lt;localServiceSettings detectReplays="false" issuedCookieLifetime="10:00:00" maxStatefulNegotiations="128" replayCacheSize="900000" maxClockSkew="00:05:00" negotiationTimeout="00:01:00" replayWindow="00:05:00" inactivityTimeout="00:02:00" sessionKeyRenewalInterval="15:00:00" sessionKeyRolloverInterval="00:05:00" reconnectTransportOnFailure="true" maxPendingSessions="128" maxCachedCookies="1000" timestampValidityDuration="00:05:00" /&gt; &lt;secureConversationBootstrap /&gt; &lt;/security&gt; &lt;textMessageEncoding maxReadPoolSize="64" maxWritePoolSize="16" messageVersion="Default" writeEncoding="utf-8"&gt; &lt;readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384" maxBytesPerRead="4096" maxNameTableCharCount="16384" /&gt; &lt;/textMessageEncoding&gt; &lt;httpsTransport manualAddressing="false" maxBufferPoolSize="524288" maxReceivedMessageSize="65536" allowCookies="false" authenticationScheme="Anonymous" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard" keepAliveEnabled="true" maxBufferSize="65536" proxyAuthenticationScheme="Anonymous" realm="" transferMode="Buffered" unsafeConnectionNtlmAuthentication="false" useDefaultWebProxy="true" requireClientCertificate="false" /&gt; &lt;/binding&gt; </code></pre> <p>and</p> <pre><code> &lt;client&gt; &lt;!-- Deployment Service Endpoints HTTP,HTTPS--&gt; &lt;endpoint address="http://10.40.30.20:5555/XRMDeployment/2011/Deployment.svc" binding="customBinding" bindingConfiguration="CustomBinding_IDeploymentService" contract="CRM2011DeploymentSvc.IDeploymentService" name="CustomBinding_IDeploymentService"&gt; &lt;identity&gt; &lt;userPrincipalName value="LAB2010\administrator" /&gt; &lt;/identity&gt; &lt;/endpoint&gt; &lt;endpoint address="https://www.mydomain.com/XRMDeployment/2011/Deployment.svc" binding="customBinding" bindingConfiguration="CustomBinding_IDeploymentServiceHttps" contract="CRM2011DeploymentSvc.IDeploymentService" name="CustomBinding_IDeploymentServiceHttps" /&gt; &lt;/client&gt; </code></pre> <p>I am using the following code in my asp.net application</p> <pre><code>Dim DomainCredentials As New NetworkCredential(ADUserName, ADPassword, DomainNETBIOS) If CRMDeploymentServiceURl.Trim().ToLower().StartsWith("https://") Then _CrmDeployService = New DepSvc.DeploymentServiceClient("CustomBinding_IDeploymentServiceHttps") Else _CrmDeployService = New DepSvc.DeploymentServiceClient("CustomBinding_IDeploymentService") End If _CrmDeployService.ClientCredentials.Windows.ClientCredential = DomainCredentials _CrmDeployService.Endpoint.Address = New EndpointAddress(New Uri(CRMDeploymentServiceURl)) _CrmDeployService.Endpoint.Binding.CloseTimeout = New TimeSpan(0, 30, 0) _CrmDeployService.Endpoint.Binding.OpenTimeout = New TimeSpan(0, 30, 0) _CrmDeployService.Endpoint.Binding.ReceiveTimeout = New TimeSpan(0, 30, 0) _CrmDeployService.Endpoint.Binding.SendTimeout = New TimeSpan(0, 30, 0) </code></pre> <p>The above code is used just for initialization of the service. Later on when i call a method using _CrmDeployService object , everything works fine over http but not over https</p> <p>Please tell what can i do to communicate to the HTTPS secured Deployment service without using any client certificate. <strong>(SSL certificate from DigiCert is already installed on the server and website can be browsed over SSL in any web browser. What other certificate do i need and why?)</strong></p> <p>Also IIS settings have been done as needed. <strong>WCf service is browesable over SSL/https via web browser.</strong>) I have tried anonymous authentication as well as authentication via a domain user at the server and handled the same in code as well. </p> <p>Is there any configuration change that i need to make? Is this a WCF specific issue?. I have tried solutions posted on <a href="https://stackoverflow.com/questions/284538/wcf-error-the-caller-was-not-authenticated-by-the-service">stackoverflow</a> as well as over msdn but to no avail. <strong>I cannot change the server's web.config and i must not use a client certificate but i can use any credentials required for authentication and i must achieve it over SSL. Please help</strong>. Thanks</p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload