public async Task <User> FindUserPasswordAsync(string username, string password)
        {
            string Username = _compatibleFrontendEncryption.Decrypt(username);
            string Password = _compatibleFrontendEncryption.Decrypt(password);

            string passwordHash = _encryptionServices.EncryptString(Password, _AppSettings.EncryptionSettings.SecretPassword, _AppSettings.EncryptionSettings.Salt);
            User   result       = await _users.FirstOrDefaultAsync(x => (x.Username.ToUpper() == Username.ToUpper() || x.Email.ToUpper() == Username.ToUpper()) && x.Password == passwordHash);

            return(result);
        }
        private void SetCookie <T>(string key, T value, bool encrypt = true)
        {
            string str = Convert.ToString(value);

            if (encrypt)
            {
                str = _EncryptionServices.EncryptString(str, EncryptionKey, key);
            }
            _HttpContextAccessor.HttpContext.Response.Cookies.Append(key, str);
        }