Показать сообщение отдельно
Старый 22.05.2012, 12:06   #9  
a33ik is offline
a33ik
Чайный пьяница
Аватар для a33ik
MCP
MCBMSS
Злыдни
Соотечественники
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,243 / 896 (36) +++++++
Регистрация: 02.07.2008
Адрес: Greenville, SC
Цитата:
Сообщение от g.Naukovych Посмотреть сообщение
Здесь ровно то же самое, что я предложил.
NetworkCredential)CredentialCache.DefaultCredentials
берутся из пула приложения. Веб-сервис у нас не входит в CRM и является сторонним сайтом. Аутентификация моя в CRM для него не интересна. Значит мне либо при подключении к нему необходимо указать логин и пароль. Либо использовать анонимную авторизацию и аутентификацию пула. Где и будут DefaultCredentials того пользователя, от которого работает пул.
Проблема кода, то что не указывалось, что необходимо использовать DefaultNetworkCredential. Сравните:

Код топик стартера:
Код:
var cred = new ClientCredentials();
OrganizationServiceProxy(organizationUri, null, cred, null);
Код из блога:
Код:
ClientCredentials credentials = new ClientCredentials();
// set default credentials for OrganizationService
credentials.Windows.ClientCredential = (NetworkCredential)CredentialCache.DefaultCredentials;
// or
credentials.Windows.ClientCredential = System.Net.CredentialCache.DefaultNetworkCredentials;
OrganizationServiceProxy orgProxy = new OrganizationServiceProxy(organizationUri, homeRealmUri, credentials, null);
Думаю, что разница в коде видна невооружённым глазом.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством.

Подписывайтесь на мой блог, twitter и YouTube канал.
Пользуйтесь моим Ultimate Workflow Toolkit