代码之家  ›  专栏  ›  技术社区  ›  jason

ASP.net IdentiyServer 3 authorizationcodecoreceived未启动

  •  0
  • jason  · 技术社区  · 6 年前

    当用户使用Identity Server 3进行身份验证时,不会触发AuthorizationCodeReceived。RedirectToIdentityProvider确实会被解雇,但就是这样。我正在尝试调用一个函数,该函数将获取用户电子邮件或windows ID,然后添加自定义声明。但是,如果没有调用authorizationcodeereceived方法,我不知道如何做到这一点。有人有这方面的经验吗?不确定是否重要,但我的代码是ASP.net windows窗体(不是MVC)

    这是我的代码:

        Public Sub ConfigureAuth(app As IAppBuilder)
            ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12
            JwtSecurityTokenHandler.DefaultInboundClaimTypeMap = New Dictionary(Of String, String)
    
    
            app.UseCookieAuthentication(New CookieAuthenticationOptions() With {
                .AuthenticationType = CookieAuthenticationDefaults.AuthenticationType
            })
    
            Dim OpenIdAuthOption = New OpenIdConnectAuthenticationOptions() With {
               .Authority = "https://myidentityserver.azurewebsites.net/core/",
               .ClientId = "adfafasfasdfa",
               .RedirectUri = "https://localhost:44321/default.aspx/",
               .ResponseType = ("access_token"),
               .RequireHttpsMetadata = False,
               .SignInAsAuthenticationType = "Cookies",
               .Notifications = New OpenIdConnectAuthenticationNotifications() With {
    
                    .AuthorizationCodeReceived = Function(ctx)
                                                     Dim claimPrincipal As ClaimsPrincipal = ctx.AuthenticationTicket.Identity.Claims
                                                     TransformClaims(claimPrincipal)
                                                     Return Task.FromResult(0)
                                                 End Function,
                    .RedirectToIdentityProvider = Function(context)
                                                      RedirectLogin(context)
                                                      Return Task.FromResult(0)
                                                  End Function
                    }
            }
            app.UseOpenIdConnectAuthentication(OpenIdAuthOption)
        End Sub
    
    0 回复  |  直到 6 年前