【问题标题】:OpenIdConnect: Manually handle CallbackOpenIdConnect:手动处理回调
【发布时间】:2019-03-28 16:02:34
【问题描述】:

在asp.core中配置OpenIdConnectOptions.CallbackPath时,能否提供自己的controller/action方法来拦截OIDC服务器返回的代码?

我已经设置了一个控制器/动作方法来处理返回的代码,并在 Startup.cs 类中添加了这个选项:

.AddOpenIdConnect("oidc", options =>
{
  //other options
  options.CallbackPath = new PathString("/oidc/codehandler");
}

但即使我看到用户登录后发生重定向,操作方法也不会被调用:

http://myserver.com/oidc/codehandler?scope=openid&state=abc123&code=xyz456

我在这里做错了什么?

【问题讨论】:

    标签: c# asp.net-core openid-connect


    【解决方案1】:

    CallbackPath 是服务器在身份验证后重定向的路径。它由 OIDC 中间件自己自动处理,我们不需要在我们的应用程序中创建它,中间件会处理它。

    您可以在 OIDC OWIN 中间件中使用notification events,该中间件调用以启用开发人员对身份验证过程的控制。例如,AuthorizationCodeReceived 事件可用于通过授权码获取访问令牌。

    【讨论】:

      猜你喜欢
      • 2014-01-26
      • 2016-10-09
      • 2019-10-21
      • 1970-01-01
      • 1970-01-01
      • 2013-04-10
      • 1970-01-01
      • 1970-01-01
      • 2019-06-29
      相关资源
      最近更新 更多