使用IAM用户或角色进行身份验证

时间:2020-09-17 14:09:24

标签: hashicorp-vault

我有一个EC2实例,我想从中登录到Vault以检索机密。我的保管库服务器在K8s群集中运行。我在金库中创建了一个角色

vault write auth/aws/role/test-role \
  auth_type=iam \
  policies=test-policy \
  max_ttl=1h \
  bound_iam_principal_arn=arn:aws:iam::<account-id>:role/instance-group-role-name-client

和策略测试策略。根据文档,我在AWS资源(EC2)上的保管库客户端使用“ GetCallerIdentity”方法向STS创建请求,并使用其AWS凭证对其进行签名。它将签名的STS请求以及登录请求附加到Vault服务器。保管库服务器将客户端签名的请求发送到AWS,以获得标识源的响应。因此,我的K8中的保管库实例组角色需要以下iam权限:

statement {
  effect  = "Allow"
  actions = ["iam:GetRole", "iam:GetUser"]     
  resources = [
    "arn:aws:iam::<account-id>:role/instance-group-role-name-client"
  ]
}

statement {
  effect    = "Allow"
  actions   = ["sts:GetCallerIdentity"]
  resources = ["*"]
}

那很好。我可以检索秘密。但是,即使我删除了iam Vault实例组角色的iam权限,它也可以正常工作。以我的理解,保险库应该不再能够识别请求的来源。为什么仍然可以工作?

0 个答案:

没有答案
相关问题