Karate SSL и HashiCorp Vault Secret Engine - PullRequest
       31

Karate SSL и HashiCorp Vault Secret Engine

1 голос
/ 01 августа 2020

В настоящее время я борюсь с автоматизацией нашего API через SSL с помощью Karate DSL, и основная проблема заключается в том, что я не могу автоматизировать этот API, не сохраняя этот cert.pfx в каком-то каталоге с конфигурацией ниже:

// включить аутентификацию сертификата X509 с файлом PKCS12 'certstore.pfx' и паролем 'certpassword'

  • настроить ssl = {keyStore: 'classpath: certstore.pfx', keyStorePassword: 'certpassword' , keyStoreType: 'pkcs12'}

Есть ли другой способ загрузки хранилища сертификатов? вместо использования certstore.pfx form local directory / cloud / sftp dir?

Я думал о создании объекта KeyStore java (с цепными сертификатами и закрытым ключом) и передать его в конфигурацию вместо (файл pfx) {keyStore: keyStoreObj, keyStorePassword: 'xxx' ..} или какой-либо другой объект памяти, который предоставит все необходимые сертификаты / ключи для подключения через SSL.

спасибо за ваш совет!

Ответы [ 2 ]

1 голос
/ 02 августа 2020

Спасибо, Питер, поэтому я решил go использовать этот продвинутый способ, поэтому решил расширить HttpClient, где я переопределил configure (конфигурация HttpConfig, контекст ScriptContext), и решил передать туда объект KeyStore, который был создан ранее с сертификатами , который я получил от HasiCorp Vault.

Btw Karate DSL - это здорово!

0 голосов
/ 02 августа 2020

Используйте Java interop: https://github.com/intuit/karate#calling - java

Например: вы можете реализовать какой-то собственный способ получить сертификат, который вам нужен, и сохранить его в /tmp а затем используйте file:/tmp/mycert.pfx для загрузки сертификата.

Вы можете реализовать любым способом, который хотите. Если вы хотите сделать что-то более продвинутое, подумайте о расширении ApacheHttpClient - и советы о том, как это сделать, приведены здесь .

...