예제 #1
0
 /// <summary>
 /// 验证用户名和密码
 /// </summary>
 /// <param name="username">用户名</param>
 /// <param name="password">密码</param>
 /// <returns>验证是否正确</returns>
 public Boolean validateUserNameAndPassword(string username, string password)
 {
     try
     {
         ICustomsCMS server    = XmlRpcInstance.getInstance();
         Usercheck   usercheck = new Usercheck();
         usercheck.username = username;
         usercheck.password = password;
         UsercheckRPCResponse usercheckRPCResponse = server.checkUser(usercheck);
         if (usercheckRPCResponse.username != "")
         {
             currentUser.UserName = usercheckRPCResponse.username;
             currentUser.Rolename = usercheckRPCResponse.rolename;
             return(true);
         }
         else
         {
             return(false);
         }
     }
     catch (Exception ex)
     {
         throw new Exception("错误:" + ex.Message);
     }
 }
예제 #2
0
        //public int RegisterNewUser(User user)
        //{
        //    int result = 0;
        //    if (context != null)
        //    {
        //        context.Usercredential.Add(user);

        //        result = context.SaveChanges();

        //    }
        //    return result;
        //}
        public int RegisterNewUser(Usercheck user)
        {
            int result = 0;

            if (context != null)
            {
                context.Usercheck.Add(user);

                result = context.SaveChanges();
            }
            return(result);
        }
예제 #3
0
        public string GenerateJSONWebToken(Usercheck userInfo)
        {
            var securityKey = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(_config["Jwt:Key"]));
            var credentials = new SigningCredentials(securityKey, SecurityAlgorithms.HmacSha256);

            var token = new JwtSecurityToken(_config["Jwt:Issuer"],
                                             _config["Jwt:Issuer"],
                                             null,
                                             expires: DateTime.Now.AddMinutes(30),
                                             signingCredentials: credentials);

            return(new JwtSecurityTokenHandler().WriteToken(token));
        }
        public IActionResult AddNewUser(Usercheck user)
        {
            using (var httpclient = new HttpClient())
            {
                httpclient.BaseAddress = new Uri("http://localhost:63479/");

                var postData = httpclient.PostAsJsonAsync <Usercheck>("api/Admin/RegisterNewUser", user);
                var res      = postData.Result;
                if (res.IsSuccessStatusCode)
                {
                    return(RedirectToAction("Index"));
                }
            }
            return(View(user));
        }
예제 #5
0
        public Usercheck AuthenticateUser(Usercheck users)
        {
            Usercheck user = null;

            List <Usercheck> alluser = _context.Usercheck.ToList();

            foreach (var v in alluser)
            {
                if (v.Id == users.Id && v.Password == users.Password)
                {
                    user = new Usercheck {
                        Id = users.Id, Password = users.Password
                    };
                    return(user);
                }
            }
            return(user);
        }
예제 #6
0
        string GenerateJSONWebToken(Usercheck user)
        {
            _log4net.Info("Generating Token");
            var securityKey = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(_config["Jwt:Key"]));
            var credentials = new SigningCredentials(securityKey, SecurityAlgorithms.HmacSha256);
            var claims      = new[]
            {
                new Claim(System.IdentityModel.Tokens.Jwt.JwtRegisteredClaimNames.Jti, Guid.NewGuid().ToString())
            };
            var token = new JwtSecurityToken(
                _config["Jwt: Issuer"],
                _config["Jwt: Issuer"], null,
                expires: DateTime.Now.AddMinutes(120),
                signingCredentials: credentials);

            var encodetoken = new JwtSecurityTokenHandler().WriteToken(token);

            return(encodetoken);
        }
예제 #7
0
        public IActionResult LoginResult([FromBody] Usercheck user)
        {
            _log4net.Info("Authentication initiated");
            if (!ModelState.IsValid)
            {
                return(BadRequest());
            }
            var existingUser = _context.Usercheck.Where(u => u.UserName == user.UserName).FirstOrDefault();

            if (existingUser == null)
            {
                return(NotFound());
            }
            if (existingUser.UserName == user.UserName && existingUser.Password == user.Password)
            {
                return(Ok(new { token = GenerateJSONWebToken(existingUser) }));
            }
            return(BadRequest());
        }
