python中django使用pyopenssl库解析数字证书

pyopenssl可以很方便的解析证书文件里的各种证书信息

安装

pip3 install pyopenssl

使用

我这里的使用场景:平时业务域名用到的证书,都是acme制作的免费证书,有效期比较短,需要经常更换,所以为了统一去检查证书的有效期,把证书上传到运维平台,运维把证书上传到服务器时,就需要通过证书文件解析去获取证书的域名机构有效期等,前端以数据表格的形式按照过期时间的倒序排列,当然还可以通过对过期时间的比对来提前报警提醒等
#获取证书相关信息

path = **** 定义自己的证书文件路径
with open(path, 'r') as f:
      cert = crypto.load_certificate(crypto.FILETYPE_PEM, f.read())
#获取域名
dname = cert.get_subject().CN
#获取颁发机构
org = cert.get_issuer().CN.split(" ")[0]
#获取开始结束时间并转为东八区
datetime_struct = parser.parse(cert.get_notBefore().decode("UTF-8"))
CreateTime = datetime.datetime.strptime(str(datetime_struct).replace('+00:00', ''),
                                                        '%Y-%m-%d %H:%M:%S') + datetime.timedelta(hours=8)
datetime_struct_end = parser.parse(cert.get_notAfter().decode("UTF-8"))
ExpiredTime <
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

蒙多不减肥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值