public async Task PreAuthenticateAsync(PreAuthenticationContext context) { var signInData = Mapper.Map<SignInMessage, SignInData>(context.SignInMessage); var result = await domainService.PreAuthenticateAsync(signInData); context.AuthenticateResult = Mapper.Map<AuthenticationResult, AuthenticateResult>(result); }
public async Task PreAuthenticateAsync(PreAuthenticationContext context) { foreach (var service in this.services) { await service.PreAuthenticateAsync(context); } }
public override async Task PreAuthenticateAsync(PreAuthenticationContext context) { var user = await owinContext.Environment.GetIdentityServerPartialLoginAsync(); if (user == null) { // no idp, so do partial login to HRD page context.AuthenticateResult = new AuthenticateResult("~/hrd", (IEnumerable<Claim>)null); } else { // we have partial login, so look for IdP claim var idp_claim = user.Claims.FirstOrDefault(x => x.Type == "idp"); if (idp_claim == null) { context.AuthenticateResult = new AuthenticateResult("Error: no IdP claim found"); } context.SignInMessage.IdP = idp_claim.Value; } }
public Task PreAuthenticateAsync(PreAuthenticationContext context) { return inner.PreAuthenticateAsync(context); }
public async Task PreAuthenticateAsync(PreAuthenticationContext context) { await this.inMemoryUserService.PreAuthenticateAsync(context); }
public async Task<IHttpActionResult> Login(string signin = null) { Logger.Info("Login page requested"); if (signin.IsMissing()) { Logger.Info("No signin id passed"); return HandleNoSignin(); } if (signin.Length > MaxSignInMessageLength) { Logger.Error("Signin parameter passed was larger than max length"); return RenderErrorPage(); } var signInMessage = signInMessageCookie.Read(signin); if (signInMessage == null) { Logger.Info("No cookie matching signin id found"); return HandleNoSignin(); } Logger.DebugFormat("signin message passed to login: {0}", JsonConvert.SerializeObject(signInMessage, Formatting.Indented)); var preAuthContext = new PreAuthenticationContext { SignInMessage = signInMessage }; await userService.PreAuthenticateAsync(preAuthContext); var authResult = preAuthContext.AuthenticateResult; if (authResult != null) { if (authResult.IsError) { Logger.WarnFormat("user service returned an error message: {0}", authResult.ErrorMessage); await eventService.RaisePreLoginFailureEventAsync(signin, signInMessage, authResult.ErrorMessage); return RenderErrorPage(authResult.ErrorMessage); } Logger.Info("user service returned a login result"); await eventService.RaisePreLoginSuccessEventAsync(signin, signInMessage, authResult); return await SignInAndRedirectAsync(signInMessage, signin, authResult); } if (signInMessage.IdP.IsPresent()) { Logger.InfoFormat("identity provider requested, redirecting to: {0}", signInMessage.IdP); return await LoginExternal(signin, signInMessage.IdP); } return await RenderLoginPage(signInMessage, signin); }
public Task PreAuthenticateAsync(PreAuthenticationContext context) { return Task.FromResult(0); }
public override Task PreAuthenticateAsync(PreAuthenticationContext context) { return base.PreAuthenticateAsync(context); }
public override Task PreAuthenticateAsync(PreAuthenticationContext context) { var id = ctx.Request.Query.Get("signin"); context.AuthenticateResult = new AuthenticateResult("~/custom/login?id=" + id, (IEnumerable<Claim>)null); return Task.FromResult(0); }