Ошибка WebClient (403) для сайта (ZOHO) только в задаче сценария служб SSIS

У меня есть этот простой код C # в моем пакете SSIS:

string ViewMetadata = "https://people.zoho.eu/people/api/views?authtoken=XXXXXX";
System.Net.WebClient Client = new System.Net.WebClient();
var data= Client.DownloadString(ViewMetadata);

Раньше он работал нормально, но после истечения срока действия токена доступа мы его изменили. он больше не работает, и я получаю сообщение об ошибке (403 запрещено).

странно то, что я могу открыть этот URL-адрес в chrome (с моим новым токеном частного доступа вместо XXXX), и даже когда я использую простое решение C # вне SSIS, оно работает нормально. Я искал его, и люди предлагают добавить заголовки, поэтому я пробовал все, но у меня ничего не работает. (WebClient 403 запрещено)

также, если я изменю URL-адрес на что-то еще, например "google.com", все будет работать нормально даже в SSIS.

Спасибо за помощь

РЕДАКТИРОВАТЬ: здесь ничего не касается токена доступа, потому что вы можете получить страницу с ошибкой с этим токеном произвольного доступа, но я получаю ошибку 403 в SSIS.


person Hooman Nemati    schedule 17.02.2019    source источник
comment
Итак, токен доступа истек, и вы создали новый. Вы обновили скрипт для использования нового токена, но он по-прежнему не работает. Однако использование того же токена в браузере работает нормально, да? Чтобы убедиться, что кэширование учетных данных не происходит, я бы открыл сеанс просмотра в частном режиме или в режиме инкогнито (Windows, Shift-N в Chrome. Win, Shift-P в большинстве других браузеров), а затем подтвердил, что токен продолжает там работать. Если да, то проблема в скрипте SSIS. Если нет, то дело в самом токене   -  person billinkc    schedule 17.02.2019
comment
нет ничего о токене доступа, потому что даже если вы проверите этот URL (people.zoho .eu / people / api / views? authtoken = XXXXXX) Выдает ошибку, которую я могу прочитать на C #, но получаю ошибку 403 в SSIS.   -  person Hooman Nemati    schedule 18.02.2019
comment
TLS, только что протестированный на моей машине, и ваш код выше сначала возвращал 403. Я добавил ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12; теперь он возвращает 400 неверных запросов. В зависимости от того, какую версию инструментов данных и .net вы используете, по умолчанию не используется TLS 1.2, и zoho применяет его, вызывая ошибку 403.   -  person Tim Mylott    schedule 18.02.2019