MockRestServiceServer 是否支持双向 TLS,如果支持,如何配置?

Does MockRestServiceServer support mutual TLS and if so, how to configure it?

我们在 IT 测试中使用 org.springframework.test.web.client.MockRestServiceServer 来验证我们的 RestTemplate 处理。现在,我还需要包括一些用于相互身份验证的测试,我不确定这是否可行以及如何实现。 MockRestServiceServer 是否支持该功能,还是我需要做其他事情?

因为我还没有找到方法,所以我选择了 com.github.tomakehurst.wiremock.WireMockServer,效果很好。这是我的设置方式,请注意我还需要添加 keyManagerPassword(我不确定为什么,但它只是密钥库之一)

  public WireMockServer mutualTlsMock;

  @BeforeEach
  void setUp() {
    mutualTlsMock = new WireMockServer(options()
      .httpsPort(8443)
      .needClientAuth(true)
      .keystorePath("path/to/my/keystore.jks")
      .keystorePassword("keystorePassword")
      .keyManagerPassword("keystorePassword")
      .trustStorePath("path/to/my/keystore.jks")
      .trustStorePassword("keystorePassword"));
    mutualTlsMock.start();
  }

  @AfterEach
  void shutdown() {
    mutualTlsMock.shutdown();
  }