使用 JWT 的 Oauth 2.0 授权
Posted
技术标签:
【中文标题】使用 JWT 的 Oauth 2.0 授权【英文标题】:Oauth 2.0 authorization using JWT 【发布时间】:2017-07-23 11:58:31 【问题描述】:我正在使用 JWT 令牌在 web api 2 授权中实现,我是这个领域的新手。 我坚持生成 AudienceId 和 AudienceSecret 为什么我需要它们的目的?
【问题讨论】:
【参考方案1】:从 OAuth 的角度来看,令牌是不透明的对象,不包含“受众”声明。如果你使用 JWT 令牌,那么你可以参考 JWT 规范 RFC7159
4.1.3。 “aud”(观众)声明
“aud”(受众)声明标识了 JWT 的接收者 用于。打算处理 JWT 的每个主体都必须 用受众声明中的价值来识别自己。如果校长 处理索赔并不表明自己具有价值 当此声明存在时,“aud”声明,则 JWT 必须是 被拒绝。在一般情况下,“aud”值是一个 case- 敏感字符串,每个都包含一个 StringOrURI 值。在里面 当 JWT 有一个受众的特殊情况下,“aud”值可能是 包含 StringOrURI 值的单个区分大小写的字符串。这 受众价值观的解释通常是特定于应用程序的。 使用此声明是可选的。
aud
的预期用途是识别令牌的预期接收者。它的使用是可选的,取决于应用程序的上下文。可能在你的 Oauth2 服务器的文档中指定了用途
也可以看看这个关于这个话题的详细answer
【讨论】:
以上是关于使用 JWT 的 Oauth 2.0 授权的主要内容,如果未能解决你的问题,请参考以下文章