当前位置: 首页 > 知识库问答 >
问题:

Vault approle auth强制默认策略

曹育
2023-03-14

当使用Approle Auth方法创建角色时,我会告诉Vault在一个测试策略下创建生成的令牌

vault write auth/approle/role/test \
bind_secret_id=true \
secret_id_num_uses=0 \
token_num_uses=100 \
token_ttl=10m \
token_max_ttl=10m \
policies=test

我获得roleid和secretid:vault read auth/approle/role/test/role-id vault write-f auth/approle/role/test/secret-id并使用它生成令牌:

vault write auth/approle/login \
role_id=a36f3615-9532-983a-991b-f5f4bff9723a \
secret_id=d74458b0-b076-12c6-fc5d-d5f92273ef9d

我得到一个生成的令牌,现在检查生成的令牌:

  vault token lookup ddfe8514-4a9a-c14b-9179-576db031a137                                                                
  Key                 Value
  ---                 -----
  accessor            b8aecbf5-e0d1-d016-1c02-3e1a1fd5098a
  creation_time       1532330714
  creation_ttl        600
  display_name        approle
  entity_id           bcd8a77a-85df-8224-e5ff-9390cae15e25
  expire_time         2018-07-23T09:35:14.579632638+02:00
  explicit_max_ttl    0
  id                  ddfe8514-4a9a-c14b-9179-576db031a137
  issue_time          2018-07-23T09:25:14.579632516+02:00
  meta                map[role_name:test]
  num_uses            100
  orphan              true
  path                auth/approle/login
  policies            [default test]
  renewable           true
  ttl                 580

共有1个答案

钱弘壮
2023-03-14

如正式文件所述:

默认策略是无法删除的生成库策略。默认情况下,它被附加到所有令牌,但可以通过支持身份验证方法在令牌创建时显式排除。

编辑

 类似资料:
  • 默认情况下,身份认证并不需要访问资源。当安全约束(如果有)包含的url-pattern 是请求 URI 的最佳匹配,且结合了施加在请求的 HTTP 方法上的 auth-constraint(指定的角色),则身份认证是需要的。同样,一个受保护的传输是不需要的,除非应用到请求的安全约束结合了施加在请求的HTTP方法上的 user-data-constraint(有一个受保护的transport-gua

  • 我通过以下步骤针对libc,libc abi,编译器-rt构建clang: > < li> 为了下载(和更新)llvm和子项目,我使用了以下脚本: 首先,我使用 gcc 针对 libgcc 和 libstdc 构建 llvm、clang、libunwind,并将它们安装在 / 中。在以下所有步骤中,除了最后一个,我都使用这个新鲜的叮当。 (我几乎可以肯定,这里没有一个步骤是多余的。) 在最后一步,

  • 我有以下一个批处理的Spring配置。我在生产批处理中遇到过一个问题,当一个特定的用例抛出一个不可跳过的异常时。当我在集成测试中复制用例时,批处理行为仍然很奇怪。当我的batch.commit-interval属性大于1时,将触发重试机制,回滚未提交的块,并再次处理所有以前的记录。当batch-commit-interval设置为1时,一旦抛出不可跳过的异常,批处理就会失败。 我尝试了batch-

  • IntelliJ Idea使用作为所有导入的Gradle项目的默认Gradle位置: 我想在默认情况下对导入的Gradle项目使用< code >指定位置: 但是,不可能选择作为默认选项。 如何强制Idea对新的导入项目使用? 联系: IDEA以及如何禁用分级包装生成 对新项目使用本地梯度分布而不是包装

  • 的复制构造函数和赋值操作符的情况下,便编译器会为我们生成默认的复制构造函数和赋值操作符,以内存复制的形式完成对象的复制。虽然这种机制可以为我们节省很多编写复制构造函数和赋值操作符的时间,但是在某些情况下,比如我们不希望对象被复制,这种机制却是多此一举。) 关于类的“禁止复制”,现在可以使用delete关键字完美地直接表达: class X { // … X& operator=(c