首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在授权代码授予流情况下,浏览器中存储的OAuth访问令牌在哪里?

在授权代码授予流情况下,浏览器中存储的OAuth访问令牌在哪里?
EN

Stack Overflow用户
提问于 2019-11-15 07:50:32
回答 1查看 18.8K关注 0票数 4

我输入了我的凭据,并登录到一个受OAuth授权代码流保护的web应用程序。然后我执行了以下步骤:

  1. Open tools (F12)并开始捕获网络流量
  2. ,尝试从API获取数据。此请求将要求发送访问令牌。但是,我能够在请求头中查看网络选项卡上的访问令牌,如下面的屏幕截图所示:

我的理解如下:

  1. 访问令牌将存储在我的web应用程序运行的web服务器上。它永远不会存储在browser.
  2. Since中--我可以在“网络”选项卡中看到它,在浏览器中存储的访问令牌到底在哪里?我们使用Azure作为IDP和Owin包来集成OAuth auth代码流。
  3. API请求是通过HTTPS实现的,我可以在网络选项卡中查看完整的请求细节。这是预料中的吗?
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-11-15 10:51:36

只有少数地方可以持久地在浏览器中存储数据。

截至本文撰写之时:

  • Cookies
  • Session存储
  • 本地Storage
  • IndexedDB
  • Web SQL

如果您使用库来实现OAuth2流,那么可以使用其中的任何一个。您可以在Chrome中的“应用程序”developer tools选项卡或其他浏览器中的类似位置找到和检查这些存储系统。您可以看到/检查的内容取决于当前在active选项卡中的域。

  1. 如果您的客户端是基于服务器的,因此是保密的,则应该将令牌存储在安全的HttpOnly cookie中。然后,代理通过您自己的服务器向后端请求,包括来自cookie的承载令牌。如果您的客户端是一个单一的页面应用程序,您应该考虑将其存储在内存中,并在重新加载页面时重新授权。如果不是
  2. ,则会话存储是您最安全的选项。如果OAuth2是由您的前端执行的,则最常使用此方法。

在任何情况下,如果OAuth2流仅由前端组件执行,则预期令牌驻留在上述存储系统的某个位置,并且它包含在请求中,在开发人员工具的网络选项卡中可见。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58872488

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档