Пример #1
0
        public void BDGenerateKey(string username)
        {
            DialogResult dialogResult1 = MessageBox.Show("При генерации нового ключа необходимо сменить пароль. Все документы будут удалены.\nВы уверены, что хотите сгенерировать новый ключ?", "Генерация ключа", MessageBoxButtons.YesNo);

            if (dialogResult1 == DialogResult.No)
            {
                return;
            }

            Crypt  crypt = new Crypt();
            string key   = crypt.GenerateKey();

            DB db = new DB();

            SQLiteCommand command = new SQLiteCommand("SELECT password FROM users WHERE login = @uL", db.getConnection());

            command.Parameters.AddWithValue("@uL", username).Size = 50;

            SQLiteCommand command1 = new SQLiteCommand($"UPDATE users SET cryptokey=@uK WHERE login = @uL", db.getConnection());

            command1.Parameters.AddWithValue("@uK", key).Size      = crypt.keyLength;
            command1.Parameters.AddWithValue("@uL", username).Size = 50;

            SQLiteCommand command2 = new SQLiteCommand($"DELETE FROM {username}", db.getConnection());

            db.openConnection();

            string result = command.ExecuteScalar().ToString();

            command2.ExecuteNonQuery();

            if (command1.ExecuteNonQuery() == 1)
            {
                MessageBox.Show($"Новый ключ для пользователя {username} успешно сгенерирован");
            }

            else
            {
                MessageBox.Show("Произошла ошибка при генерации ключа");
            }

            db.closeConnection();

            PassChangeNoConfim passChangeNoConfim = new PassChangeNoConfim();

            passChangeNoConfim.username = username;

            DialogResult dr = new DialogResult();

            db.openConnection();

            while (dr != DialogResult.OK || command.ExecuteScalar().ToString() == result)
            {
                dr = passChangeNoConfim.ShowDialog();
            }

            db.closeConnection();
        }
Пример #2
0
        private void ibEdit_Click(object sender, EventArgs e)
        {
            if (lbUsers.SelectedItem == null)
            {
                return;
            }

            PassChangeNoConfim passChangeNoConfim = new PassChangeNoConfim();

            passChangeNoConfim.username = Convert.ToString(lbUsers.SelectedItem);

            DialogResult dr = new DialogResult();

            dr = passChangeNoConfim.ShowDialog();

            if (dr == DialogResult.OK)
            {
                SetUsers();
            }
        }