从 SSIS 中经过身份验证的 Web HTTP 连接管理器下载文件
本文关键字:连接管 连接 管理器 下载 文件 HTTP Web SSIS 经过 身份验证 | 更新日期: 2023-09-27 18:35:45
问题:我正在自动从经过身份验证的 web 下载文件。我尝试了不同的替代方案,一种使用 HTTP 连接管理器,另一种使用脚本任务
HTTP 连接管理器
我已经包含了网络的URL,用户名和密码,但是当我尝试测试连接时,发生了以下错误。
无法连接到远程服务器
问题:
- 对于 URL ,它应该直接指向服务器或登录页面吗?我尝试了任何一种方式,但没有奏效
- 是否需要在"域"框和"客户端证书"中指定任何内容?
- 什么是客户端证书?
脚本任务
我已经点击了使用脚本任务下载文件的链接
使用 SSIS 从网站下载源文件
它抛出未知异常,不确定它是什么?
问题:
有没有使用脚本任务的简单解决方案?
在任何一种情况下,您能否帮助我连接到经过身份验证的Web并下载文件并检查文件是否已存在。我没有使用 SSIS 从 Web 下载文件的经验。我从这里尝试了不同的解决方案,但没有一个奏效。
SSIS 中的 HTTP 连接管理器在更高版本的 .Net 中使用 TLS1.2,下面是一个指南:
- .NET 4.6 及更高版本。您无需执行任何其他工作支持 TLS 1.2,默认支持。
-
.NET 4.5.支持 TLS 1.2,但它不是默认协议。你需要选择加入才能使用它。以下代码将使 TLS 1.2默认,请确保在连接到受保护的资源:
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12
-
.NET 4.0.不支持 TLS 1.2,但如果你有 .NET 4.5(或以上)安装在系统上,那么您仍然可以选择加入TLS 1.2即使您的应用程序框架不支持它。唯一的问题是 .NET 4.0 中的 SecurityProtocolType 没有TLS1.2 的条目,因此我们必须使用此枚举值:
ServicePointManager.SecurityProtocol = (SecurityProtocolType)3072;
-
.NET 3.5 或更高版本。不支持 TLS 1.2 (*),并且没有解决方法。将应用程序升级到较新版本的框架。
我在这里发现:https://blogs.perficient.com/2016/04/28/tsl-1-2-and-net-support/
如果要连接到的网站使用的是 TLS1.0 或 TLS1.1,则在更高版本的 .Net 版本(4.6 或更高版本)中将无法连接到它