public async Task <TokenResponseModel> Authenticate([FromBody] TokenRequestModel request) { var user = await Store.PasswordVerifyAsync(request.Identifier, request.Password); if (user != null) { await EventSender.SendAsync(new UserAuthenticated { UserIdentifierTopic = request.Identifier }); SecurityContext.AssumeUser(user); return(new TokenResponseModel { Token = JWT.CreateUserToken(user, request.ClientClaims), User = user, Organization = await OrganizationStore.GetOneAsync(request.Identifier) }); } else { throw new SecurityException(); } }