We have an on-premise Dynamics CRM 2016 install (8.1.0.359) and I am trying to follow these instructions to integrate Yammer:
https://technet.microsoft.com/en-us/library/dn850385.aspx
When I try to sign in to Yammer with my Yammer & CRM admin account I see the following message (email removed):
I seem to be getting a 403 error returned by the YammerConfigWebService's VerifyYammerAdminCredentials.
I am able to sign in to Yammer with the same account on the same server.
Here are the error details:
<?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:soap="schemas.xmlsoap.org/.../envelope" xmlns:xsi="www.w3.org/.../XMLSchema-instance" xmlns:xsd="www.w3.org/.../XMLSchema"><soap:Body><soap:Fault><faultcode>soap:Server</faultcode><faultstring>Microsoft.Crm.CrmException: The server refuses to fulfill the request. ---> System.Net.WebException: The remote server returned an error: (403) Forbidden. at System.Net.HttpWebRequest.GetResponse() at Microsoft.Crm.ExternalIntegration.CommonWebRequest.GetResponse() at Microsoft.Crm.ExternalIntegration.HttpUtil.GetWebResponse(CommonWebRequest request) at Microsoft.Crm.YammerIntegration.HttpUtil.DefaultHttpRequestExecutor(Uri uri, String accessToken, String method, String contentType, String accept, String payload, TimeSpan connectionTimeout) --- End of inner exception stack trace --- at Microsoft.Crm.YammerIntegration.HttpUtil.ProcessError(WebException exception) at Microsoft.Crm.YammerIntegration.HttpUtil.DefaultHttpRequestExecutor(Uri uri, String accessToken, String method, String contentType, String accept, String payload, TimeSpan connectionTimeout) at Microsoft.Crm.YammerIntegration.HttpUtil.Post(Uri url, NameValueCollection parameters, TimeSpan connectionTimeout, String requestBody, HttpRequestExecutor requestExecutor) at Microsoft.Crm.YammerIntegration.YammerProxy.ReadAccessToken(String applicationId, String applicationSecret, String userEmail, String userPassword, TimeSpan connectionTimeout) at Microsoft.Crm.Common.Application.WebServices.YammerConfigWebService.AuthenticateYammerUser(String userEmail, String userPassword) at Microsoft.Crm.Common.Application.WebServices.YammerConfigWebService.VerifyYammerAdminCredentials(String email, String password) ---> The server refuses to fulfill the request. ---> The remote server returned an error: (403) Forbidden.</faultstring><faultactor>server/.../YammerConfigWebService.asmx</faultactor><error xmlns:xsd="www.w3.org/.../XMLSchema" xmlns:xsi="www.w3.org/.../XMLSchema-instance"><code>0x8005F102</code><exception>Unhandled Exception: System.ServiceModel.FaultException`1[[Microsoft.Xrm.Sdk.OrganizationServiceFault, Microsoft.Xrm.Sdk, Version=8.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]]: The server refuses to fulfill the request.Detail: <OrganizationServiceFault xmlns:i="www.w3.org/.../XMLSchema-instance" xmlns="schemas.microsoft.com/.../Contracts"> <ErrorCode>-2147094270</ErrorCode> <ErrorDetails xmlns:d2p1="schemas.datacontract.org/.../System.Collections.Generic" /> <Message>The server refuses to fulfill the request.</Message> <Timestamp>2017-06-28T15:23:20.5196631Z</Timestamp> <InnerFault> <ErrorCode>-2147220970</ErrorCode> <ErrorDetails xmlns:d3p1="schemas.datacontract.org/.../System.Collections.Generic" /> <Message>System.Net.WebException: Microsoft Dynamics CRM has experienced an error. Reference number for administrators or support: #3256B428</Message> <Timestamp>2017-06-28T15:23:20.5196631Z</Timestamp> <InnerFault i:nil="true" /> <TraceText i:nil="true" /> </InnerFault> <TraceText i:nil="true" /> </OrganizationServiceFault> </exception><parameters /><displaytitle>Error</displaytitle><displaytextencoded>An error has occurred. Try this action again. If the problem continues, check the Microsoft Dynamics CRM Community for solutions or contact your organization's Microsoft Dynamics CRM Administrator. Finally, you can contact Microsoft Support.</displaytextencoded><displaytext>An error has occurred. Try this action again. If the problem continues, check the Microsoft Dynamics CRM Community for solutions or contact your organization's Microsoft Dynamics CRM Administrator. Finally, you can contact Microsoft Support.</displaytext><description>The server refuses to fulfill the request.</description><file>Not available</file><line>Not available</line><details>The server refuses to fulfill the request.</details><traceInfo /><requesturl>server/.../YammerConfigWebService.asmx</requesturl><pathAndQuery>/org/AppWebServices/YammerConfigWebService.asmx</pathAndQuery><source>SOAP</source><stacktrace>[WebException: The remote server returned an error: (403) Forbidden.] at System.Net.HttpWebRequest.GetResponse() at Microsoft.Crm.ExternalIntegration.CommonWebRequest.GetResponse() at Microsoft.Crm.ExternalIntegration.HttpUtil.GetWebResponse(CommonWebRequest request) at Microsoft.Crm.YammerIntegration.HttpUtil.DefaultHttpRequestExecutor(Uri uri, String accessToken, String method, String contentType, String accept, String payload, TimeSpan connectionTimeout) [CrmException: The server refuses to fulfill the request.] at Microsoft.Crm.YammerIntegration.HttpUtil.ProcessError(WebException exception) at Microsoft.Crm.YammerIntegration.HttpUtil.DefaultHttpRequestExecutor(Uri uri, String accessToken, String method, String contentType, String accept, String payload, TimeSpan connectionTimeout) at Microsoft.Crm.YammerIntegration.HttpUtil.Post(Uri url, NameValueCollection parameters, TimeSpan connectionTimeout, String requestBody, HttpRequestExecutor requestExecutor) at Microsoft.Crm.YammerIntegration.YammerProxy.ReadAccessToken(String applicationId, String applicationSecret, String userEmail, String userPassword, TimeSpan connectionTimeout) at Microsoft.Crm.Common.Application.WebServices.YammerConfigWebService.AuthenticateYammerUser(String userEmail, String userPassword) at Microsoft.Crm.Common.Application.WebServices.YammerConfigWebService.VerifyYammerAdminCredentials(String email, String password) </stacktrace></error></soap:Fault></soap:Body></soap:Envelope>
*This post is locked for comments