예제 #8
0
 public IActionResult RegisterNewUser([FromBody] Usercheck user)
 {
     _log4net.Info(" Http request RegisterNewUser Initiated");
     try
     {
         var i = adm.RegisterNewUser(user);
         if (i > 0)
         {
             return(Ok(i));
         }
         else
         {
             return(NoContent());
         }
     }
     catch (Exception)
     {
         return(BadRequest());
     }
 }
예제 #9
0
        public Boolean addRow(SystemManage systemManage)
        {
            try
            {
                ICustomsCMS server    = XmlRpcInstance.getInstance();
                Usercheck   usercheck = new Usercheck();
                usercheck.idcard   = systemManage.IdCard;
                usercheck.password = systemManage.Password;
                usercheck.realname = systemManage.Name;
                usercheck.username = systemManage.UserName;
                usercheck.rolename = systemManage.Type.ToString();

                DBRPCResponse dBRPCResponse = server.AddUser(usercheck);
                return(true);
            }
            catch (Exception ex)
            {
                throw new Exception("错误:" + ex.Message);
            }
        }
예제 #10
0
 public void RegisterNewUser()
 {
     try
     {
         var             res  = new Mock <admin>(context);
         AdminController h2   = new AdminController(res.Object);
         Usercheck       user = new Usercheck
         {
             UserName = "******",
             Password = "******"
         };
         //Book book = new Book { Book_Id = 10, Book_Name = "Biology", Author = "S. Chand", Language = "English", No_of_pages = 500, Price = 400 };
         var d1 = h2.RegisterNewUser(user);
         var R1 = d1 as OkObjectResult;
         Assert.AreEqual(200, R1.StatusCode);
     }
     catch (Exception e)
     {
         Assert.AreEqual("Object reference not set to an instance of an object.", e.Message);
     }
 }
예제 #11
0
        public async Task <IActionResult> LoginCheck(Usercheck user)
        {
            string token = "";

            using (var httpclient = new HttpClient())
            {
                httpclient.BaseAddress = new Uri("http://localhost:63582/");
                var postData = httpclient.PostAsJsonAsync <Usercheck>("api/TokenValidate/api/Token/LoginDetail", user);
                var res      = postData.Result;
                if (res.IsSuccessStatusCode)
                {
                    token = await res.Content.ReadAsStringAsync();

                    TempData["token"] = token;


                    return(RedirectToAction("Index", "User"));
                }
            }
            return(View("Login"));
        }
        private async void Button1_ClickAsync(object sender, EventArgs e)
        {
            String InsertUser = Username.Text;
            String InsertPasw = Password.Text;

            string   endpoint1;
            PostRest p       = new PostRest();
            Address  address = new Address();

            endpoint1 = address.Endpoint + "Users";
            var uri = new Uri(endpoint1);

            Usercheck usercheck = new  Usercheck();

            usercheck.UserName = InsertUser;
            usercheck.Password = InsertPasw;

            string output      = JsonConvert.SerializeObject(usercheck);
            var    StrRespPost = await PostRest.Post(output, uri, false);

            ValidateJson validatejson = new ValidateJson();
            bool         valid        = validatejson.IsValidJson(StrRespPost);

            if (valid)
            {
                try
                {
                    UserIdentity userident = JsonConvert.DeserializeObject <UserIdentity>(StrRespPost.ToString());

                    IsDoctor = userident.IsDoctor;
                    myId     = userident.PersonID;

                    SaveBool(IsDoctor);      //save in Shared Preferences if it is Doctor

                    if (IsDoctor)
                    {
                        var intent = new Intent(this, typeof(DemographicsDoctorActivity));
                        intent.PutExtra("myID", myId);
                        StartActivity(intent);
                    }
                    else
                    {
                        var intent = new Intent(this, typeof(DemographicActivity));
                        intent.PutExtra("myID", myId);
                        StartActivity(intent);
                    }
                }
                catch
                {
                    txt2.Text = "Unsuccessfull Login due to an error";
                }
            }
            else if (StrRespPost == "NotFound")
            {
                txt2.Text = "Error" + "\n" + "Unsuccessfull Login UserName or Password isn't valid ," + StrRespPost;
                txt2.SetTextColor(Color.Red);
                Password.Text = "";
            }
            else
            {
                txt2.Text = "An error occured :" + "\n" + StrRespPost;
                txt2.SetTextColor(Color.Red);
            }
        }