如何在没有证书的情况下验证 HashiCorp Vault?
How to authenticate HashiCorp Vault without certificate?
下面是我的代码:
import hvac
client = hvac.Client(
url='https://vault-abc.net',token='s.d0AGS4FE3o6UxUpVTQ0h0RRd',verify='False'
)
print(client.is_authenticated())
输出错误:
in cert_verify
raise IOError("Could not find a suitable TLS CA certificate bundle, " OSError: Could not find a suitable TLS CA certificate
bundle, invalid path: False
我只有令牌和 URL 从客户端登录控制台,没有共享证书!在其他 java 应用程序代码中,不使用任何证书身份验证工作,但在 python 代码中 hvac 模块或 CURL 或 vault CLI 期望证书被传递。我有什么办法可以处理这个问题并修复上面的错误吗?
我们有跳过证书检查的选项吗?
议程正在使用 python 程序进行身份验证并获取保管库机密,无需任何证书,只需使用令牌和保管库即可获取 URL。
您可以禁用证书检查,但对于像 Vault 这样的东西通常不是一个好主意(禁用对安全服务的安全检查)。
在任何情况下,您的问题都很简单:您正在传递 'False'
(一个字符串),而您应该将 False
(一个布尔值)作为 verify
参数传递。
传递字符串会导致库在该路径中查找证书;由于路径 'False'
上没有证书,您会收到所看到的错误。
下面是我的代码:
import hvac
client = hvac.Client(
url='https://vault-abc.net',token='s.d0AGS4FE3o6UxUpVTQ0h0RRd',verify='False'
)
print(client.is_authenticated())
输出错误:
in cert_verify raise IOError("Could not find a suitable TLS CA certificate bundle, " OSError: Could not find a suitable TLS CA certificate bundle, invalid path: False
我只有令牌和 URL 从客户端登录控制台,没有共享证书!在其他 java 应用程序代码中,不使用任何证书身份验证工作,但在 python 代码中 hvac 模块或 CURL 或 vault CLI 期望证书被传递。我有什么办法可以处理这个问题并修复上面的错误吗?
我们有跳过证书检查的选项吗?
议程正在使用 python 程序进行身份验证并获取保管库机密,无需任何证书,只需使用令牌和保管库即可获取 URL。
您可以禁用证书检查,但对于像 Vault 这样的东西通常不是一个好主意(禁用对安全服务的安全检查)。
在任何情况下,您的问题都很简单:您正在传递 'False'
(一个字符串),而您应该将 False
(一个布尔值)作为 verify
参数传递。
传递字符串会导致库在该路径中查找证书;由于路径 'False'
上没有证书,您会收到所看到的错误。