如何使用 OpenIdConnect 中间件设置受众?
Posted
技术标签:
【中文标题】如何使用 OpenIdConnect 中间件设置受众?【英文标题】:How can I set audience with OpenIdConnectMiddleware? 【发布时间】:2018-06-13 02:40:13 【问题描述】:我在 ASP.NET Core 2.0 应用程序中使用OpenIdConnectMiddleware
,并使用 Auth0 作为身份验证。
我已经关注this guide通过Auth0实现认证,可以成功登录。
现在我想使用检索到的访问令牌来访问单独的 API;为此,我需要在使用 Auth0、as described here 进行授权时包含一个 audience
参数。
由于 OpenID Connect 中间件使用 Auth0 处理授权,并且 OpenIdConnectOptions
上没有 Audience
设置,我如何指定应该传递给 /authorize
端点的 audience
参数?
【问题讨论】:
【参考方案1】:在this blog post from Jerrie Pelser 中找到答案。我需要使用OnRedirectToIdentityProvider
事件处理程序来设置audience
:
options.Events = new OpenIdConnectEvents
OnRedirectToIdentityProvider = context =>
context.ProtocolMessage.SetParameter("audience", "https://my/api");
return Task.CompletedTask;
,
...
【讨论】:
以上是关于如何使用 OpenIdConnect 中间件设置受众?的主要内容,如果未能解决你的问题,请参考以下文章
OWIN OpenIdConnect 中间件 IDX10311 随机数无法验证
如何将 Azure OpenIdConnect OWIN 中间件 Cookie Auth 转换为 SPA 应用程序的 JavaScript JWT?
Microsoft OpenIdConnect Owin 响应
OpenIdConnect 错误 - 租户标识符可能不是空的 GUID