您可以简单地使用-policy 将使用策略强制用于任何令牌。
例如,
创建策略,
path "secret/*"
{
capabilities = ["create", "read", "list"]
}
并将其写入保险库,
./vault policy write issue_cert po.hcl
现在创建一个使用此策略的令牌,
./vault token create -policy="issue_cert"
现在检查策略是否应用于新令牌,
curl -X GET \
http://192.168.17.154:8200/v1//auth/token/lookup-self \
-H 'content-type: application/json' \
-H 'x-vault-token: 6abdfde0-caf5-2687-df62-07d2e30bf21a' \
-d '{
"token": "e3cffb2b-9b7b-5dcc-baf3-bd67cf16affc"
}'
会给你,
{
"request_id": "bd351c1c-2185-3471-9abe-aaf5ed0dadd7",
"lease_id": "",
"renewable": false,
"lease_duration": 0,
"data": {
"accessor": "41f14bc3-110c-00b8-1b6e-faaa3b455a15",
"creation_time": 1536888189,
"creation_ttl": 2764800,
"display_name": "token",
"entity_id": "",
"expire_time": "2018-10-16T12:23:09.139654113+11:00",
"explicit_max_ttl": 0,
"id": "6abdfde0-caf5-2687-df62-07d2e30bf21a",
"issue_time": "2018-09-14T11:23:09.139653867+10:00",
"meta": null,
"num_uses": 0,
"orphan": false,
"path": "auth/token/create",
"policies": [
"default",
"issue_cert"
],
"renewable": true,
"ttl": 2764596
},
"wrap_info": null,
"warnings": null,
"auth": null
}
关于,
(当然这个政策也必须适用于'父'令牌)
情况并非总是如此。例如,如果您使用根作为父令牌,则根不必使用您需要应用的策略。