嘗試連接到CRM 2011 Web服務時發生意外錯誤。這裏的背景:CRM 2011 SecurityNewiationException嘗試訪問Web服務
連接字符串(敏感信息已刪除):"ServiceUri=https://crmdomain.com/OrgName/XRMServices/2011/Organization.svc; Url=https://crmdomain.com/OrgName; Username=appusername; Password=hidden"/>
創建連接如下:
- 解析康恩串入CRMConnection:
var conn = Microsoft.Xrm.Client.CrmConnection.Parse(connString);
(在這一點上,屬性在CrmConnection
對象外觀正確,包括ClientCredentials) - 創建組織代理:
var orgProxy = new OrganizationServiceProxy(conn.ServiceUri, conn.HomeRealmUri, conn.ClientCredentials, conn.DeviceCredentials);
- 創建數據上下文:
var context = new MyContext(orgProxy);
此時,從context
檢索的任何數據時,會出現以下WCF異常:
System.ServiceModel.Security.SecurityNegotiationException發生 消息= 的呼叫者未被該服務認證。 源= mscorlib程序 堆棧跟蹤: 服務器堆棧跟蹤: 在System.ServiceModel.Security.IssuanceTokenProviderBase'1.DoNegotiation(時間跨度超時) 在System.ServiceModel.Security.SspiNegotiationTokenProvider.OnOpen(時間跨度超時) 在System.ServiceModel .Security.WrapperSecurityCommunicationObject.OnOpen(TimeSpan超時)
...等等。
The InnerException顯示IsSenderFault=True
和IsPredefinedFault=True
。
這是怎麼回事?
如果您使用ServerConnection助手類來構建連接字符串,這仍會失敗嗎? – Josh 2011-05-20 16:34:28