Ejemplo n.º 1
0
        public async void Login([FromForm] string username, [FromForm] string passwd)
        {
            var u = UserStore.Get(username).Result;

            if (u != null && u.CheckPasswd(passwd))
            {
                var token = await JwtBuilder.CreateJWTAsync(u, "KitchenAuth", "KicthenAuth", 1);

                HttpContext.Response.Headers.Add("auth", token);
                HttpContext.Response.StatusCode = (int)HttpStatusCode.Accepted;
            }
            else
            {
                HttpContext.Response.StatusCode = (int)HttpStatusCode.Unauthorized;
                HttpContext.Response.Headers.Remove("auth");
            }
        }
Ejemplo n.º 2
0
        public async Task <User> Creds([FromForm] string email = null, [FromForm] string passwd = null, [FromHeader] string token = null)
        {
            string user;

            if (token != null &&
                (user = JwtBuilder.UserJwtToken(token).Result) != null)
            {
                var u = UserStore.Get(user).Result;
                if (u == null)
                {
                    HttpContext.Response.StatusCode = (int)HttpStatusCode.Unauthorized;
                    HttpContext.Response.Headers.Remove("auth");
                    return(null);
                }
                if (email != null)
                {
                    if (UserStore.Exists(email).Result)
                    {
                        HttpContext.Response.StatusCode = (int)HttpStatusCode.Conflict;
                        return(null);
                    }

                    u._email = email;
                    token    = await JwtBuilder.CreateJWTAsync(u, "KitchenAuth", "KicthenAuth", 1);
                }

                if (passwd != null)
                {
                    u._passwd = passwd;
                }

                await UserStore.Add(u);

                HttpContext.Response.Headers.Add("auth", token);
                HttpContext.Response.StatusCode = (int)HttpStatusCode.OK;

                return(u);
            }

            HttpContext.Response.StatusCode = (int)HttpStatusCode.Unauthorized;
            HttpContext.Response.Headers.Remove("auth");
            return(null);
        }