AXForum  
Вернуться   AXForum > Microsoft Dynamics CRM > Dynamics CRM: Разработка
DAX
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 15.04.2015, 14:16   #1  
lode is offline
lode
Участник
Аватар для lode
 
37 / 12 (1) ++
Регистрация: 23.03.2009
Адрес: Россия, Екатеринбург
Цитата:
Сообщение от a33ik Посмотреть сообщение
Рукалицо... Не судите по своему опыту. Почитайте для самообразования надосуге.
Может быть. Возня с сертификатами то еще удовольствие.

Цитата:
Сообщение от probka Посмотреть сообщение
Вы не тот пример смотрите. Мой случай вот этот:
https://msdn.microsoft.com/en-us/library/cc151054.aspx
там тоже есть и логин и пароль
Вообще разрешать анонимный доступ к вебсервису (даже такой как CrmDiscoveryService) - это не очень хорошо.

Цитата:
Сообщение от probka Посмотреть сообщение
Это Вы мне привели кусок не про авторизацию. Это параметры запроса, который передается в метод Execute веб сервиса. Внимательнее надо код читать. И так же можно было внимательнее почитать меня, я парой постов выше написала что значения параметров у меня есть.

Если мои слова Вас не убеждают, то, может быть, подскажете, как написать SOAP запрос к веб-сервису /MSCRMServices/2007/SPLA/CrmDiscoveryService.asmx таким образом, чтобы он включал в себя и авторизацию на данном сервисе?
Чем Вас не устраивает ответ, помеченный как решение по ссылке выше?
CRM 4.0 Авторизация

X++:
1. Create an admin user in the active directory where the crm is install.
2. Add the user created in step 1 in the crm user.
3. Set the running user of the application as the created user in step 1.
4. Add the running user of the application pool of the crm service.
5. In the application, use the following code to connect to the discovery service (that give you a authentication ticket on crm) and use it to do the call:

           CrmService service = new CrmService();

            CrmAuthenticationToken token = new CrmAuthenticationToken();
            token.AuthenticationType = 0;
            token.OrganizationName = organization;

            CrmDiscoveryService discoveryService = new CrmDiscoveryService();
            discoveryService.UseDefaultCredentials = true;
            discoveryService.Url = discoveryServiceUrl;


//Call the crm discovery service to get the related organisation of the user that execute the code (as created in step 2)
            RetrieveOrganizationsRequest orgRequest = new RetrieveOrganizationsRequest();
            RetrieveOrganizationsResponse orgResponse = (RetrieveOrganizationsResponse)discoveryService.Execute(orgRequest);

            OrganizationDetail orgInfo = new OrganizationDetail();

            foreach (OrganizationDetail orgDetail in orgResponse.OrganizationDetails)
            {

                if (orgDetail.OrganizationName == [your organisation name])
                {
                    orgInfo = orgDetail;

                    var cred = ConfigurationData.GetUriCredentialSection("DiscoveryService/Credentials");

                    RetrieveCrmTicketRequest ticketRequest = new RetrieveCrmTicketRequest();
                    ticketRequest.OrganizationName = organization;
                    ticketRequest.UserId =[user name of the step 2 user]
                    ticketRequest.Password = [user password of the step 2 user] 
                    RetrieveCrmTicketResponse ticketResponse = (RetrieveCrmTicketResponse)discoveryService.Execute(ticketRequest); //retrive the authentification

                    token.CrmTicket = ticketResponse.CrmTicket;
                    break;
                }
            }

            service.CrmAuthenticationTokenValue = token;
            service.Url = serviceUrl;
            service.UseDefaultCredentials = true;

//Do your own call with service

6. Enjoy the crm service possibility!

Hope that could help somwone :)

Последний раз редактировалось lode; 15.04.2015 в 14:19.
Старый 15.04.2015, 15:28   #2  
probka is offline
probka
Участник
Аватар для probka
 
98 / 11 (1) +
Регистрация: 20.02.2012
Адрес: Ростов-на-Дону
Цитата:
Сообщение от lode Посмотреть сообщение
там тоже есть и логин и пароль
Вам тоже советую внимательнее читать код

Цитата:
Сообщение от lode Посмотреть сообщение
Вообще разрешать анонимный доступ к вебсервису (даже такой как CrmDiscoveryService) - это не очень хорошо.
Тогда подскажите, как реализовать к нему доступ из PHP через интернет неанонимно.

Цитата:
Сообщение от lode Посмотреть сообщение
Чем Вас не устраивает ответ, помеченный как решение по ссылке выше?
CRM 4.0 Авторизация
Устраивает всем, кроме того, что у меня почему-то из под C# не виден сервис /MSCRMServices/2007/SPLA/CrmDiscoveryService.asmx .
__________________
Так победим!

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
crminthefield: Podcast and Overview: Microsoft Dynamics CRM 2011 Update Rollup 15 Blog bot Dynamics CRM: Blogs 1 10.02.2016 10:26
crminthefield: Podcast and Overview: Microsoft Dynamics CRM 2011 Update Rollup 17 Blog bot Dynamics CRM: Blogs 0 10.05.2014 06:30
crminthefield: Podcast and Overview: Microsoft Dynamics CRM 2013 Update Rollup 2 Blog bot Dynamics CRM: Blogs 0 15.04.2014 01:15
crminthefield: Podcast and Overview: Microsoft Dynamics CRM 2011 Update Rollup 16 Blog bot Dynamics CRM: Blogs 0 23.01.2014 03:15
crminthefield: Podcast and Overview: Microsoft Dynamics CRM 2011 Update Rollup 10 Blog bot Dynamics CRM: Blogs 0 17.08.2012 03:27

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 10:11.