Моделирование механизмов защиты компьютерной системы, страница 17

                //Global.АутОбъект[listBox1.SelectedIndex].mDostupa[Global.АутОбъект[listBox1.SelectedIndex].sizeMDostupa[0] - 1, 0] = textBox6.Text;

                for (int i = 1; i < Global.АутОбъект[listBox1.SelectedIndex].sizeMDostupa[0]; i++)

                {

                    dataGridView1.Rows[i - 1].HeaderCell.Value = Global.АутОбъект[listBox1.SelectedIndex].mDostupa[i, 0];

                }

                textBox6.Text = "";

            }

            else MessageBox.Show("Поле не может быть пустым!", "Ошибка!");

        }

        //Удаление объекта

        private void button11_Click(object sender, EventArgs e)

        {

            if (textBox6.Text != "")

            {

                string[,] bufM = new string[Global.АутОбъект[listBox1.SelectedIndex].sizeMDostupa[0], Global.АутОбъект[listBox1.SelectedIndex].sizeMDostupa[1] - 1];

                bool flag = true;

                for (int i = 0; i < Global.АутОбъект[listBox1.SelectedIndex].sizeMDostupa[0]; i++)

                    for (int j = 0; j < Global.АутОбъект[listBox1.SelectedIndex].sizeMDostupa[1] - 1; j++)

                    {

                        if (Global.АутОбъект[listBox1.SelectedIndex].mDostupa[i, j] != textBox7.Text)

                        {

                            bufM[i, j] = Global.АутОбъект[listBox1.SelectedIndex].mDostupa[i, j];

                        }

                        else

                            flag = false;

                        if (!flag)

                            bufM[i, j] = Global.АутОбъект[listBox1.SelectedIndex].mDostupa[i, j + 1];

                    }

                Global.АутОбъект[listBox1.SelectedIndex].mDostupa = new string[Global.АутОбъект[listBox1.SelectedIndex].sizeMDostupa[0], Global.АутОбъект[listBox1.SelectedIndex].sizeMDostupa[1] - 1];

                Global.АутОбъект[listBox1.SelectedIndex].sizeMDostupa[1]--;

                for (int i = 0; i < Global.АутОбъект[listBox1.SelectedIndex].sizeMDostupa[0]; i++)

                    for (int j = 0; j < Global.АутОбъект[listBox1.SelectedIndex].sizeMDostupa[1]; j++)

                        Global.АутОбъект[listBox1.SelectedIndex].mDostupa[i, j] = bufM[i, j];

                dataGridView1.RowCount = Global.АутОбъект[listBox1.SelectedIndex].sizeMDostupa[0] - 1;

                dataGridView1.ColumnCount = Global.АутОбъект[listBox1.SelectedIndex].sizeMDostupa[1] - 1;

                //Global.АутОбъект[listBox1.SelectedIndex].mDostupa[0, Global.АутОбъект[listBox1.SelectedIndex].sizeMDostupa[1] - 1] = textBox7.Text;

                for (int i = 1; i < Global.АутОбъект[listBox1.SelectedIndex].sizeMDostupa[1]; i++)

                {

                    dataGridView1.Columns[i - 1].HeaderCell.Value = Global.АутОбъект[listBox1.SelectedIndex].mDostupa[0, i];

                }

                textBox7.Text = "";

            }

            else MessageBox.Show("Поле не может быть пустым!", "Ошибка!");

        }

        #endregion

    }

}

ФормаВходаПользователя.cs

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

namespace TOKB_kursa4

{

    public partial class Форма_входа_пользователя : Form

    {

        public Форма_входа_пользователя()

        {

            InitializeComponent();

        }

        private void button1_Click(object sender, EventArgs e)

        {

            Application.Exit();

        }

    }

}


Заключение

В ходе курсового проектирования были разработаны модели механизмов защиты компьютерной системы (механизм идентификации и аутентификации (проверка, шифрование пароля, заполнение аутентифицирующего объекта, допуск пользователя в систему), формирование матрицы доступа, моделирование политики безопасности МБО (формальная модель Типизированная матрица доступа (удаление субъекта из матрицы прав доступа с учетом типов)), соответствующие алгоритмы и программы.