От другой стороны была получена необеспеченная или неправильно защищенная ошибка. См. Внутреннее исключение FaultException для кода ошибки и подробностей.

Когда я пытаюсь выполнить операцию CRM CRUD с помощью консольного приложения, я получаю следующую ошибку:

System.ServiceModel.Security.MessageSecurityException HResult = 0x80131501 Сообщение = От другой стороны получена незащищенная или неправильно защищенная ошибка. См. Внутреннее исключение FaultException для кода и подробностей. Источник = mscorlib

class Program
{

    static void Main(string[] args)
    {
         IOrganizationService _serviceProxy = crmConnection();

         Entity con = new Entity("contact");
         con["lastname"] = "test"; 
         _serviceProxy.Create(con);
    }
    private static IOrganizationService crmConnection()
    {
    ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
    Uri oUri = new Uri("https://XXXXXXXX.api.crm.dynamics.com/XRMServices/2011/Organization.svc");          
    ClientCredentials clientCredentials = new ClientCredentials();
    clientCredentials.UserName.UserName = "XXXXXXXXXXXX";
    clientCredentials.UserName.Password = "XXXXXXXXXXXXXXXXXX";  
    OrganizationServiceProxy _serviceProxy = new OrganizationServiceProxy(oUri, null,clientCredentials,null);
    _serviceProxy.Timeout = new TimeSpan(0, 10, 0);
    return _serviceProxy;
    }
}

Заранее спасибо.

От другой стороны получена незащищенная или неправильно защищенная ошибка


person Sidhu    schedule 07.05.2019    source источник
comment
На это уже можно ответить: stackoverflow.com/questions/1484601/. Если нет, опишите подробнее, включая код, который вы используете.   -  person Zach Mast    schedule 07.05.2019
comment
Спасибо за ответ. Добавлен код   -  person Sidhu    schedule 07.05.2019


Ответы (1)


Попробуйте использовать Строка подключения с XrmTooling таким образом вы можете избежать прямого вызова Organization.svc и обработать перенаправление на SDK.

var conn = new CrmServiceClient("AuthType=Office365;[email protected]; Password=yyyyyy;Url=https://xxxx.crm.dynamics.com;RequireNewInstance=True");
IOrganizationService _orgService = conn.OrganizationWebProxyClient ?? (IOrganizationService)conn.OrganizationServiceProxy;
return _orgService;  

Если ошибка не исчезнет, ​​это может быть связано с разницей между временем вашего ПК и Dynamics Server, настроенным на + -4 минуты, и попробуйте еще раз.

Надеюсь, это поможет

person Marcelo Acosta Díaz    schedule 23.07.2019