美文网首页
Niagara4.9 自签名

Niagara4.9 自签名

作者: 一万年不是尽头 | 来源:发表于2020-08-10 17:06 被阅读0次

最近Niagara4.9更新了,自己写的驱动要强制签名了。整个过程还是比较简单的,在此记录一下

环境说明

  • java版本: 1.8.0_202
  • niagara版本:4 4.9.0.198
  • 工作目录:D:\\test
  • 代码目录:D:\\test\\sign-test

生成签名文件

打开cmd,进入工作目录,输入下面命令

keytool -genkey -alias my-cert -keyalg RSA -ext EKU="codeSigning" -validity 365 -keypass K3yP@ss -storepass St0reP@ss -keystore my_signing_profile.jks
执行过程
执行结果
  • keytool 是java自带的一个工具具体用法大家可以自行百度一下相关信息
keytool

创建xml文件

创建和刚才生成的jks文件同名的xml文件my_signing_profile.xml
内容如下:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
<properties>
  <comment>Code Signing Properties</comment>
  <entry key="niagara.signing.keypass.my-cert">K3yP@ss</entry>
  <entry key="niagara.signing.storepass">St0reP@ss</entry>
  <entry key="niagara.signing.profileType">com.tridium.signing.RestrictedSigningProfile</entry>
  <entry key="niagara.signing.standardtsa">http://timestamp.digicert.com</entry>
</properties>
注意

注意箭头和红框的三个地方,这是要非常注意的,这三个信息是存储证书的信息,一定要和上面keytool命令后面的参数一致,注意特殊字符(要转义,或尽可能不用)。

workbench信任证书

在工作目录下执行
keytool -exportcert -alias my-cert -keypass K3yP@ss -storepass St0reP@ss -keystore my_signing_profile.jks -rfc -file my-cert.pem

打开workbench,打开证书管理工具,将刚才生成的my-cert.pem添加到信任列表


导入证书

为jar包签名

为gradle添加构建命令

在代码目录下的build.gradle中添加如下代码

subprojects { Project p ->
  p.pluginManager.withPlugin('com.tridium.niagara-module') {
    p.niagaraModule {
      certAlias = "my-cert"
    }
  }
}

构建

方式1

在项目目录下,执行
gradlew.bat jar -Pniagara.signing.profile=D:\\test\\my_signing_profile.xml

方式2

在代码目录的gradle.properties添加配置
niagara.signing.profile=D:\\test\\my_signing_profile.xml
然后和之前打包一样,运行gradle build就可以了

这样打出来的jar就直接是签好名的了,可以直接使用

相关文章

网友评论

      本文标题:Niagara4.9 自签名

      本文链接:https://www.haomeiwen.com/subject/mhpjdktx.html