- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在花费数小时研究使用 OWIN 在 Web API 中使用 JWT 之后,我仍然对 Audience 的目的表示很困惑。有些页面说观众是将在其上验证 token 的资源服务器。其他人则认为 audience 是访问资源服务器的客户端,实际上经常将此值互换为 client_id 和 audience。
根据 JWT 规范,Audience 似乎旨在成为资源服务器 (https://www.rfc-editor.org/rfc/rfc7519#page-9)。因此,我认为没有必要为每个 API 应用程序拥有一个以上的受众。但是许多实现正在向单个 Web API 应用程序添加多个受众,并且 Microsoft 的 JwtBearerAuthenticationOptions 实现也允许这样做。
在这些实现中,他们交替使用受众和 client_id(这里是一个示例:https://auth0.com/docs/server-apis/webapi-owin)我觉得这将您的资源服务器与您的客户端紧密耦合,并在您的资源服务器上强制执行客户端声明。我觉得这是身份验证服务器的工作(因此能够根据 JWT 规范向 token 添加多个受众声明)。
我觉得我在这里遗漏了一些重要的东西。我的目标是能够开发可供多个客户端使用的多个 API,但必须在资源服务器和授权服务器上动态管理受众声明似乎违背了 JWT 的精神。然而,许多人已经以其他方式实现了它,甚至 MS 也允许每个资源服务器有多个受众,所以我希望在这里能说明一些问题。
最佳答案
audience
标识 token 的预期“消费者”。通常是应用程序 (API) 从客户端应用程序接收 token 。
期望 JWT 的服务需要检查(并验证)audience
以防止某人发送(有效的)用于其他人的 token 。
您可以想象这样一种情况,例如 API-1 和 API-2 同时使用基于角色的安全性,并且用户获得声明 admin 用于 API-1。如果 API-2 不检查 audience
,则用户有可能发送 token (其中包含管理员声明)并成功(当它不应该发送时)。
关于asp.net-web-api - 每个资源服务器的 JWT 多个受众,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35878665/
我正在尝试在 Firebase 分析中创建一个新的受众群体,其中包括"new"用户,例如使用该应用程序不到两周的用户。 我试图根据“first_open_date”是“>”或“大于”来创建受众,但是当
过去几周,我试图在我的任何 Android 应用程序中显示横幅广告。 如果我将我的设备添加为测试设备,我确实会收到测试横幅。我确实收到了插页式广告 但我没有收到任何横幅。Logcat 在我的任何设备(
我需要从我在 Power Editor 中创建的受众中获取受众 ID,但我找不到检索受众 ID 的方法。我读过 https://developers.facebook.com/docs/referen
我正在尝试在 Azure 中查找有关“允许的 token 受众”的文档,但似乎没有。我在那里放置的值是随 token 返回的资源 ID。 这是什么意思?任何文档链接将不胜感激。PS。实际页面上的学习链
我有一个使用 OWIN JWT 进行身份验证的 C# API。 我的 startup.cs(我的资源服务器)通过代码配置 OAuth: public void ConfigureOAuth(IAppB
我正在使用 Azure 移动应用程序后端 (nodeJS),如所讨论的 here 。我一直使用默认的 Web 设置配置来开发我的移动应用程序,但现在我想自定义云后端功能,因此我使用 Azure-Mob
如何在 AngularJS 中使用 adal.js 从我的 javascript 代码中获取受众 https://management.azure.com 的不记名 token ? 我在 AD 中创建
我的目标是使用 Google 电子表格中的数据作为参数,从 Google Analytics 统计数据中批量创建 AdWords 再营销受众。 我的代码是基于这个 article . API 连接似乎
AspNet.Security.OpenIdConnect.Server 上的示例在我看来,它既像身份验证服务器,又像资源服务器。我想把它们分开。我已经这样做了。 在身份验证服务器的 Startup.
我正在努力在我的身份验证服务器中实现 OAuth 2.0 JWT access_token。但是,我不清楚 JWT aud 声明和 client_id HTTP header 值之间有什么区别。它们是
我将 Google Endpoints 用作在 Google Run 容器服务中运行的 API 网关。 API 路径指向 Google 函数( Node js)。对 API 网关的调用来自 Web 应
我在 postman 和 IdentityServer 4 之间不断收到以下错误 Microsoft.IdentityModel.Tokens.SecurityTokenInvalidAudience
在具有目标 SDK 29 的 Android 应用程序上从 5.11.0 更新到 Facebook Audience 6.2.0 后,我在一小部分 Android 11 设备上看到了大量的崩溃报告。根
我是一名优秀的程序员,十分优秀!