不支持请求的安全协议_Shotgun不支持TLS协议的解决方案

    不知从几何时起,Shotgun API突然在某些DCC软件版本中开始不支持,出现如下tlsv1 alert protocol version错误

[Errno 1] _ssl.c:507: error:1407742E:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert protocol version

    在NukeX10.5v1中

c465f5771691e3a04d356c8cb1bb5ec6.png

    在Maya2016中

bb22695636db25d6c8118caefa0680e0.png

    我在Maya2014、Maya2015、Maya2016、Maya2017以及Maya2018中,还有NukeX10.5v1以及NukeX11.2v3中,以及Houdini16.5、Houdini17.0和Houdini17.5中测试调用Shotgun API发现只有Maya2016以及NukeX10.5v1中会出现这样的问题。

    查询Shotgun官方文档,给了一些说明

https://support.shotgunsoftware.com/hc/en-us/articles/360009371913-Insecure-HTTPS-and-Old-Toolkit-Core-Deprecation-May-15th-2019

ee05a1f46f9eb55d9a27573718abccc7.png

    大概意思就是TLS这个协议不安全,Shotgun API有所调整,所以DCC软件如果不支持v1.2版本将会报tlsv1 alert protocol version这个错误

    这个问题是可以解决的,DCC软件官方也给了一些方案,比如Nuke写了如下一篇fix的文章

https://support.foundry.com/hc/en-us/articles/360007262600-Q100542-Updating-scripts-for-TLS-1-2-enforcement-in-Flix-5

e4d316662c312d0758c01e0b9c02f7d5.png

    下载这个7z压缩包,将NukeX10.5v1安装包中的两个文件ssl.py和_ssl.pyd替换就可以解决问题

    Maya官方也写了一篇fix的文章

https://knowledge.autodesk.com/support/maya/troubleshooting/caas/simplecontent/content/autodesk-transport-layer-security-updates-require-maya-security-fix.html

    我测试了一下,Maya这个并没有什么卵用,大家可以试试看。

    下面是我自己想的一个在Maya2016中的解决方案,是将Maya2015中的

C:\Program Files\Autodesk\Maya2015\Python\DLLs\_ssl.pyd文件覆盖到Maya2016中对应位置就可以解决这个问题,暂时还不清楚会不会出现别的问题。

    解决这个问题还是很开心的,这样公司整个Shotgun流程就算打通了,全流程运作应该不是什么大的问题,后期开发维护起来也能随心所欲,这里感谢田浩大大的指点。

    过程中还有个经验就是Python数据库连接以前想着用PyQt里的QtSql来用,后来发现因为PyQt在每个DCC软件中版本问题以及数据库drivers支持都不太一样,遇到的坑会非常多,所以建议大家弃之改用别的连接库吧,我改用了psycopg2。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值