c# - OAuth 访问令牌是用户特定的吗?
问题描述
我们需要为我们的 web 应用程序添加新功能,该应用程序是用asp.net core 3.1和angular编写的,它会在Zoom(视频会议服务提供商)中创建新的预定会议。目前这是唯一的要求,所以从表面上看,这听起来很简单。事实上,他们的 api 有据可查且易于使用。现在,由于我们在服务器上使用asp.net 核心,我们可以使用它的缓存功能,如会话、内存中缓存 ( IMemoryCache ) 等。我在完成图片时缺少的知识是关于OAuth访问令牌. 我不确定Zoom发行的访问令牌是否特定于刚刚通过身份验证/授权并想要创建新会议的用户或我们的网络应用程序(按照OAuth的条款,我们将我们的网络应用程序称为客户端)。所以这里的意思是我们需要为访问令牌选择合适的存储机制。如果是在用户级别,即特定于我们应用程序当前使用它的用户,我们需要将令牌存储在asp.net core的 Session 存储中,但另一方面,如果令牌是,比方说上一层我们需要全局存储令牌,可能在 asp.net 内核的内存缓存中,即IMemoryCahce东西。这是我需要了解的主要问题。关于将访问令牌保留在服务器上,这是我从阅读有关该主题的一些材料中了解到的最佳实践。
非常感谢,
阿希隆
解决方案
要回答您的问题,假设正在使用授权代码流,是的,访问令牌是特定于用户的。这是因为令牌是个人用户在第 3 方 OAuth 提供程序中执行的身份验证的结果。
尽管客户端访问令牌是 OAuth 规范中的一个概念,但面向用户的第 3 方应用程序通常不会提供广泛的权限并坚持逐个用户的基础(甚至不支持 client_credentials 授权)。
推荐阅读
- flutter - 如何将 TextStyle 和 textTheme 应用到 Flutter 中的 Text 小部件?
- python - 如何在 python 中从 pandas 数据框加载 Weka 数据集
- azure - 为已经可用的 REST API 创建一个交互点
- android - 使用“EAN_13,EAN_8,UPC_A,UPC_E”android 扫描时面临问题
- excel - 如何避免在我的工作簿中使用 activechart
- javascript - 有没有办法在同一页面上使用反应网络摄像头,一个用于前置摄像头,另一个用于后置摄像头?
- reactjs - 将 GoDaddy 域名添加到 Surge
- regex - 如何匹配 'a' 或 '^'
- laravel - 为什么当我想 php artisan db:seed 时我不能 db:seed
- php - 使用 DOMDocument 将多个 HTML 正文保存为一个