为什么我不能在 openId 流之后决定我的 cookies?
Why I cant decode my cookies after openId flow?
我在我的 WEB Api 应用程序中使用 OKTA。身份验证成功后,我在会话中获得了 cookie,但我不明白为什么我没有 JWT 令牌(我想为该应用程序创建 angular 客户端)。我在这里到底使用什么?有人有这方面的经验吗?
openId是基于JWT的,为什么我没有JWT?当我在 JWT 解码器中粘贴每个 cookie 时,它是无效的...
您在浏览器中看到的 cookie 不是您的令牌。这是您的加密会话 cookie。
如果您已将系统配置为将您的令牌保留在 cookie 中,则此 cookie 可能包含您的令牌。在您的情况下,您有 cookie C1 + C2,它们加在一起非常大,这可能意味着它也包含令牌。
您可以通过查看前两个字符来判断字符串是否为 JWT 令牌。如果它以 ey..... 开头,那么它就是一个 JWT 令牌。
您不应尝试从 Angular 访问这些 cookie,从安全角度来看,将令牌存储在浏览器中不是一个好主意。请查看 BFF 模式或尝试仅在后端处理令牌。
见
- https://blog.bitsrc.io/bff-pattern-backend-for-frontend-an-introduction-e4fa965128bf
- https://leastprivilege.com/2020/03/31/spas-are-dead/
- https://leastprivilege.com/2019/01/18/an-alternative-way-to-secure-spas-with-asp-net-core-openid-connect-oauth-2-0-and-proxykit/
- https://curity.io/resources/learn/spa-best-practices/
我在我的 WEB Api 应用程序中使用 OKTA。身份验证成功后,我在会话中获得了 cookie,但我不明白为什么我没有 JWT 令牌(我想为该应用程序创建 angular 客户端)。我在这里到底使用什么?有人有这方面的经验吗?
openId是基于JWT的,为什么我没有JWT?当我在 JWT 解码器中粘贴每个 cookie 时,它是无效的...
您在浏览器中看到的 cookie 不是您的令牌。这是您的加密会话 cookie。
如果您已将系统配置为将您的令牌保留在 cookie 中,则此 cookie 可能包含您的令牌。在您的情况下,您有 cookie C1 + C2,它们加在一起非常大,这可能意味着它也包含令牌。
您可以通过查看前两个字符来判断字符串是否为 JWT 令牌。如果它以 ey..... 开头,那么它就是一个 JWT 令牌。
您不应尝试从 Angular 访问这些 cookie,从安全角度来看,将令牌存储在浏览器中不是一个好主意。请查看 BFF 模式或尝试仅在后端处理令牌。 见
- https://blog.bitsrc.io/bff-pattern-backend-for-frontend-an-introduction-e4fa965128bf
- https://leastprivilege.com/2020/03/31/spas-are-dead/
- https://leastprivilege.com/2019/01/18/an-alternative-way-to-secure-spas-with-asp-net-core-openid-connect-oauth-2-0-and-proxykit/
- https://curity.io/resources/learn/spa-best-practices/