【问题标题】:What is the Firebase Auth Session Cookie JWK URL?什么是 Firebase 身份验证会话 Cookie JWK URL?
【发布时间】:2022-02-02 04:14:25
【问题描述】:

使用常规 Firebase 身份验证 ID 令牌,我们可以使用 https://www.googleapis.com/service_accounts/v1/jwk/securetoken@system.gserviceaccount.com 的 JWK URL 进行验证

如果您改为创建Session Cookie,则颁发者为https://session.firebase.google.com/,JWK 位于哪个 URL?

【问题讨论】:

    标签: firebase google-cloud-platform firebase-authentication jwk google-cloud-identity


    【解决方案1】:

    公共证书在这里:

    https://www.googleapis.com/identitytoolkit/v3/relyingparty/publicKeys

    每个证书都是 PEM 格式。在验证 JWT 标头和有效负载后,从证书中提取公钥并验证签名。 JWT 标头 kid 将告诉您使用哪个证书。

    Google 提供了一个 API,您可以调用该 API 来获取会话 cookie 的 JWK:

    Method: getSessionCookiePublicKeys

    【讨论】:

    • 谢谢你的朋友,但我希望有一些 JWK 形式的东西,我正在使用 Hasura 的 JWT 身份验证模式 hasura.io/docs/latest/graphql/core/auth/authentication/jwt.html
    • @ArjunYelamanchili 您可以将一种格式转换为另一种格式。公共证书是两个素数 - n 和 e,带有额外的包装。 JWK 是两个相同的两个数字加上描述符。重要的信息是一样的。要验证签名,您只需要两个素数。公共证书、公共密钥和 JWK 只是编码两个素数的不同方式。
    • @ArjunYelamanchili - 您的图书馆支持公共证书。 您还可以将密钥(证书,PEM 编码的公钥)作为字符串提供 - 在密钥字段中与类型一起提供。
    猜你喜欢
    • 2018-01-21
    • 2019-10-28
    • 1970-01-01
    • 2019-04-19
    • 2010-12-01
    • 2015-03-25
    • 1970-01-01
    • 1970-01-01
    • 2010-10-02
    相关资源
    最近更新 更多