为什么我需要在“ auth / token / create”路径上具有“更新”功能才能读取AWS Secrets引擎生成的密钥?

问题描述 投票:0回答:1

我遵循https://www.hashicorp.com/resources/best-practices-using-hashicorp-terraform-with-hashicorp-vault处的指南。

很好,但是当我使用Terraform从Vault获取动态创建的AWS凭证时,出现403错误。

我已经解决了问题,但是我不太明白为什么我需要添加额外的功能(特别是因为它不在指南中)以及它可能会有哪些问题。

非工作政策:

path "aws/creds/dev-role" {
  capabilities=["read"]
}

工作政策:

path "aws/creds/dev-role" {
  capabilities=["read"]
}

path "auth/token/create" {
  capabilities=["update"]
}

预期的结果是,当我运行“地形计划”时,它会列出要执行的操作。

当我不包含“更新”功能时出现的错误是:

provider.vault:无法创建受限子令牌:制作API时出错请求。

RL:POST https://:8200 / v1 / auth / token / create代码:403。错误:

  • 1发生错误:

  • 权限被拒绝

terraform hashicorp-vault
1个回答
0
投票

我的理解是,保管库提供程序不仅尝试使用从AWS auth结果返回的保管库令牌,而且尝试从返回的令牌中制作临时子令牌,以便保管库提供程序可以指定希望该子代保留多长时间生存令牌。

[这也使以后更容易杀死一些子令牌,同时保留从您的AWS凭证生成的其他令牌。

© www.soinside.com 2019 - 2024. All rights reserved.