Vault: 基础教程之内置帮助及认证

本文介绍了HashiCorp Vault中的认证方法及其配置过程,并探讨了Vault的内置帮助系统,包括如何通过API或命令行访问帮助信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

四、内置帮助

现在你已经使用过键值对的密码引擎及AWS下的动态密码生成了,在两个例子之中,结构是使用都是不一样的,那么你要如何记住使用什么路径呢,vault里面有内置的帮助系统,可以通过api或者命令行访问,同时生成可读的帮助信息。

首先我们还是启用aws,通过vault secrets enable -path=aws aws来启用,然后即可使用vault path-help aws来查看路径的帮助信息。

我们还可以使用更加具体的方式来查看:vault path-help aws/creds/my-non-existent-role

五、认证

Tokens

我们前面使用vault的方式是使用dev server,在这种方式下会默认使用root登录,而在非dev的方式下,就需要做认证了。

当我们使用vault server -dev是,会返回root token,你也可以创建更多的token:

$ vault token create 
Key                  Value
---                  -----
token                d8a63580-754a-06e1-0916-789a5e1bacad
token_accessor       f7350848-8656-8f03-c918-09186ca1a6e6
token_duration       ∞
token_renewable      false
token_policies       ["root"]
identity_policies    []
policies             ["root"]

默认情况下,此命令会创建你目前的token的子token,token通常都有一个父token
,如果父token过期了,子token同时也会过期,这样就方便控制用户的权限。

你也可以废弃token:

$ vault token revoke d8a63580-754a-06e1-0916-789a5e1bacad
Success! Revoked token (if it existed)

使用token登录:

$ vault login 9f2a12b5-6073-814a-7ff3-1ff6d5ac6c9b
Success! You are now authenticated. The token information displayed below
is already stored in the token helper. You do NOT need to run "vault login"
again. Future Vault requests will automatically use this token.

Key                  Value
---                  -----
token                9f2a12b5-6073-814a-7ff3-1ff6d5ac6c9b
token_accessor       fed3791b-9930-107d-0d3c-c81bc2fd2b1c
token_duration       ∞
token_renewable      false
token_policies       ["root"]
identity_policies    []
policies             ["root"]

最佳实践

在实际中,不应该使用token create命令为用户或者机器创建vault tokens,这些用户或者机器应该使用vault配置好的认证方法如GitHub, LDAP, AppRole等。对于一些遗留的无法创建他们token的应用程序,应该提前为他们创建好token。

认证方法

vault支持多种认证方法,在使用前都应该先启用,这里以GitHub为例子,下面两种启用方式都是等价的:

$ vault auth enable -path=github github
$ vault auth enable github

和密码引擎不一样的是,密码引擎通常在root路由下启用,而认证方法的路径的前缀通常都是auth/,所以我们刚刚启动的GitHub,在auth/github下可访问。

如果我们使用vault auth enable -path=my-github github,则可在auth/my-github下访问到,可以使用vault path-help来了解有关路径的更多信息。

接下来配置GitHub认证方法,每一种认证方法有不同的配置选项,所以请查看文档。目前,我们只需要使用最小的配置:

$ vault write auth/github/config organization=hashicorp

这个命令会告诉什么organization用户应该属于此认证方法。

然后将一个小组映射到策略下:

$ vault write auth/github/map/teams/my-team value=default,my-policy
Success! Data written to: auth/github/map/teams/my-team

当前而言,这些策略还不一定存在,当我们登录时会得到一个警告。

你也许想看看有什么认证方法是可用的:

$ vault auth list
Path       Type      Accessor                Description
----       ----      --------                -----------
github/    github    auth_github_8ffeea5d    n/a
token/     token     auth_token_0d585c97     token based credentials

使用vault auth help认证,如vault auth help github

现在可以在登录时使用GitHub来认证了,输入你的GitHub personal access token然后vault会认证:

$ vault login -method=github
GitHub Personal Access Token (will be hidden):
Success! You are now authenticated. The token information displayed below
is already stored in the token helper. You do NOT need to run "vault login"
again. Future Vault requests will automatically use this token.

Key                    Value
---                    -----
token                  7efb3969-8743-880f-e234-afca6e12d790
token_accessor         f7bfb6a3-c41e-eb87-5317-88a0aad200ae
token_duration         768h
token_renewable        true
token_policies         [default my-policy]
token_meta_org         hashicorp
token_meta_username    my-user

成功了~后面都不要再次登录。然而,这个新用户还没有任何权限,因此我们重新使用root登录:

$ vault login <initial-root-token>

你可以废弃任何使用认证方法的登录:

$ vault token revoke -mode path auth/github

如果你想要完全禁用掉认证方法:

$ vault auth disable github
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值