Exemplo n.º 1
0
        /// <summary>
        /// //Method is use to Validate User Credentials from Web Server Using WEB API
        /// </summary>
        /// <param name="Username"></param>
        /// <param name="Password"></param>
        public void ValidateUserandGetResponse(string Username, string Password)
        {
            try
            {
                UserLogin objvm = new UserLogin()
                {
                    Username = Username,
                    Password = EncryptandDecryptAES.Encrypt(Password)
                };

                ShareObject.Username = Username;
                using (var client = new WebClient())
                {
                    string ClientToken = ConfigurationManager.AppSettings["CLientIDToken"].ToString();
                    string keyValue    = ConfigurationManager.AppSettings["keyValue"].ToString();
                    string IVValue     = ConfigurationManager.AppSettings["IVValue"].ToString();


                    Uri URI = new Uri(ConfigurationManager.AppSettings["LoginURI"].ToString());
                    client.Headers.Add("Content-Type:application/json");
                    client.Headers.Add("APIKEY", GenerateToken.CreateToken(Username, ClientToken, DateTime.Now.Ticks));
                    client.Headers.Add("Accept:application/json");
                    client.UploadStringCompleted += new UploadStringCompletedEventHandler(Callback);

                    string SerializeData = JsonConvert.SerializeObject(objvm);

                    byte[] buffer = EncryptionDecryptorTripleDES.Encryption(SerializeData, keyValue, IVValue);
                    client.UploadStringAsync(URI, Convert.ToBase64String(buffer));
                }
            }
            catch (Exception)
            {
                throw;
            }
        }
        /// <summary>
        /// Method takes Product object as input for Pushing Data on Web Server
        /// </summary>
        /// <param name="Product"></param>
        public void DataPusher(Product Product)
        {
            try
            {
                using (var client = new WebClient())
                {
                    string ClientToken = ConfigurationManager.AppSettings["CLientIDToken"].ToString();
                    Uri    URI         = new Uri(ConfigurationManager.AppSettings["LiveURI"].ToString());
                    client.Headers.Add("Content-Type:application/json");
                    client.Headers.Add("Accept:application/json");

                    //Token APIKEY
                    client.Headers.Add("APIKEY",
                                       GenerateToken.CreateToken(ShareObject.Username, ClientToken, DateTime.Now.Ticks));
                    //Setting Call back method
                    client.UploadStringCompleted += new UploadStringCompletedEventHandler(Callback);

                    //key and IV
                    string keyValue = ConfigurationManager.AppSettings["keyValue"].ToString();
                    string IVValue  = ConfigurationManager.AppSettings["IVValue"].ToString();

                    //Serializing Object
                    string SerializeData = JsonConvert.SerializeObject(Product);
                    //Encrypting Serialized Object
                    byte[] buffer = EncryptionDecryptorTripleDES.Encryption(SerializeData, keyValue, IVValue);

                    //Converting bytes To Base64String and then Upload data
                    client.UploadStringAsync(URI, Convert.ToBase64String(buffer));
                }
            }
            catch (Exception)
            {
                throw;
            }
        }
Exemplo n.º 3
0
        public async Task <Object> Login([FromBody] LoginModel model)
        {
            var user = await userManager.FindByNameAsync(model.Email);

            if (user != null && await userManager.CheckPasswordAsync(user, model.Password))
            {
                string token = GenerateToken.CreateToken(options, user);
                return(Ok(new { token }));
            }
            return(BadRequest(new { message = "There is not valid email of password!" }));
        }
Exemplo n.º 4
0
 public void GetAllAccountDetails2()
 {
     using (var client = new WebClient()) //WebClient
     {
         // URI
         Uri URI = new Uri(ServiceURI + "api/employee/1");
         client.Headers.Add("Content-Type:application/json");
         // Generating token
         client.Headers.Add("APIKEY", GenerateToken.CreateToken(IPAddress, Token, DateTime.UtcNow.Ticks));
         client.Headers.Add("Accept:application/json");
         //Setting Callback
         client.DownloadStringCompleted += new DownloadStringCompletedEventHandler(DownloadString_Callback);
         client.DownloadString(URI);
     }
 }
        public HttpResponseMessage Authenticate(HttpRequestMessage request, [FromBody] string login, [FromBody] string password)
        {
            IGenerateToken credentials = new GenerateToken();
            User           user        = credentials.GetCredentials(login, password);

            if (user != null)
            {
                string token = credentials.CreateToken(user);
                return(request.CreateResponse(HttpStatusCode.OK, token));
            }
            else
            {
                return(request.CreateErrorResponse(HttpStatusCode.Unauthorized, "Não autorizado"));
            }
        }
Exemplo n.º 6
0
        public HttpResponseMessage UserLogin(LoginModel model)
        {
            // Check Model State is valid or not
            if (!ModelState.IsValid)
            {
                return(null);
            }
            using (var context = new WebApiEntities())
            {
                bool isValidUser = context.RegistrationTables.Any(user => user.Username.Equals(model.Username, StringComparison.OrdinalIgnoreCase) && user.Password == model.Password);
                // Check whether the user is valid or not
                if (isValidUser)
                {
                    // Run Query for user selection where username are matched
                    var query = from user in context.RegistrationTables where user.Username == model.Username select user;
                    //Get first Default query Value
                    RegistrationTable userDetails = query.FirstOrDefault();
                    //create object of Generate Token Class
                    GenerateToken generateToken = new GenerateToken();
                    // Return generatedToken through CreateToken Method
                    string generatedToken = generateToken.CreateToken(userDetails.Username, userDetails.Password, userDetails.UserID);

                    // Update token value in  Database
                    if (context.RegistrationTables.Any(user => user.UserID == userDetails.UserID))
                    {
                        RegistrationTable registration = new RegistrationTable();
                        registration.Token    = generatedToken;
                        registration.UserID   = userDetails.UserID;
                        registration.Username = userDetails.Username;
                        registration.Password = userDetails.Password;
                        // Add or Update Database context
                        context.RegistrationTables.AddOrUpdate(registration);
                        context.SaveChanges();
                    }
                    // Return generated token to client
                    return(Request.CreateResponse(HttpStatusCode.OK, generatedToken));
                }
                //If Usernama and Password are invalid then return invalid username
                ModelState.AddModelError("", "Invalid username and password or Token Expired -- Please Login Again");
                // return request status for create error response
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState));
            }
        }