【问题标题】:Single use secret in Hashicorp vaultHashicorp 保险库中的一次性秘密
【发布时间】:2020-09-15 10:21:49
【问题描述】:

任何秘密引擎都可以有一个“一次性”密码吗?

我有一个为用户生成 rsa 密钥对的命令,并希望他们检索他们的私钥。我显然可以将其打印出来,或写入文件等,但我认为如果将它存储在保险库中的“一次性”地方会很好吗?然后用户可以通过 UI 检索它,并且知道没有其他人查看过它。如果其他人看到它,他们需要重新生成。

基本上我们可以拥有一个只能读取一次的保管库密钥吗?

【问题讨论】:

    标签: hashicorp-vault


    【解决方案1】:

    例如,您可以创建一个只能访问该密钥的策略

    # policy: rsa
    path "secret/rsa" {
      capabilities = ["read"]
    }
    

    然后为该策略创建一个包装的令牌,例如

    $ vault token create -policy=rsa -num_uses=1 -wrap-ttl=120
    Key                              Value
    ---                              -----
    wrapping_token:                  s.9QFJ8mRxGJD0e7kFfFIbdpDM
    wrapping_accessor:               S0zKNUr2ENbnCtj0YyriO31b
    wrapping_token_ttl:              2m
    wrapping_token_creation_time:    2019-12-17 09:45:42.537057 -0800 PST
    wrapping_token_creation_path:    auth/token/create
    wrapped_accessor:                VmBKXoc19ZLZlHGl0nQCvV6r
    

    这将生成一个包装的令牌。

    你可以把它交给你的最终用户,他们可以用

    VAULT_TOKEN="s.3Kf3Xfn58Asr3bSDkRXATHrw" vault unwrap
    

    这将生成一个令牌。

    使用该令牌,用户将只能登录保险库并检索 rsa 凭据一次,因为之后该令牌将无效。

    您现在可以保证仅从目标用户处使用过凭据,因为封装的令牌只能解包一次。

    注意:如果您的最终用户通过 UI,您可能需要在创建令牌时调整 num_uses,因为 UI 可能会使用令牌执行多个操作。

    more info

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-12-04
      • 2022-08-08
      • 2023-02-03
      • 2023-03-02
      • 2020-01-06
      • 2020-12-16
      • 2018-04-28
      • 1970-01-01
      相关资源
      最近更新 更多