CN117978400A - 一种离线授权证书管理方法 - Google Patents
一种离线授权证书管理方法 Download PDFInfo
- Publication number
- CN117978400A CN117978400A CN202410038297.4A CN202410038297A CN117978400A CN 117978400 A CN117978400 A CN 117978400A CN 202410038297 A CN202410038297 A CN 202410038297A CN 117978400 A CN117978400 A CN 117978400A
- Authority
- CN
- China
- Prior art keywords
- certificate
- minio
- verification
- certificates
- file
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000013475 authorization Methods 0.000 title claims abstract description 44
- 238000007726 management method Methods 0.000 title claims abstract description 29
- 238000012795 verification Methods 0.000 claims abstract description 37
- 238000000034 method Methods 0.000 claims description 26
- 230000008569 process Effects 0.000 claims description 14
- 239000008186 active pharmaceutical agent Substances 0.000 description 2
- VBMOHECZZWVLFJ-GXTUVTBFSA-N (2s)-2-[[(2s)-6-amino-2-[[(2s)-6-amino-2-[[(2s,3r)-2-[[(2s,3r)-2-[[(2s)-6-amino-2-[[(2s)-2-[[(2s)-6-amino-2-[[(2s)-2-[[(2s)-2-[[(2s)-2,6-diaminohexanoyl]amino]-5-(diaminomethylideneamino)pentanoyl]amino]propanoyl]amino]hexanoyl]amino]propanoyl]amino]hexan Chemical compound NC(N)=NCCC[C@@H](C(O)=O)NC(=O)[C@H](CCCCN)NC(=O)[C@H](CCCCN)NC(=O)[C@H]([C@@H](C)O)NC(=O)[C@H]([C@H](O)C)NC(=O)[C@H](CCCCN)NC(=O)[C@H](C)NC(=O)[C@H](CCCCN)NC(=O)[C@H](C)NC(=O)[C@H](CCCN=C(N)N)NC(=O)[C@@H](N)CCCCN VBMOHECZZWVLFJ-GXTUVTBFSA-N 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000005336 cracking Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 108010068904 lysyl-arginyl-alanyl-lysyl-alanyl-lysyl-threonyl-threonyl-lysyl-lysyl-arginine Proteins 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Landscapes
- Storage Device Security (AREA)
Abstract
本发明公开一种离线授权证书管理方法,涉及数据证书管理技术领域;选择Truelicense进行证书授权校验,通过Minio对所有授权主机的证书进行分布式文件存储,通过Minio客户端针对多副本应用证书进行替换,依次调用证书授权的认证客户端接口进行某个副本的证书灰度热更新,提高了在主机部署的应用证书的管理效率,还避免了出现漏更新和重复更新证书的问题。
Description
技术领域
本发明公开一种方法,涉及数据证书管理技术领域,具体地说是一种离线授权证书管理方法。
背景技术
当前离线式客户端证书授权一般是携带公钥并通过授权算法实现对目标主机的授权认证,一旦证书存在问题就会影响业务正常运行,同时在主机部署的应用没有明确的管理体系,容易出现漏更新和重复更新证书的问题。
发明内容
本发明针对现有技术的问题,提供一种离线授权证书管理方法,本发明提出的具体方案是:
本发明提供一种离线授权证书管理方法:选择Truelicense进行证书授权校验,
通过Minio对所有授权主机的证书进行分布式文件存储,
通过Minio客户端针对多副本应用证书进行替换,依次调用证书授权的认证客户端接口进行某个副本的证书灰度热更新。
进一步,所述的一种离线授权证书管理方法中所述选择Truelicense进行证书授权校验,包括:
添加TrueLicense依赖,在认证客户端的应用程序中创建LicenseInstaller类,通过LicenseInstaller类安装和管理许可证,
创建一个LicenseValidator类,通过LicenseValidator类验证许可证的合法性。
进一步,所述的一种离线授权证书管理方法中所述通过Minio对所有授权主机的证书进行分布式文件存储,包括:
利用Kubernetes部署Minio,其中下载Minio对象,作为Kubernate对象定义文件,所述Minio对象包含了命名空间minio-dev、适用节点的驱动或卷创建一个Minio pod,
应用Minio对象定义命令:`kubectl apply-f minio-dev.yaml`,
集成Minio客户端,并根据Minio客户端建立Bucket对象存储安全策略,
通过Bucket在指定路径下存储所有授权主机的证书的文件。
进一步,所述的一种离线授权证书管理方法中所述进行某个副本的证书灰度热更新,包括:
根据灰度热更新的参数读取指定路径下的证书,验证证书是否有效,无效则中断证书验证过程,有效则在指定路径下创建文件host,防止应用重启后加载到旧证书,使用新证书文件覆盖旧证书文件,
证书灰度热更新完成,则在Bucket下创建一个gray文件,在gray文件追加包含灰度热更新的主机特征和更新成功状态,如果灰度热更新过程中证书验证不通过则在gray文件追加包含灰度热更新的主机特征和更新失败状态。
本发明还提供一种离线授权证书管理装置,包括校验模块、存储模块和更新模块,
校验模块选择Truelicense进行证书授权校验,
存储模块通过Minio对所有授权主机的证书进行分布式文件存储,
更新模块通过Minio客户端针对多副本应用证书进行替换,依次调用证书授权的认证客户端接口进行某个副本的证书灰度热更新。
进一步,所述的一种离线授权证书管理装置中所述校验模块选择Truelicense进行证书授权校验,包括:
添加TrueLicense依赖,在认证客户端的应用程序中创建LicenseInstaller类,通过LicenseInstaller类安装和管理许可证,
创建一个LicenseValidator类,通过LicenseValidator类验证许可证的合法性。
进一步,所述的一种离线授权证书管理装置中所述存储模块通过Minio对所有授权主机的证书进行分布式文件存储,包括:
利用Kubernetes部署Minio,其中下载Minio对象,作为Kubernate对象定义文件,所述Minio对象包含了命名空间minio-dev、适用节点的驱动或卷创建一个Minio pod,
应用Minio对象定义命令:`kubectl apply-f minio-dev.yaml`,
集成Minio客户端,并根据Minio客户端建立Bucket对象存储安全策略,
通过Bucket在指定路径下存储所有授权主机的证书的文件。
进一步,所述的一种离线授权证书管理装置中所述更新模块进行某个副本的证书灰度热更新,包括:
根据灰度热更新的参数读取指定路径下的证书,验证证书是否有效,无效则中断证书验证过程,有效则在指定路径下创建文件host,防止应用重启后加载到旧证书,使用新证书文件覆盖旧证书文件,
证书灰度热更新完成,则在Bucket下创建一个gray文件,在gray文件追加包含灰度热更新的主机特征和更新成功状态,如果灰度热更新过程中证书验证不通过则在gray文件追加包含灰度热更新的主机特征和更新失败状态。
本发明的有益之处是:
本发明提供一种离线授权证书管理方法,通过引用证书授权验证客户端依赖,无需注解自动对应用所在主机实现证书授权校验.通过Minio实现对所有授权主机证书的分布式文件存储,通过Minio客户端实现对某个多副本应用证书替换,通过依次调用证书授权认证客户端接口实现应用某个副本的证书灰度热更新.提高了在主机部署的应用证书的管理效率,还避免了出现漏更新和重复更新证书的问题。
附图说明
图1是存储架构示意图。
图2是本发明方法涉及调用授权认证客户端定时更换应用证书的流程示意图。
具体实施方式
下面结合附图和具体实施例对本发明作进一步说明,以使本领域的技术人员可以更好地理解本发明并能予以实施,但所举实施例不作为对本发明的限定。
本发明提供一种离线授权证书管理方法:选择Truelicense进行证书授权校验,
通过Minio对所有授权主机的证书进行分布式文件存储,
通过Minio客户端针对多副本应用证书进行替换,依次调用证书授权的认证客户端接口进行某个副本的证书灰度热更新。
本发明方法通过引用证书授权验证客户端依赖,无需注解自动对应用所在主机实现证书授权校验.通过Minio实现对所有授权主机证书的分布式文件存储,通过Minio客户端实现对某个多副本应用证书替换,通过依次调用证书授权认证客户端接口实现应用某个副本的证书灰度热更新.提高了在主机部署的应用证书的管理效率,还避免了出现漏更新和重复更新证书的问题。
具体应用中,在本发明方法的一些实施例中,进行离线授权证书管理的过程,可参考如下:
步骤1:选择Truelicense进行证书授权校验。
进一步,所述选择Truelicense进行证书授权校验,包括:
添加TrueLicense依赖,在认证客户端的应用程序中创建LicenseInstaller类,通过LicenseInstaller类安装和管理许可证,
创建一个LicenseValidator类,通过LicenseValidator类验证许可证的合法性。
其中TrueLicense是一个开源的Java应用程序许可证库,可以用于实现客户端授权证书文件的校验。它提供了一组功能强大的API,可以验证和管理许可证,以确保软件在合法授权的情况下运行。
步骤2:通过Minio对所有授权主机的证书进行分布式文件存储,可参考图1。
进一步,所述通过Minio对所有授权主机的证书进行分布式文件存储,包括:
利用Kubernetes部署Minio,其中下载Minio对象,作为Kubernate对象定义文件,所述Minio对象包含了命名空间minio-dev、适用节点的驱动或卷创建一个Minio pod,
应用Minio对象定义命令:`kubectl apply-f minio-dev.yaml`,
集成Minio客户端,并根据Minio客户端建立Bucket对象存储安全策略,
通过Bucket在指定路径下存储所有授权主机的证书的文件。
其中Bucket对象存储安全策略,是Minio为了限制Bucket对象访问制定的安全策略,其格式为JSON,通过客户端调用策略设置接口可以实现对Bucket存储对象的访问限制,例如如下策略允许用户读取证书
证书存储,需要在指定的Bucket和路径下调用客户端putObject接口存储文件对象,可将证书文件存储到application/encryption/下。
步骤3:通过Minio客户端针对多副本应用证书进行替换,依次调用证书授权的认证客户端接口进行某个副本的证书灰度热更新,可参考图2。
进一步,所述进行某个副本的证书灰度热更新,包括:
根据灰度热更新的参数读取指定路径下的证书,验证证书是否有效,无效则中断证书验证过程,有效则在指定路径下创建文件host,防止应用重启后加载到旧证书,使用新证书文件覆盖旧证书文件,
证书灰度热更新完成,则在Bucket下创建一个gray文件,在gray文件追加包含灰度热更新的主机特征和更新成功状态,如果灰度热更新过程中证书验证不通过则在gray文件追加包含灰度热更新的主机特征和更新失败状态。
此外,为提升客户端授权的安全性,还可通过RSA算法对公钥进行加密,在运行时解密,避免用户直接获取公钥.还可将客户端代码进行混淆防止用户通过反编译工具或逆向工程分析客户端源代码和资源,通过应用代码混淆和加密,可以增加攻击者获取嵌入公钥的难度。还可将公钥存储在应用程序的安全存储区域,如密钥库或安全容器中。这样做可以提高公钥的保密性,并防止未经授权的访问。在Spring框架中,可以使用Java标准库中的一些安全存储区域来保存敏感信息,如Java密钥库(KeyStore)可以使用KeyStore类加载和操作密钥库文件,该文件通常使用Java密钥库(JKS)或PKCS#12格式。或者Spring Security提供的安全容器(SecureStore)该容器主要用户本地存储敏感信息如密码,API密钥等。
还可将证书文件分片存储,将证书文件进行3等分,在客户端resource目录下存储第一等分,在隐藏文件下存储另外两等分,在证书授权认证时顺序读3个文件进行拼接并解密获取公钥完整内容防止用户直接读取公钥。还可定期更换客户端公钥,定期更新公钥,以增加攻击者破解的难度。通过定期更换公钥,可以减少长期使用相同公钥所带来的风险。
本发明还提供一种离线授权证书管理装置,包括校验模块、存储模块和更新模块,
校验模块选择Truelicense进行证书授权校验,
存储模块通过Minio对所有授权主机的证书进行分布式文件存储,
更新模块通过Minio客户端针对多副本应用证书进行替换,依次调用证书授权的认证客户端接口进行某个副本的证书灰度热更新。
上述装置内的各模块之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
同样地,本发明装置通过引用证书授权验证客户端依赖,无需注解自动对应用所在主机实现证书授权校验.通过Minio实现对所有授权主机证书的分布式文件存储,通过Minio客户端实现对某个多副本应用证书替换,通过依次调用证书授权认证客户端接口实现应用某个副本的证书灰度热更新.提高了在主机部署的应用证书的管理效率,还避免了出现漏更新和重复更新证书的问题。
需要说明的是,上述各流程和各装置结构中不是所有的步骤和模块都是必须的,可以根据实际的需要忽略某些步骤或模块。各步骤的执行顺序不是固定的,可以根据需要进行调整。上述各实施例中描述的系统结构可以是物理结构,也可以是逻辑结构,即,有些模块可能由同一物理实体实现,或者,有些模块可能分由多个物理实体实现,或者,可以由多个独立设备中的某些部件共同实现。
以上所述实施例仅是为充分说明本发明而所举的较佳的实施例,本发明的保护范围不限于此。本技术领域的技术人员在本发明基础上所作的等同替代或变换,均在本发明的保护范围之内。本发明的保护范围以权利要求书为准。
Claims (8)
1.一种离线授权证书管理方法,其特征是选择Truelicense进行证书授权校验,
通过Minio对所有授权主机的证书进行分布式文件存储,
通过Minio客户端针对多副本应用证书进行替换,依次调用证书授权的认证客户端接口进行某个副本的证书灰度热更新。
2.根据权利要求1所述的一种离线授权证书管理方法,其特征是所述选择Truelicense进行证书授权校验,包括:
添加TrueLicense依赖,在认证客户端的应用程序中创建LicenseInstaller类,通过LicenseInstaller类安装和管理许可证,
创建一个LicenseValidator类,通过LicenseValidator类验证许可证的合法性。
3.根据权利要求1或2所述的一种离线授权证书管理方法,其特征是所述通过Minio对所有授权主机的证书进行分布式文件存储,包括:
利用Kubernetes部署Minio,其中下载Minio对象,作为Kubernate对象定义文件,所述Minio对象包含了命名空间minio-dev、适用节点的驱动或卷创建一个Minio pod,
应用Minio对象定义命令:`kubectl apply-f minio-dev.yaml`,
集成Minio客户端,并根据Minio客户端建立Bucket对象存储安全策略,
通过Bucket在指定路径下存储所有授权主机的证书的文件。
4.根据权利要求1所述的一种离线授权证书管理方法,其特征是所述进行某个副本的证书灰度热更新,包括:
根据灰度热更新的参数读取指定路径下的证书,验证证书是否有效,无效则中断证书验证过程,有效则在指定路径下创建文件host,防止应用重启后加载到旧证书,使用新证书文件覆盖旧证书文件,
证书灰度热更新完成,则在Bucket下创建一个gray文件,在gray文件追加包含灰度热更新的主机特征和更新成功状态,如果灰度热更新过程中证书验证不通过则在gray文件追加包含灰度热更新的主机特征和更新失败状态。
5.一种离线授权证书管理装置,其特征是包括校验模块、存储模块和更新模块,
校验模块选择Truelicense进行证书授权校验,
存储模块通过Minio对所有授权主机的证书进行分布式文件存储,
更新模块通过Minio客户端针对多副本应用证书进行替换,依次调用证书授权的认证客户端接口进行某个副本的证书灰度热更新。
6.根据权利要求5所述的一种离线授权证书管理装置,其特征是所述校验模块选择Truelicense进行证书授权校验,包括:
添加TrueLicense依赖,在认证客户端的应用程序中创建LicenseInstaller类,通过LicenseInstaller类安装和管理许可证,
创建一个LicenseValidator类,通过LicenseValidator类验证许可证的合法性。
7.根据权利要求5所述的一种离线授权证书管装置,其特征是所述存储模块通过Minio对所有授权主机的证书进行分布式文件存储,包括:
利用Kubernetes部署Minio,其中下载Minio对象,作为Kubernate对象定义文件,所述Minio对象包含了命名空间minio-dev、适用节点的驱动或卷创建一个Minio pod,
应用Minio对象定义命令:`kubectl apply-f minio-dev.yaml`,
集成Minio客户端,并根据Minio客户端建立Bucket对象存储安全策略,
通过Bucket在指定路径下存储所有授权主机的证书的文件。
8.根据权利要求5所述的一种离线授权证书管理装置,其特征是所述更新模块进行某个副本的证书灰度热更新,包括:
根据灰度热更新的参数读取指定路径下的证书,验证证书是否有效,无效则中断证书验证过程,有效则在指定路径下创建文件host,防止应用重启后加载到旧证书,使用新证书文件覆盖旧证书文件,
证书灰度热更新完成,则在Bucket下创建一个gray文件,在gray文件追加包含灰度热更新的主机特征和更新成功状态,如果灰度热更新过程中证书验证不通过则在gray文件追加包含灰度热更新的主机特征和更新失败状态。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410038297.4A CN117978400A (zh) | 2024-01-11 | 2024-01-11 | 一种离线授权证书管理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410038297.4A CN117978400A (zh) | 2024-01-11 | 2024-01-11 | 一种离线授权证书管理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117978400A true CN117978400A (zh) | 2024-05-03 |
Family
ID=90849112
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410038297.4A Pending CN117978400A (zh) | 2024-01-11 | 2024-01-11 | 一种离线授权证书管理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117978400A (zh) |
-
2024
- 2024-01-11 CN CN202410038297.4A patent/CN117978400A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11178121B2 (en) | Secure software updates | |
CN109923548B (zh) | 通过监管进程访问加密数据实现数据保护的方法、系统及计算机程序产品 | |
US10547604B2 (en) | Information recording apparatus with shadow boot program for authentication with a server | |
US8863305B2 (en) | File-access control apparatus and program | |
JP4902207B2 (ja) | ファイルの暗号化と復号化のための複数のキーを管理するシステムと方法 | |
RU2408069C2 (ru) | Согласование полномочий | |
US6499110B1 (en) | Method and apparatus for facilitating information security policy control on a per security engine user basis | |
US7639819B2 (en) | Method and apparatus for using an external security device to secure data in a database | |
US6044155A (en) | Method and system for securely archiving core data secrets | |
JP4913871B2 (ja) | セキュアコンテンツおよびアプリケーションのコピーを防ぐセキュリティメカニズムを有するメモリカードのアップグレード | |
GB2555496A (en) | Establishing crytographic identity for an electronic device | |
WO2021164166A1 (zh) | 一种业务数据保护方法、装置、设备及可读存储介质 | |
US20020157010A1 (en) | Secure system and method for updating a protected partition of a hard drive | |
US8175269B2 (en) | System and method for enterprise security including symmetric key protection | |
US6986041B2 (en) | System and method for remote code integrity in distributed systems | |
KR20100106471A (ko) | 이동 컴퓨팅 장치 상의 소프트웨어 애플리케이션을 관리하는 방법 및 시스템 | |
KR20060015547A (ko) | 취소 리스트를 저장하는 방법 | |
US8312431B1 (en) | System and computer readable medium for verifying access to signed ELF objects | |
US11838282B2 (en) | Information recording apparatus with server-based user authentication for accessing a locked operating system storage | |
US11601285B2 (en) | Securely authorizing service level access to a backup system using a specialized access key | |
CN117978400A (zh) | 一种离线授权证书管理方法 | |
Seltzer | Securing your private keys as best practice for code signing certificates | |
CN113098899A (zh) | 无形资产保护方法、装置及计算机可读介质 | |
US11997215B2 (en) | Secret protection during software development life cycle | |
US20210409196A1 (en) | Secure Key Storage Systems Methods And Devices |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |