Ejemplo n.º 1
0
        public static CheckTokenModel CheckToken(User userModel, string action)
        {
            try
            {
                var secret = TwoStepsAuthenticator.Authenticator.GenerateKey();
                var data   = new CheckTokenModel
                {
                    Secret    = secret,
                    NewSecret = null
                };
                var newSecret = new ActionCode();

                if (!string.IsNullOrEmpty(userModel.SecretAuthToken))
                {
                    newSecret = ActionCode.FromJson(userModel.SecretAuthToken);
                }

                switch (action)
                {
                case ActionLog.TWOFA_ENABLE:
                    newSecret.TwofaEnable = secret;
                    break;

                case ActionLog.CUSTOM_TWOFA:
                    newSecret.CustomTwofa = secret;
                    break;

                case ActionLog.UPDATE_OPTION_VETIFY:
                    newSecret.UpdateOptionVerification = secret;
                    break;

                case ActionLog.API_ACCESS_ADD:
                    newSecret.ApiAccessAdd = secret;
                    break;

                case ActionLog.API_ACCESS_EDIT:
                    newSecret.ApiAccessEdit = secret;
                    break;

                case ActionLog.API_ACCESS_DELETE:
                    newSecret.ApiAccessDelete = secret;
                    break;

                case ActionLog.API_ACCESS_STATUS:
                    newSecret.ApiAccessStatus = secret;
                    break;

                case ActionLog.SEND_TRANSACTION:
                    newSecret.SendTransaction = secret;
                    break;

                case ActionLog.TWOFA_DISABLE:
                    newSecret.TwofaDisable = secret;
                    break;

                case ActionLog.LOCK_SCREEN:
                    newSecret.LockScreen = secret;
                    break;
                }

                data.NewSecret = ActionCode.ToJson(newSecret);
                return(data);
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
                return(null);
            }
        }