Частина тексту файла (без зображень, графіків і формул):
МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА”
З В І Т
до лабораторної роботи №1
з курсу: «СИСТЕМИ ТА ЗАСОБИ АВТЕНТИФИКАЦІЇ»
МЕТА РОБОТИ: Освоїти на практиці реалізацію процедур ідентифікації, автентифікації, реєстрації і контролю за діями користувача відповідно до його повноважень; навчитися прийомам перетворення символьного рядка в числовий код і подальшому необоротному шифруванню паролів.
Завдання:
Розробити програму, що виконує ідентифікацію і автентифікацію при вході користувачів в систему. Передбачити наявність в системі 2-х типів користувачів: - адміністраторів з можливістю перегляду журналу аудиту; - звичайних користувачів, що не мають доступу до журналу аудиту.
Код програми
FORM 1
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace login
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
// TODO: данная строка кода позволяет загрузить данные в таблицу "new_Microsoft_Access_База_данныхDataSet.Таблица1". При необходимости она может быть перемещена или удалена.
this.таблица1TableAdapter.Fill(this.new_Microsoft_Access_База_данныхDataSet.Таблица1);
}
private void button1_Click(object sender, EventArgs e)
{
int k = 0;
mitka: while (k != 1)
{
if (textBox1.Text == "" || textBox2.Text == "")
{
MessageBox.Show("Введіть лоігн/пароль");
k = 1;
goto mitka;
}
for (int i = 0; i < dataGridView1.RowCount; i++)
{
for (int j = 0; j < dataGridView1.ColumnCount; j++)
{
if (dataGridView1.Rows[i].Cells[j].Value == null)
{
MessageBox.Show("Неправильний логін або пароль");
k = 1;
goto mitka;
}
if (textBox1.Text == dataGridView1.Rows[i].Cells[j].Value.ToString())
{
dataGridView1.CurrentCell = dataGridView1.Rows[i].Cells[j];
dataGridView1.FirstDisplayedScrollingRowIndex = i;
if (textBox2.Text == dataGridView1.Rows[i].Cells[j + 1].Value.ToString())
{
k = 1;
if (dataGridView1.Rows[i].Cells[j + 2].Value.ToString() == "0")
{
MessageBox.Show("Ви авторизувались як користувач","User");
}
if (dataGridView1.Rows[i].Cells[j + 2].Value.ToString() == "1")
{
Hide();
Form2 f2 = new Form2();
f2.Show();
}
goto mitka;
}
}
}
}
}
}
}
}
FORM 2
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace login
{
public partial class Form2 : Form
{
public Form2()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
Hide();
Form1 fi = new Form1();
fi.Show();
}
private void Form2_Load(object sender, EventArgs e)
{
// TODO: данная строка кода позволяет загрузить данные в таблицу "new_Microsoft_Access_База_данныхDataSet.Таблица1". При необходимости она может быть перемещена или удалена.
this.таблица1TableAdapter.Fill(this.new_Microsoft_Access_База_данныхDataSet.Таблица1);
}
private void button2_Click(object sender, EventArgs e)
{
таблица1TableAdapter.Update(new_Microsoft_Access_База_данныхDataSet);
new_Microsoft_Access_База_данныхDataSet.AcceptChanges();
}
}
}
Результат виконання
/
/