基于Spring WebFlux和Vault PKI的SSL

在本文中,我们将学习如何配置Vault PKI引擎并将其与Spring WebFlux集成。使用Vault PKI,您可以轻松生成由CA签名的X.509证书。然后,您的应用程序可以通过REST API获得证书。它的TTL相对较短。每个应用程序实例都是唯一的。此外,我们还可以使用SpringVault模板简化与Vault API的集成。

让我们再多说一点关于安全库的事。它允许您使用UI、CLI或HTTP API保护、存储和控制对令牌、密码、证书和加密密钥的访问。这是一个非常强大的工具。使用Vault,而不是传统的方法,您可以以更动态、云本地的方式管理您的安全性。例如,可以将Vault与数据库后端集成,然后动态生成用户登录名和密码。此外,对于Spring Boot应用程序,您可以利用Spring Cloud Vault项目。

还不止这些。您可以将Vault与来自Hashicorp的其他工具(如Consor或Nomad)集成。换句话说,它允许我们以安全的方式构建云本地平台。

源代码

如果您想自己尝试,您可以随时查看我的源代码。为了做到这一点,您需要克隆我的存储库示例SpringCloudSecurity( https://github.com/piomin/sample-spring-cloud-security.git )。然后,您应该转到网关服务目录,并按照我在下一节中的说明进行操作。示例应用程序充当微服务的API网关。我们使用Spring Cloud Gateway。由于它是建立在Spring WebFlux之上的,所以这个例子非常适合我们当前的文章。

1. 运行Vault

我们将在开发模式下在Docker容器中运行Vault。在该模式下运行的服务器不需要任何进一步的设置,启动后即可使用。启动后,我们的Vault实例在端口 8200 上可用。本文中使用的Vault版本为1.7.1。

$ docker run --cap-add=IPC_LOCK -d --name vault -p 8200:8200 vault

可以使用不同的方法登录,但最适合我们的方式是通过令牌。为此,我们必须使用命令 docker logs vault 显示容器日志,然后复制根令牌,如下所示。

最后,我们可以登录到Vault web控制台。

2. 启用和配置Vault PKI

有两种方法可以启用和配置Vault PKI:使用CLI或通过UI。大多数文章都描述了配置PKI引擎所需的CLI命令列表。但是,我将使用Vault UI来实现这一点。首先,让我们在主站点上启用一个新引擎。

然后,我们需要选择一种类型的引擎来启用。在我们的例子中,它是PKI证书的选项。

在创建过程中,让我们保留一个默认名称pki。然后,我们需要导航到新启用的引擎并创建一个新角色。角色用于生成证书。我的角色的名称是默认的。这个名称很重要,因为我们必须使用 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值