当前位置: 首页 > news >正文

牛牛截图控件与利洽远程控制产品升级-支持证书自动升级

今天我们来聊一聊浏览器控件的一个痛点!看看我们是如何解决他的。

背景信息

目前市面上存在多种浏览器,IE、Chrome、Firefox、Edge以及一众国产浏览器,这些浏览器中,IE支持ActiveX,部分国产浏览器支持npapi,而其他的浏览器这两者都不再支持,要如何做到一个浏览器插件,能够在所有的浏览器上都能够正常使用呢?

我们知道利洽科技的浏览器控件针对不同类型的浏览器,采用不同的技术方案,最终实现了浏览器的全覆盖支持!比如在Chrome及Edge等新版本浏览器中,我们采用WebSocket来进行浏览器页面与本地进程的通讯与交互,这个在https页面中使用,则需要本地进程应用正式的由CA机构颁发的有效SSL证书。

由于现在的SSL证书都只能签一年的有效期,导致在一年后又需要重新将新申请的证书打包到插件中,并在机器上重新安装才可使用;这给客户正常的业务使用带来非常大的困扰!

为了提升业务可持续性,同时减少用户下载安装的次数,我们实现了一套证书自动升级的机制,发布后,不再需要重新打包插件安装包,而只需要在指定的服务器上更新SSL证书即可,插件将自动下载新的证书并应用。

解决思路:

  1. 将证书存放到指定的http服务器上,比如http地址为:http://test.com/testcert/
  2. 在打包插件时,将证书打包到插件安装包中,同时指定证书更新地址为:http://test.com/testcert/
  3. 插件启动,检测打包的证书是否过期,未过期则直接应用
  4. 如果打包的证书过期,则下载证书更新地址中的证书进行使用,并保存到本地电脑中,供下次使用

实现效果

我们实现了牛牛截图控件以及利洽远程控制组件的Windows、Macos以及Linux国产化操作系统全系列的功能实现,全面支持证书的自动升级与应用,真正做到了一次部署,持续使用!

只需要运维人员定期的更新服务器上的SSL证书即可,如果再结合上服务端的证书自动续期与更新,就可以做到全自动了!

可以到这个页面进行体验:http://leeqia.com/screencapture/onlinedemo/

具体配置

接下来让我们一起来看看具体的配置何实现:

  1. 由客户在服务器上分出一个目录来存放要更新的证书,比如其对应的http地址为:http://test.com/testcert/

  2. 由客户在testcert目录下放入要更新的证书以及校验文件,具体如下:

    文件名称用途备注
    server.pem证书文件我们采用的是nginx类型的SSL证书,需要pem文件和key文件
    server.key证书私钥我们采用的是nginx类型的SSL证书,需要pem文件和key文件
    set.ini用于给证书升级过程提供校验,比如记录证书和私钥文件的大小和md5值

    set.ini示例内容如下:

    [set]
    cert_file_name=server.pem
    cert_file_size=4121
    cert_file_md5=ac989ee8f8f30317c39aef4be56faa8d
    key_file_name=server.key
    key_file_size=1700
    key_file_md5=d1bfa0e6caa3054ecb268135dad1330e
    
  3. 将http地址提供过来,我们打包插件的时候,将http://test.com/testcert/打包到插件中,即可完成所有的配置

注: 证书请勿使用泛域名证书,直接申请免费的单域名证书即可。

结语

牛牛截图控件作为目前使用体验最好,功能及兼容性最全面的一款截图控件,专为软件集成而生; 我们立足于为企业和个人提供小巧而精致的插件、产品;再微小的功能,在我们心中都是一个大的产品,从微小处入手,打造极致的产品应用体验!

 

相关文章:

牛牛截图控件与利洽远程控制产品升级-支持证书自动升级

今天我们来聊一聊浏览器控件的一个痛点!看看我们是如何解决他的。 背景信息 目前市面上存在多种浏览器,IE、Chrome、Firefox、Edge以及一众国产浏览器,这些浏览器中,IE支持ActiveX,部分国产浏览器支持npapi&#xff…...

06-jQuery-DOM操作-属性操作-attr()\prop()\addClass()\toggleClass()等

一、通用属性操作 1、attr() 方法:主要用于获取或设置 HTML 元素的属性值,它接受一个参数或两个参数,当传递一个参数时,它返回指定属性名的属性值;当传递两个参数时,它设置指定属性名的属性值为指定的值。…...

接口自动化框架(Pytest+request+Allure)

前言: 接口自动化是指模拟程序接口层面的自动化,由于接口不易变更,维护成本更小,所以深受各大公司的喜爱。 接口自动化包含2个部分,功能性的接口自动化测试和并发接口自动化测试。 本次文章着重介绍第一种&#xff0c…...

2. 流程控制语句

2. 流程控制语句 2-1. prompt() 弹出一个对话框,用户可以输入内容,输入的内容可以通过变量接收 2-2. if…else if …else 语法: if(条件表达式1){ ​ 条件表达式1为真执行 ​ if(){ ​ }else{ ​ } }else { ​ 条件表达式1为假执行 } if els…...

