Ejemplo n.º 1
0
        /// <summary>
        /// Get key Authentication for case Licence Invalid.
        /// </summary>
        /// <param name="userName"></param>
        /// <param name="password"></param>
        /// <returns></returns>
        private string GetKeyAuthentication(string userName, string password)
        {
            var user = _userService.GetUserByUserNameAndPass(userName, password);

            if (user == null)
            {
                var claimException = new InvalidClaimsException("InvalidUserAndPasswordText")
                {
                    QuickspatchUserName = userName
                };
                throw claimException;
            }
            var passPhrase = ConfigurationManager.AppSettings["PassPhrase"];

            if (string.IsNullOrEmpty(passPhrase))
            {
                throw new Exception("Missing config PassPhrase");
            }
            var obj             = new { UserName = userName, Password = password };
            var data            = JsonConvert.SerializeObject(obj);
            var encryptData     = EncryptHelper.Encrypt(data, passPhrase);
            var bas64EncodeData = EncryptHelper.Base64Encode(encryptData);

            return(bas64EncodeData);
        }
Ejemplo n.º 2
0
        protected virtual void SetClientHeader(HttpClient client, string baseAddressRewrite = "")
        {
            if (!string.IsNullOrEmpty(baseAddressRewrite))
            {
                client.BaseAddress = new Uri(baseAddressRewrite);
            }
            else
            {
                client.BaseAddress = new Uri(WebApiUrl);
            }
            HttpCookie tokenClaimCookie = GetLastCookie(ClaimsDeclaration.TokenClaim);

            if (tokenClaimCookie == null)
            {
                var claimException = new InvalidClaimsException("InvalidAccessToken")
                {
                    QuickspatchUserName = string.Empty
                };
                throw claimException;
            }
            string token = tokenClaimCookie.Value;

            client.SetBearerToken(token);
            client.DefaultRequestHeaders.Accept.Clear();
            client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
        }
Ejemplo n.º 3
0
        private bool SignInToWebApi(FranchisseNameAndLicenseDto objFranchiseeAndLicense, string keyAuthentication)
        {
            //var claimExceptiona = new InvalidClaimsException("InvalidLicenseKey", keyAuthentication)
            //{
            //    QuickspatchUserName = string.Empty
            //};
            //throw claimExceptiona;
            // Get token
            if (ConstantValue.DeploymentMode == DeploymentMode.Camino)
            {
                return(true);
            }

            // Get token
            var objTokenStore = _webApiUserService.GetToken(objFranchiseeAndLicense);

            if (objTokenStore == null)
            {
                var claimException = new InvalidClaimsException("InvalidLicenseKey", keyAuthentication)
                {
                    QuickspatchUserName = string.Empty
                };
                throw claimException;
            }
            if (!string.IsNullOrEmpty(objTokenStore.AccessToken))
            {
                // Store token to cookie
                var accessTokenCookie = new HttpCookie(ClaimsDeclaration.TokenClaim, objTokenStore.AccessToken)
                {
                    HttpOnly = true,
                    Expires  = DateTime.UtcNow.AddDays(7)
                };
                if (HttpContext.Response.Cookies[ClaimsDeclaration.TokenClaim] != null)
                {
                    HttpContext.Response.Cookies.Remove(ClaimsDeclaration.TokenClaim);
                }
                HttpContext.Response.Cookies.Add(accessTokenCookie);
                var refreshTokenCookie = new HttpCookie(ClaimsDeclaration.RefreshTokenClaim, objTokenStore.RefreshToken)
                {
                    HttpOnly = true,
                    Expires  = DateTime.UtcNow.AddYears(1)
                };
                if (HttpContext.Response.Cookies[ClaimsDeclaration.RefreshTokenClaim] != null)
                {
                    HttpContext.Response.Cookies.Remove(ClaimsDeclaration.RefreshTokenClaim);
                }
                HttpContext.Response.Cookies.Add(refreshTokenCookie);
            }


            return(false);
        }
Ejemplo n.º 4
0
        public bool SignIn(string userName, string password, bool rememberMe, string deploymentMode)
        {
            // encript pasword

            var claims = ClaimsManager.CreateClaims(userName, password).ToList();
            var user   = ClaimsManager.ValidateQuickspatchUserLogin(claims);

            if (user == null || !user.IsQuickspatchUser)
            {
                var claimException = new InvalidClaimsException("InvalidUserAndPasswordText")
                {
                    QuickspatchUserName = (user != null) ? user.UserName : string.Empty
                };
                _diagnosticService.Error(SystemMessageLookup.GetMessage("InvalidUserAndPasswordText"));
                _diagnosticService.Error("UserName:"******"LoginWithInacticeUser");
                _diagnosticService.Error(SystemMessageLookup.GetMessage("LoginWithInacticeUser"));
                _diagnosticService.Error("UserName:"******"Camino" && user.Courier != null)
            {
                var claimException = new UserVisibleException("LoginWithCourierUser");
                _diagnosticService.Error(SystemMessageLookup.GetMessage("LoginWithCourierUser"));
                _diagnosticService.Error("UserName:" + userName);
                throw claimException;
            }

            var principal = CreatePrincipalFromClaimsAndUser(user, claims);

            FormAuthenticationService.SignIn(principal, true, principal.AuthToken,
                                             DateTime.UtcNow.AddMinutes(MaxSessionDuration));
            return(true);
        }