public ActionResult ValidatePassword(string id, string password)
        {
            var board = BoardManager.GetBoard(id);

            if (board == null)
            {
                ViewBag.ErrorMessage = "No such board exists";

                return(View("BoardError"));
            }

            if (!board.PasswordEnabled)
            {
                return(new RedirectResult("/board/" + id));
            }

            if (board.Password == password)
            {
                if (!AuthManager.IsUserAuthenticated(Session.SessionID, id))
                {
                    AuthManager.AuthenticateUser(Session.SessionID, id);
                }

                return(new RedirectResult("/board/" + id));
            }

            ViewBag.ErrorMessage = "Incorrect Password";

            return(View("BoardError"));
        }
示例#2
0
        public ActionResult NewBoard([Bind(Include = "Title")] BoardModel model)
        {
            if (ModelState.IsValid)
            {
                string id = BoardManager.CreateBoard(model);

                AuthManager.AuthenticateUser(Session.SessionID, id);

                return(new RedirectResult("/Board/" + id));
            }

            ViewBag.ErrorMessage = "The parameters for creating the board were incorrect";

            return(View("BoardError"));
        }
示例#3
0
        public async Task <ActionResult> Authenticate(Login login)
        {
            var user = await repository.GetUserByUsername(login.Username);

            if (AuthManager.AuthenticateUser(user, login.Password))
            {
                var token = JwtToken.GenerateToken(user);
                user.Password = "";

                return(Ok(new
                {
                    user = user,
                    token = token
                }));
            }

            return(BadRequest(new { message = "Username ou password inválidos !" }));
        }
示例#4
0
        public HttpResponseMessage AuthenticateUser([FromBody] User user)
        {
            if (user == null)
            {
                return(new HttpResponseMessage(HttpStatusCode.BadRequest));
            }

            //Username and password match
            string token = auth.AuthenticateUser(user);

            if (token == null)
            {
                return(new HttpResponseMessage(HttpStatusCode.Unauthorized));
            }

            Debug.WriteLine($"Successfully authenticated {user.Username}. Token: {token}");
            return(Request.CreateResponse(HttpStatusCode.OK, token));
        }
示例#5
0
        public IActionResult Authenticate(string userId, string password)
        {
            var authMgr = new AuthManager(_context);

            return(Ok(authMgr.AuthenticateUser(userId, password)));
        }