为了流量,何同学做了个“假B站”?

何同学是B站知名数码博主,凭借优秀的视频制作能力,内容创新获得广大年轻用户的喜欢。 2021年的时候,UP主老师好我叫何同学就发布了一条制作AirDesk的视频,随后迅速在社交媒体中引发了大量关注。 当时,该视频为B站全站…...

腾讯云图形验证码申请流程

目录 一、官方指引二、操作步骤1.步骤1:新建验证,获取验证码密钥2.步骤2:客户端接入验证码,展示验证页面3.步骤3:服务端接入验证码,调用票据校验 API 进行二次校验 一、官方指引 https://cloud.tencent.co…...

浅谈管网抢维修效率对产销差率的影响

1 背景 多年来,漏损治理工作一直围绕检漏、分区计量或压力管理等相关话题,却忽视了抢维修速度与质量对漏损治理成效的影响。实际上,不管是DMA分区计量,还是检漏,最终还是要通过抢维修来修复漏点达到控制漏损的目的。尽…...

java设备台账管理系统myeclipse定制开发mysql数据库网页模式java编程jdbc

一、源码特点 java设备台账管理系统 是一套完善的web设计系统,对理解JSP java编程开发语言有帮助 mysql数据库,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。 java设备台账管理系统myeclipse定制开发mysql 二、功能介绍 此次系统…...

ChatGPT帮你写简历找工作

随着随着毕业时间的到来,应届生将要面临求职问题,根据官方的统计,2023届高校毕业生预计达1158万人,就业市场竞争激烈,无论是校园招聘,招聘会,线上招聘除了自身的准备和个人能力,都会…...

CentOS 8.5和CentOS8.4安装-解决Error setting up base repository问题

CentOS 8 内核采用了python3.6,而CentOS 7还是python2.7,对于想要用GPU服务器进行机器学习方面的工作,还是用python3.6的内核更好些。 CentOS 8 的新特性 DNF 成为了默认的软件包管理器,同时 yum 仍然是可用的 使用网络管理器( nmcli 和 nmtui)进行网络配置,移除了网络脚…...

数据抓取使用HTTP隧道代码示例

以下是使用Python的requests库实现HTTP隧道的代码示例: python import requests # 设置代理服务器地址和端口号 proxy_host 127.0.0.1 proxy_port 8888 # 设置目标网站URL url Example Domain # 创建Session对象 session requests.Session() # 设置代理服务…...

vue3【使用axios并封装axios请求】

第一步:安装axios npm install axios 第二步:编写请求文件 新建request.js 简单的axios封装,里面相关提示信息,自己可以引入element-plus去添加 /**axios封装* 请求拦截、相应拦截、错误统一处理*/ import axios from axios; i…...

「实验记录」MIT 6.824 Raft Lab2C Persist

#Lab2C - Persist I. SourceII. My CodeIII. MotivationIV. SolutionS1 - 实现persist()S2 - 实现readPersist()S3 - 持久化三字段S4 - 在newRaft()中初始化nextIdxs和matchIdxsS5 - 适当缩短心跳时间 V. Result I. Source MIT-6.824 2020 课程官网Lab2: Raft 实验主页simviso…...

软件详细设计总复习(三)【太原理工大学】

题型及分值: 选择 30 分,填空 20 分, 判断 10 分,简答 20 分,综合设计 20 分。 文章目录 三、行为型模式1. 命令模式2. 迭代器模式3. 观察者模式4. 状态模式5. 策略模式 三、行为型模式 1. 命令模式 举个例子&#x…...

Vue3(一):创建vue3工程、setup、vue3响应式原理、computed和watch

Vue3:第一章 一、创建Vue3.0工程1.使用vue-cli创建2.使用vite创建 二、Vue3中的响应式1.拉开序幕的setup2.ref函数3.reactive函数4.vue3中响应式的原理(1)vue2中响应式原理(2)Vue3中的Proxy 5.reactive和ref的对比6.se…...

Spring中的@Value注解详解

Spring中的Value注解详解 概述 本文配置文件为yml文件 在使用spring框架的项目中,Value是经常使用的注解之一。其功能是将与配置文件中的键对应的值分配给其带注解的属性。在日常使用中,我们常用的功能相对简单。本文使您系统地了解Value的用法。 Value…...

YSL赢麻了?SMI社媒心智品牌榜Top20公布:YSL破局夺魁,国货品牌现后起之秀

全文速览 1.数说故事联合用户说从美妆、彩妆、护肤三板块全新发布《SMI社媒心智品牌榜》。 2.圣罗兰、兰蔻、欧莱雅等法国高端美妆大牌垄断美妆《SMI社媒心智品牌榜》前三甲。 3.彩妆Top20榜单中,底妆产品稳居前列,色彩美妆占据一席之地。 4.护肤TOP…...

