更新保管库令牌时出现错误

时间:2018-06-26 19:42:01

标签: hashicorp-vault

我们正在使用HashiCorp的Python SDK访问保险柜。并且有一个简单的代码来更新令牌,该令牌在后台调用/v1/auth/token/renew-self Vault API。

   client = hvac.Client(
                        url=credentials['vault_addr'],
                        token = credentials['vault_token'],
                        verify=False) 
   try:
        client.renew_token()
    except Exception as e:
        raise ValueError('Could not renew Vault token')

拨打电话时,我从保管库后端收到此错误

  

续订失败:政策已更改,未续订

在Vault代码中进行了一些挖掘,我发现这是异常的原因

if !policyutil.EquivalentPolicies(cert.Policies, req.Auth.Policies) {
    return nil, fmt.Errorf("policies have changed, not renewing")
}

有什么想法吗?

2 个答案:

答案 0 :(得分:0)

与该令牌相关联的策略似乎已更改,因此无法更新,因为它已与先前已弃用的策略相关联。

您应该创建一个新文件,而不是对其进行更新。

答案 1 :(得分:0)

这是一个错误,它将在0.10.4中修复:https://github.com/hashicorp/vault/issues/4829