集成错误:“根据验证过程,远程证书无效”——使用FTPS文件位置时出现
症状
当使用 FTPS 作为扫描文件夹设置投递文件集成时,集成无法启动,并出现错误:“根据验证过程,远程证书无效。”
适用环境
BarTender 2019 及更高版本
集成平台
IIS
解决方法/答案
在设置集成时,构建器会尝试连接到 FTPS 服务器以访问指定位置。但此时会收到无效证书。这通常发生在 FTPS 服务器托管在 IIS 上并使用自签名证书的情况下。
自签名证书实际上缺少集成构建器用于建立安全连接所需的特定密钥。如果我们尝试用 FileZilla 连接到 FTPS 站点,也会看到类似的结果:
错误 -48 表示证书密钥不正确,软件无法建立安全连接。
创建合适的证书
以管理员身份打开 PowerShell(Win键+X),输入以下命令,并将 HOSTNAME 和 FTPSLOCATION 替换为你自己的信息。(注意这两个位置的引号是必需的)
PS C:\Windows\system32> new-selfsignedcertificate -dnsname "HOSTNAME" -certstorelocation "FTPSLOCATION" -friendlyname "powershellcert" -keydescription "self-signed cert" -keyalgorithm "RSA" -keylength "2048" -keyusage dataencipherment, keyencipherment, digitalsignature
创建证书后,它会出现在你电脑的个人证书中。
将证书添加到 IIS 服务器
在你电脑的证书存储中找到该证书。你可以在控制面板中找到,或在开始菜单中搜索:
打开后,依次进入“个人 > 证书”,找到你刚刚创建的证书:
右键点击该密钥,选择“所有任务 > 导出”。将密钥保存到你容易找到的位置。
在 IIS 管理器中,找到“服务器证书”,并将证书导入到列表中。
现在你应该能在这里看到该证书。接下来,在 FTPS 站点中,找到“FTP SSL 设置”,并在下拉菜单中选择新证书:
保存设置后,集成中的错误就会消失。
更多信息(可选)
这似乎是 IIS 自签名证书流程中的一个错误。其他自签名证书生成工具似乎没有这个问题。