weixin_37721334
weixin_37721334
采纳率0%
2021-02-26 10:57

https证书问题:java调用,https导入证书后报错

公司的系统,支持s3,我用java来调s3 api,因为是https的,所以我把证书zzz.crt用keytool -import导入,然后用ip来访问

但是eclipse调试的时候,会报错

Unable to execute HTTP request: Certificate for <xx.xx.xx.xx> doesn't match common name of the certificate subject: *.aaa.bbb.com

原代码如下,请大佬帮忙看下。

public class S3 {
    public void tests3(String ak1,String sk1) throws Exception {
                
        AWSCredentials credentials = null;
        ClientConfiguration conf = new ClientConfiguration();
        System.out.print("ak1="+ak1+"\n"); 
        System.out.print("sk1="+sk1+"\n");
        credentials = new BasicAWSCredentials(ak1,sk1);
        AmazonS3 s3 = new AmazonS3Client(credentials, conf);
        s3.setRegion(Region.getRegion(Regions.CN_NORTH_1));
        s3.setEndpoint("https://xx.xx.xx.xx:9000");
        List<Bucket> buckets = s3.listBuckets();
        System.out.print(buckets.toString());
    }
}

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

1条回答

  • weixin_41830716 规则边缘 2月前

    1. 生成证书时,要设置该证书的域名。

    2. 服务端验证HTTPS请求时,会校验请求的域名和证书里的域名是否一致。

    点赞 评论 复制链接分享