连接SonarQube服务器需要证书。我已经安装了SonarLint插件,但它没有任何选项来添加证书来连接我的SonarQube服务器。它只有URL,用户名和密码选项。有没有办法设置证书?
答案 0 :(得分:4)
SonarLint不允许配置证书,但您可以将证书添加到JRE或JDK。
https://docs.oracle.com/javase/tutorial/security/toolsign/rstep2.html
Oracle文档中的复制文本:
在授予签名代码读取指定文件的权限之前,您需要将Susan的证书导入密钥库中的可信证书。
假设您收到了Susan
sCount.jar
,其中包含Count.class
文件和Example.cer
,其中包含与用于签署JAR文件的私钥对应的公钥的公钥证书。即使您创建了这些文件并且它们实际上并未在任何地方运输,但您可以模拟除了创建者和发件人之外的其他人,Susan。假装你现在是雷。作为Ray,您将创建一个名为exampleraystore
的密钥库,并使用它将证书导入别名为susan
的条目。
只要您使用keytool
命令指定尚未存在的密钥库,就会创建密钥库。因此,我们可以创建exampleraystore
并通过单个keytool
命令导入证书。在命令窗口中执行以下操作。
Example.cer
的目录。 (您实际上应该已经在那里,因为本课程假设您始终保持在一个目录中。)keytool -import -alias susan -file Example.cer -keystore exampleraystore
由于密钥库尚不存在,因此将创建密钥库,系统将提示您输入密钥库密码;输入你想要的任何密码。
keytool
命令将打印出证书信息并要求您验证它,例如,通过将显示的证书指纹与从另一个(可信)信息源获得的指纹进行比较。 (每个指纹都是一个相对较短的数字,可以唯一且可靠地识别证书。)例如,在现实世界中,您可以调用Susan并询问她指纹应该是什么。她可以通过执行命令
Example.cer
文件的指纹
keytool -printcert -file Example.cer
如果她看到的指纹与keytool
向您报告的指纹相同,则证书在传输过程中未被修改。在这种情况下,您让keytool
继续在密钥库中放置可信证书条目。该条目包含文件Example.cer
中的公钥证书数据,并分配了别名susan
。