空手道SSL和HashiCorp保险柜秘密引擎

时间:2020-08-01 19:51:11

标签: karate

目前,我正在努力通过空手道DSL通过SSL自动化我们的API,主要问题是,如果不将cert.pfx保留在具有以下配置的某个目录中,就无法实现此API的自动化:

///使用PKCS12文件'certstore.pfx'和密码'certpassword'启用X509证书认证

  • 配置ssl = {keyStore:'classpath:certstore.pfx',keyStorePassword:'certpassword',keyStoreType:'pkcs12'}

还有其他加载证书存储区的方法吗?而不是使用certstore.pfx形式的本地目录/ cloud / sftp目录?

我当时正在考虑创建一个KeyStore Java对象(带有链证书和私钥),并将其传递给配置而不是(pfx文件){keyStore:keyStoreObj,keyStorePassword:'xxx'..}或其他一些内存对象,它将提供所有必需的证书/密钥以通过SSL连接。

感谢您的建议!

2 个答案:

答案 0 :(得分:1)

谢谢Peter,所以我决定采用这种高级方法,因此决定扩展HttpClient,在这里我覆盖configure(HttpConfig config,ScriptContext context)并决定将以前用证书构造的KeyStore对象传递给该对象,我来自HasiCorp保险柜。

Btw空手道DSL很棒!

答案 1 :(得分:0)

使用Java互操作:https://github.com/intuit/karate#calling-java

例如:您可以采用某种自定义方式来获取所需的证书并将其保存到/tmp,然后使用file:/tmp/mycert.pfx加载证书。

由您决定以任何所需的方式实施。如果您想做更高级的事情,请考虑扩展ApacheHttpClient-并提供有关here的提示。