在我的应用程序中,我们从我的应用程序中发出两个调用,以从Vault获取机密,如下所示:
>
登录到保险库:将调用发送到https:://v1/auth/approle/login--它将以role_id和secret_id作为有效负载,响应将是client_token。
Fetch secrets:调用https:://v1/secret/data/abc/dev/xyz.json--它将头作为X-Vault-Token和X-Vault-Namespace,并给出如下所示的响应:
{“request_id”:“.....”、“lease_id”:“”、“可再生”:false、“lease_duration”:0、“data”:{“data”:{“name”:“abc”}、“metadata”:{“created_time”:“...”、“deletion_time”:“”destroaded“:false、”version“:1}}
现在我想使用Spring Cloud Vault依赖项来使事情通过它工作。请为我提供适当的插图,使这工作?
假设您正在运行spring boot,并且为您的应用程序配置了一个工作的Vault服务器。
添加spring cloud vault maven依赖项
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-vault-config</artifactId>
</dependency>
向bootstrap.yaml添加保险库配置
spring:
application:
name: abc
cloud:
vault:
host: <vault-server-hostname>
port: <vault-server-port>
scheme: HTTPS
namespace: <name-of-vault-namespace>
authentication: APPROLE
app-role:
role-id: <your-application-role-id>
secret-id: <your-application-secret-id>
role: <your-application-role>
如果您使用spring配置文件运行应用程序,就像dev,它将被拾取并添加到保险库路径中。
现在,您应该能够使用@value(“${
”)插入存储在路径secret/data/abc/dev
上的机密
我正在使用SpringBoot开发具有微服务架构的Rest Backend。为了保护endpoint,我使用了JWT令牌机制。我正在使用Zuul API网关。 如果请求需要权限(来自JWT的角色),它将被转发到正确的微服务。Zuul api网关的“WebSecurityConfigrerAdapter”如下。 这样,我必须在这个类中编写每个请求授权部分。因此,我希望使用方法级安全性,即“Enabl
我们有一个在Apache和nginx上运行的Angular 8应用程序。我们使用带有和的Basic Auth保护此应用程序。 不幸的是,由于对服务器的请求被基本身份验证阻止,应用程序无法加载,Angular无法加载这些文件: 此 路 不通http://root/polyfills-es2015.js因为这是一个跨来源请求,所以不要求提供凭据 已阻止http://root/runtime-es201
问题内容: 我目前有一个Palm WebOS应用程序,该应用程序使用Ajax.Request通过基本身份验证连接到Web服务。要发送用户名和密码,我只需将其包含在url(即http:// username:password @ ip-address:port / )中即可,效果非常好,期望密码包含字母数字字符以外的任何字符(例如, ,最近有一个用户给我发送电子邮件,该用户的密码中包含“ @”和“&
我想构建一个API路由,经过身份验证的用户和未经身份验证的用户都可以调用该路由,并根据用户是否经过身份验证返回数据。 我卡在使用身份验证::检查()。 控制器的功能是这样的: 我最后有两个场景: 情景1 在这种情况下,在控制器中,当我检查Auth::check()在if条件内时,无论用户是否经过身份验证,我总是得到错误条件。 方案 2 在这种情况下,在控制器中,当我检查Auth::check()时
我正在编写一个程序,用于验证通过HTTP POST发送的用户名和密码,并根据ldap进行验证,无论验证是否成功,都将响应发送回用户。 我的Websecurity配置器实现 我的测试服务器.ldif
null 我研究了OAuth2隐式授权,但它要求用户在成功验证后批准/拒绝应用程序。它在我的情况下不起作用,因为我同时拥有应用程序和API。 我查看了OAuth2密码授权,它并不完美,因为我需要公开client_id/client_secret。 我关注OAuth2的原因是因为该API最终将是公开的。 忘记OAuth2,在用户发布用户名/密码时手动生成access_token(在本例中,当API公