9

连接我的 SonarQube 服务器需要证书。我已经安装了 SonarLint 插件,但它没有任何选项可以添加证书来连接我的 SonarQube 服务器。它只有 URL、用户名、密码选项。有没有办法设置证书?

4

1 回答 1

6

SonarLint 不允许配置证书,但您可以将证书添加到 JRE 或 JDK。

https://docs.oracle.com/javase/tutorial/security/toolsign/rstep2.html


从 Oracle 文档复制的文本:

将证书作为可信证书导入

在您可以授予签名代码读取指定文件的权限之前,您需要将 Susan 的证书作为受信任的证书导入到您的密钥库中。

假设你收到了来自苏珊的

  • sCount.jar包含该文件的已签名 JAR 文件Count.class,以及
  • 该文件Example.cer,其中包含与用于签署 JAR 文件的私钥对应的公钥的公钥证书。

即使您创建了这些文件并且它们实际上并没有被传输到任何地方,您也可以模拟创建者和发送者 Susan 之外的其他人。假装你现在是雷。作为 Ray,您将创建一个名为的密钥库exampleraystore,并使用它将证书导入到别名为susan.

每当您使用keytool指定尚不存在的密钥库的命令时,都会创建一个密钥库。因此,我们可以exampleraystore通过单个keytool命令创建和导入证书。在命令窗口中执行以下操作。

  1. 转到包含公钥证书文件的目录Example.cer。(实际上你应该已经在那里了,因为本课假设你始终在一个目录中。)
  2. 在一行中键入以下命令:
    keytool -import -alias susan -file Example.cer -keystore exampleraystore

由于密钥库尚不存在,因此将创建它,并提示您输入密钥库密码;输入您想要的任何密码。

keytool命令将打印出证书信息并要求您进行验证,例如,将显示的证书指纹与从另一个(受信任的)信息源获得的证书指纹进行比较。(每个指纹都是一个相对较短的数字,可以唯一可靠地识别证书。)例如,在现实世界中,您可能会打电话给 Susan 并询问她的指纹应该是什么。她可以Example.cer通过执行命令获取她创建的文件的指纹

keytool -printcert -file Example.cer

如果她看到的指纹和你报给你的指纹一样keytool,说明证书在传输过程中没有被修改过。在这种情况下,您可以keytool继续在密钥库中放置受信任的证书条目。该条目包含来自文件的公钥证书数据,Example.cer并被分配了别名susan

于 2016-06-26T17:33:06.557 回答