云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

分布式存储_服务器加内存_高性价比

小七 141 0

云铸造保险库服务代理

我们很高兴地宣布正式发布云铸造HashiCorp保险库服务代理。这个ServiceBroker连接到一个现有的保险库集群,CloudFoundry中的多个租户可以使用它安全地使用Vault存储、访问和加密。»为什么选择Vault和Cloud Foundry集成HashiCorp的核心组件之一是我们对异构环境的承诺。Cloud Foundry HashiCorp Vault Service Broker是我们继续致力于与生态系统合作伙伴合作的一个例子,无论用户的基础设施或应用程序类型如何,都将为他们提供最佳体验。此外,HashiCorp的Tao展示了简单性和模块性,并结合了顺序进程的通信。这些关键支柱促使我们创建可插拔组件。简单地说:你不必使用所有的HashiCorp工具来获得其中的好处。您不应该仅仅为了使用一个工具而重新设计整个基础结构。保险库是一个管理机密的工具,虽然我们希望您使用Terraform部署它并使用Nomad运行它,但您不必这样做。我们的工具独立运行,以构建工作流,使您能够为任何应用程序提供、保护和运行任何基础设施。»背景CloudFoundry为部署和管理应用程序提供了一个框架。这些应用程序能够相互通信,或者与预先配置的服务进行通信。这些服务通过服务代理公开api,并可以向应用程序提供数据,包括凭据、端点或特定于应用程序的数据。当针对Cloud Foundry HashiCorp Vault service Broker配置新的服务实例时,它将在Vault服务器中执行以下操作:在/cf//secret安装通用后端/在/cf//secret安装通用后端/在/cf//secret安装通用后端/在/cf//transit安装传输后端/装载操作是幂等的,因此相同组织或空间中的服务实例将不会重新创建装载。这些挂载点作为凭证的一部分返回给应用程序,因此应用程序不需要猜测或插入这些字符串。只读组织装载允许在组织范围内共享机密,读写装载允许通过通用后端在同一个Cloud Foundry空间中的应用程序之间共享机密。传输后端根据每个应用程序提供"加密即服务"。我们相信,这种架构为应用程序提供了最佳解决方案,使应用程序能够在实例之间、在同一空间中与其他应用程序共享机密,并从cloudfoundry中的组织中检索只读信息。这种设计的好处在于,应用程序不需要知道保险库,就可以获得现代机密管理的好处。»入门cloudfoundry HashiCorp Vault服务代理假定已经配置了保险存储服务器。此博客文章使用本地工作站上的以下变量表示地址和令牌:$export保险库地址="https://vault.company.internal/"$export VAULT_TOKEN="abcdef-134255-…"Cloud Foundry HashiCorp Vault Service Broker不运行或配置Vault服务器。上面的这个保险库服务器不需要在cloudfoundry下运行,但是它必须可以从cloudfoundry内部或任何部署代理的地方访问。另外,代理被配置为使用基本身份验证。这些变量将在本文中表示如下:$export USERNAME="保险库"$export PASSWORD="保险库"另外,本文假设cloudfoundry集群已经启动并运行。要在本地启动集群,建议使用PCF Dev。»部署代理第一步是部署代理。这个代理可以在任何地方运行,包括cloudfoundry、Heroku、HashiCorp Nomad或您的本地笔记本电脑。这个例子展示了在cloudfoundry下运行代理。首先,创建一个运行代理的空间:$cf创建空间保险库代理切换到那个空间:$cf target-s保险库经纪人通过从GitHub克隆存储库来部署cf vault service broker:$git克隆https://github.com/hashicorp/cf-vault-service-broker$cd cf保险库经纪人并向Cloud Foundry推出:$cf push--随机路由--无启动-random route标志是可选的,但它允许我们在需要时轻松地运行多个保险库代理,而不是依赖于"可预测的名称"。--no start标志很重要,因为我们还没有向应用程序提供所需的环境变量。现在就不能开始了。配置代理环境以提供以下变量:$cf set env vault broker vault_ADDR"${vault_ADDR}"$cf set env vault broker vault_TOKEN"${vault_TOKEN}"$cf set env vault broker SECURITY_USER_NAME"${USERNAME}"$cf set env vault broker SECURITY_USER_PASSWORD"${PASSWORD}"配置好后,启动代理:$cf启动保险库代理要验证Cloud Foundry HashiCorp Vault Service Broker是否正在运行,请执行:$cf应用程序名称请求的状态实例内存磁盘URL保险库经纪人像鱼雷一样启动了1/1 256M 512M保险库经纪人-重新勘探.local.pcfdev.io接口抓取网址,并保存在一个变量或复制到你的剪贴板-我们将需要它稍后。BROKER_URL=$(cf app vault BROKER | grep URL:| awk'{print$2}')同样,我们的代理不需要在CloudFoundry下运行—这可以是指向托管代理的任何服务的URL,它只是一个Golang HTTP服务器。要验证代理是否按预期工作,请查询其目录:$curl-s"${USERNAME}:${PASSWORD}@${BROKER_URL}/v2/catalog"结果将是JSON,其中包含代理的计划列表:{"服务":[{"id":"0654695e-0760-a1d4-1cad-5dd87b75ed99","name":"金库","description":"HashiCorp保险库服务代理","可绑定":正确,"可更新计划":错误,"计划":[{"id":"0654695e-0760-a1d4-1cad-5dd87b75ed99.默认值","name":"默认","description":"安全访问多租户HashiCorp Vault集群","免费":是的}]}]}HashiCorp保险库服务代理现在在cloudfoundry下运行,可以接收请求。»注册保险库经纪人在绑定到服务之前,代理必须向cloudfoundry注册。请记住,没有要求代理在cloudfoundry下运行,因此我们需要从上面提供代理注册服务broker_URL。同样,这一点很重要,因为在HashiCorp,我们相信异构性的愿景;您不应该将所有服务都放入完美的容器中来吸收现代最佳实践。要注册代理,应用程序开发人员首先创建一个新空间,在那里他们将请求访问代理:$cf创建空间示例$cf target-s示例接下来,在这个空间注册代理:$cf create service broker vault broker vault vault"https://${broker_URL}"--空间范围要验证命令是否有效,请查询市场。除了内置的代理之外,您还应该看到代理:$cf市场# ...vault默认HashiCorp vault服务代理»通过Vault Broker生成凭据在市场中注册服务之后,现在可以创建服务实例并绑定到它。$cf create service vault default我的保险库接下来,创建服务密钥:$cf创建服务密钥我的保险库我的密钥最后检索此实例的凭据:$cf服务密钥我的保险库我的密钥回答将是:{"地址":https://vault.company.internal:8200/","授权":{"accessor":"b1074bb8-4d15-36cf-54dd-2716fb8ac91d","token":"dff95895-6a03-0b29-6458-dc8602dc9df8"},"后端":{"generic":"cf/203f2469-04e4-47b8-bc17-f3af56df8019/secret","中转":"cf/203f2469-04e4-47b8-bc17-f3af56df8019/transit"},"后台共享":{"组织":"cf/3c88c61e-875b-4530-b269-970f926340c4/secret","空格":"cf/0348d384-f7d4-462b-9bd9-5a4c05b21b6c/secret"}}按键如下:address—向Vault服务器发出请求的地址授权访问器-可用于日志记录的令牌访问器授权令牌-向保险库请求时提供的令牌后端.通用-Vault中的命名空间,此令牌对静态机密存储("通用")后端具有完全的CRUD访问权限后端。传输-Vault中的命名空间,此令牌对传输("加密即服务")后端具有完全访问权限后端_共享.组织-Vault中的命名空间,此令牌对组织范围内的数据具有只读访问权限;所有实例都对该路径具有只读访问权限,因此可以使用它在整个组织中共享信息。后端_共享空间-Vault中的命名空间,此令牌对空间范围内的数据具有读写访问权限;所有实例都对此路径具有读写访问权限,因此可以使用它在整个空间中共享信息。»结论通过Vault,我们致力于提供尽可能最好的分布式机密存储,而不管应用程序类型如何。因为由于云的必然性,基础设施环境变得越来越分散,安全性作为应用程序交付过程的基础元素必须被视为一个独立的问题。从图形上看,我们的用户告诉我们,他们按照下图的思路来查看他们的基础设施,安全性是一个必须跨越整个堆栈的元素:组织选择一个最适合他们需求的运行时环境,这些决策跨越了大量的技术,无论是设计、默认、意见还是应用程序的需求。异构性是现代数据中心的一个重要特性(而不是bug)。这就是为什么金库,就像所有的哈希科