【问题标题】:JWK management in openID Connect provider serveropenID Connect 提供者服务器中的 JWK 管理
【发布时间】:2021-02-23 21:07:32
【问题描述】:

我想实现一个 OpenID Connect 服务器,我不知道我应该如何为客户端管理 JWK?只需一个 JWK 即可唱出所有 JWT 令牌或为每个客户端生成 JWK? 感谢任何可以帮助我的教程链接。

【问题讨论】:

    标签: oauth-2.0 openid-connect openid jwk


    【解决方案1】:

    每个客户端都应该有自己的 JWK。 OpenID Connect Dynamic Client Registration 1.0jwksjwks_ur 定义为客户端元数据。

    【讨论】:

    • 但是我看到Auth0 private keys are unique per tenant,我认为如果我们的应用是多租户的,我们应该为每个租户创建一个公钥/私钥,否则,只需一个公钥/私钥对就足够了。
    【解决方案2】:

    好的,我研究了一下,得到的是这样的:

    • Google 使用单个端点来获取其 JWK 并验证签名。不管是什么客户。

    • Auth0 为每个租户使用一个私钥,因此它为该租户中的所有客户端使用一个公钥/私钥。

    • Keycloak 每个领域使用一个密钥。因此该领域中的所有客户端都使用该单个公钥。

    我的结论 如果我们的 OP 是多租户的,则每个租户的公钥/私钥可以是唯一的,否则为所有客户端使用单个公钥/私钥对。请注意,我们也应该有密钥轮换。

    【讨论】:

      猜你喜欢
      • 2014-04-25
      • 2012-10-15
      • 1970-01-01
      • 2015-02-05
      • 1970-01-01
      • 2018-04-17
      • 1970-01-01
      • 1970-01-01
      • 2016-12-18
      相关资源
      最近更新 更多