Как прекратить сбои задания SharePoint 2013 Custom Timer, отправляя данные в службу SOAP SIEBEL через Intr anet после включения TLS 1.2 - PullRequest
0 голосов
/ 15 января 2020

Настраиваемое задание таймера развертывается в ферме SharePoint 2013 (On-Premises).

Решение написано с использованием. NET Framework 4.5.

Задания таймера выполняются на уровне обслуживания Windows, поэтому не предполагают никакого отношения к IIS.

Задание отправляет элементы ListItems SharePoint в службу SOAP SIEBEL.

Все работало нормально, пока ребята из сети не включили TLS 1.2 по сети.

URL-адрес доступен из браузера с SSL .

Мы не обновили классы WSDL и Proxy, предполагая, что WSDL не нужно ничего делать с TLS, исправьте меня, если я ошибаюсь.

Мы попробовали следующее от ссылка

  1. Все три фрагмента Себастьяна Кастальди.
  2. Добавление кода Реми
  3. Код Мануэля Ролдана

Кроме того, это в некоторой степени помогает изменить поведение, но не работает. У нас нет доступа к Серверу. Что мы можем сделать, это предоставить WSP-решение Администратору, который создает журнал и использует те, которые мы получаем ниже. ошибки

* 1 031 * при попытке

System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Ssl3;

Журнал

1/14/2020 10:27:04 AM

Ошибка при использовании Ssl3 Исключение: базовое соединение было закрыто : При получении произошла непредвиденная ошибка.

При попытке

System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls;

1/14/2020 10:27:04

Сбой при использовании исключения Tls: базовое соединение было закрыто: при получении произошла непредвиденная ошибка.

При попытке

System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls11;

Журнал

1/14/2020 10:27:04

Сбой при использовании Tls11 Исключение: базовое соединение было закрыто: при получении произошла непредвиденная ошибка.

При попытке

System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls12;

Журнал

1/14/2020 10:27:04

Сбой при использовании Tls12 Исключение: базовое соединение было закрыто: не удалось установить sh доверительные отношения для безопасного канала SSL / TLS.

Мы видим, что при использовании Tls12 ошибка меняется.

Я думаю, что мы попробовали все на Ap На уровне сервера / кода теперь нужно проверить на уровне сервера, если мы что-то пропустили, пожалуйста, дайте мне знать.

Мы можем отправить данные, удалив ниже значение реестра:

HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ SecurityProviders \ SCHANNEL \ KeyExchangeAlgorithms \ PKCS

Удаляя реестр PKCS, мы можем отправлять данные в SIELBEL

Также каждый может поделиться своими мыслями, вызывающими это ошибка.

...