链式哈希,一致性哈希,倒排表

在普通的查询中,通过关键码的比较进行查找,而哈希是根据关键码直接定位到数据项 哈希冲突:同一个关键码经过哈希函数后指向同一个记录集 链式哈希 using namespace std; #define M 13 typedef int KeyType; //typedef struct //{ // KeyTyp…...

Python操作XML教程:读取、写入、修改和保存XML文档

目录 导入所需模块解析XML文档获取元素遍历XML文档写入新的元素修改元素的内容和属性删除元素保存修改后的XML文档示例演示python操作xml的常用方法 XML是一种常见的数据交换格式,在许多应用中都被广泛使用。通过掌握Python操作XML的基础知识,您将能够轻…...

Oracle数据库中了locked1勒索病毒,用友nchome配置文件损坏该如何解除

随着互联网技术的不断发展,网络安全问题也越来越受到人们的关注。其中,勒索病毒是一种比较常见的网络安全威胁。最近很多集团企业在使用Oracle数据库的过程中,遭遇到了locked1勒索病毒的攻击,导致企业的用友nchome配置文件损坏&am…...

应对复杂实战场景:基于快马平台生成动态网页爬虫完整解决方案

今天想和大家分享一个实战中的Python爬虫项目,主要解决动态渲染社交媒体网站的数据抓取问题。这类网站通常采用JavaScript动态加载内容,传统的requests库很难直接获取数据,需要借助浏览器自动化工具。 项目背景与难点分析 动态网页爬虫的核…...

为什么说res-downloader能3步搞定全网资源下载?从新手到高手的实战指南

为什么说res-downloader能3步搞定全网资源下载?从新手到高手的实战指南 【免费下载链接】res-downloader 视频号、小程序、抖音、快手、小红书、直播流、m3u8、酷狗、QQ音乐等常见网络资源下载! 项目地址: https://gitcode.com/GitHub_Trending/re/res-downloader…...

文件搜索效率低下?FSearch让Linux文件定位速度提升10倍的技术实现与应用指南

文件搜索效率低下?FSearch让Linux文件定位速度提升10倍的技术实现与应用指南 【免费下载链接】fsearch A fast file search utility for Unix-like systems based on GTK3 项目地址: https://gitcode.com/gh_mirrors/fs/fsearch 在Linux系统管理中&#xff0…...

告别混乱!SpringBoot3 + Knife4j 4.4.0接口文档管理:从基础配置到高级分组与权限控制

SpringBoot3与Knife4j 4.4.0实战:企业级API文档架构设计与安全管控 当微服务架构中的API数量突破三位数时,开发团队往往会陷入接口管理的泥潭。某电商平台的后台系统曾因文档混乱导致新成员需要两周才能熟悉支付模块的接口调用规范,而错误调…...

Win11轻量优化指南:自定义调校让系统流畅如初

Win11轻量优化指南:自定义调校让系统流畅如初 【免费下载链接】Win11Debloat A simple, lightweight PowerShell script that allows you to remove pre-installed apps, disable telemetry, as well as perform various other changes to declutter and customize …...

5种手柄映射方案让手游玩家实现主机级操控体验

5种手柄映射方案让手游玩家实现主机级操控体验 【免费下载链接】escrcpy 📱 Display and control your Android device graphically with scrcpy. 项目地址: https://gitcode.com/GitHub_Trending/es/escrcpy 手机游戏操控优化一直是困扰玩家的核心痛点&…...

Natron Rotoscoping与跟踪技术:专业影视特效制作终极指南

Natron Rotoscoping与跟踪技术:专业影视特效制作终极指南 【免费下载链接】Natron Open-source video compositing software. Node-graph based. Similar in functionalities to Adobe After Effects and Nuke by The Foundry. 项目地址: https://gitcode.com/gh_…...

如何在5分钟内搭建专属的Zwift离线训练服务器:完整指南

如何在5分钟内搭建专属的Zwift离线训练服务器:完整指南 【免费下载链接】zwift-offline Use Zwift offline 项目地址: https://gitcode.com/gh_mirrors/zw/zwift-offline 厌倦了网络不稳定导致的虚拟骑行中断?想要在任何地方都能享受流畅的Zwift训…...

汽车BCM控制器实战:从零搭建HIL测试环境(附Python自动化脚本)

汽车BCM控制器HIL测试环境搭建实战指南 车身控制模块(BCM)作为现代汽车电子架构中的核心枢纽,其稳定性直接影响着整车的舒适性与安全性。本文将带您从零开始构建一套完整的硬件在环(HIL)测试环境,覆盖从台架…...

千问3.5-2B辅助MATLAB科学计算:算法实现与结果可视化脚本生成

千问3.5-2B辅助MATLAB科学计算:算法实现与结果可视化脚本生成 1. 科研计算的新助手 作为一名经常使用MATLAB的科研工作者,你是否遇到过这样的困扰:明明知道要解决什么数学问题,却卡在代码实现环节?或者花了大量时间调…...