RU2676223C1 - Method for separating database objects based on privacy labels - Google Patents

Method for separating database objects based on privacy labels Download PDF

Info

Publication number
RU2676223C1
RU2676223C1 RU2017113370A RU2017113370A RU2676223C1 RU 2676223 C1 RU2676223 C1 RU 2676223C1 RU 2017113370 A RU2017113370 A RU 2017113370A RU 2017113370 A RU2017113370 A RU 2017113370A RU 2676223 C1 RU2676223 C1 RU 2676223C1
Authority
RU
Russia
Prior art keywords
privacy
database
labels
memory
storage device
Prior art date
Application number
RU2017113370A
Other languages
Russian (ru)
Inventor
Никита Сергеевич Печенкин
Андрей Александрович Коротченко
Андрей Александрович Медведев
Original Assignee
Общество с ограниченной ответственностью "Научно-технический центр РЕЛЭКС"
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Общество с ограниченной ответственностью "Научно-технический центр РЕЛЭКС" filed Critical Общество с ограниченной ответственностью "Научно-технический центр РЕЛЭКС"
Priority to RU2017113370A priority Critical patent/RU2676223C1/en
Application granted granted Critical
Publication of RU2676223C1 publication Critical patent/RU2676223C1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6227Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database where protection concerns the structure of data, e.g. records, types, queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled

Abstract

FIELD: data processing.SUBSTANCE: invention relates to data processing with an impact on the order of their location or on the content of the data being processed. Method for separating database objects based on privacy labels includes the steps of generating a privacy label for each object in the database, characterizing the level of confidentiality of the information contained in the object, form for each memory page, storing the database, the parameter, identifying the privacy group associated with the mentioned privacy labels, define a request to provide access to database objects containing data about the level of privacy, comparing the information received in the access request with the information contained in the said privacy labels, determine on the basis of the performed comparison of the privacy labels the corresponding one or more privacy groups and the associated memory pages of the storage device.EFFECT: technical result is an increase in the reliability of the DBMS and the prevention of unauthorized access to objects in the DB.9 cl, 3 dwg

Description

ОБЛАСТЬ ТЕХНИКИFIELD OF TECHNOLOGY

Техническое решение относится к области обработки цифровых данных с помощью электрических устройств, а именно рассматривает способ и устройство для обработки данных с воздействием на порядок их расположения или на содержание обрабатываемых данных - предлагается способ постраничного разделения записей базы данных на основе меток конфиденциальности, в котором каждому субъекту (пользователь, процесс) назначен один из уровней доступа, а каждому объекту (запись) - одна из меток конфиденциальности, метки конфиденциальности разделены на группы, каждой странице запоминающего устройства назначена группа конфиденциальности, каждая страница может хранить только те объекты (записи), которые относятся к назначенной группе конфиденциальности.The technical solution relates to the field of digital data processing using electrical devices, namely, it considers a method and device for processing data with an impact on the order of their location or on the content of the processed data - a method for page-by-page separation of database records based on privacy labels in which each subject (user, process) one of the access levels is assigned, and each object (record) is assigned one of the privacy labels, privacy labels are divided into groups nN, each page of the memory device is assigned a group of confidentiality, each page can store only those objects (entries) that pertain to the designated privacy group.

УРОВЕНЬ ТЕХНИКИBACKGROUND

Из уровня техники известны следующие системы управлениями базами данных, поддерживающие мандатное управление доступом на уровне строк: Oracle Database, PostgreSQL, Microsoft SQL Server.The following database management systems are known in the art that support credential row-level access control: Oracle Database, PostgreSQL, Microsoft SQL Server.

- Oracle Database или Oracle RDBMS - объектно-реляционная система управления базами данных компании Oracle, обеспечивающая многоуровневое управление доступа к данным в дополнении Oracle Label Security).- Oracle Database or Oracle RDBMS - an object-relational database management system from Oracle, providing multi-level data access control in the complement of Oracle Label Security).

- PostgreSQL - объектно-реляционная система управления базами данных с открытым исходным кодом, поддерживающая мандатное управление доступом с помощью загружаемого модуля sepgsql- PostgreSQL - an open-source object-relational database management system that supports mandatory access control using the sepgsql downloadable module

- Microsoft SQL Server - система управления реляционными базами данных (РСУБД), разработанная корпорацией Microsoft. Начиная с версии SQL Server 2016 эта СУБД обеспечивает безопасность на уровне строк- Microsoft SQL Server is a relational database management system (RDBMS) developed by Microsoft Corporation. Starting with SQL Server 2016, this DBMS provides row-level security.

Указанные выше продукты обеспечивают хранение и использование меток конфиденциальности для записей базы данных, хранят записи в страницах на запоминающем устройстве, но не предоставляют механизм распределения записей по страницам запоминающего устройства на основании значений меток.The above products provide storage and use of privacy labels for database entries, store entries in pages on a storage device, but do not provide a mechanism for distributing records across pages of a storage device based on the values of the labels.

Из уровня техники известно US 7539682 B2 «MultiIevel secure database», патентообладатель Microsoft Corporation, в котором, помимо всего прочего, описывается способ организации безопасности на уровне строк (Row level security (RLS)) и на уровне ячеек (cell level security (CLS)) при помощи представлений СУБД. Способ никак не рассматривает вопросы расположения объектов на запоминающем устройстве.US 7539682 B2 “MultiIevel secure database”, patent holder of Microsoft Corporation, which, among other things, describes how to organize security at the row level (RLS) and at the cell level (cell level security (CLS), is known from the prior art). ) using DBMS representations. The method does not consider issues of the location of objects on the storage device.

Из уровня техники известно US 7240046 B2 «Row-level security in a relational database management system», патентообладатель International Business Machines Corporation, в котором описывается система и метод контроля доступа к объектам базы данных на основе интегрированных в запись меток безопасности. Описанные система и метод не рассматривают вопросы размещения объектов на запоминающем устройстве.The prior art is US 7240046 B2 “Row-level security in a relational database management system”, the patent holder of International Business Machines Corporation, which describes a system and method for controlling access to database objects based on security labels integrated into the record. The described system and method do not address the issues of placing objects on a storage device.

СУЩНОСТЬ ТЕХНИЧЕСКОГО РЕШЕНИЯESSENCE OF TECHNICAL SOLUTION

Данное техническое решение направлено на устранение недостатков, присущих существующим аналогам.This technical solution is aimed at eliminating the disadvantages inherent in existing analogues.

Технический результат от использования данного технического решения заключается в повышении надежности СУБД и предотвращении несанкционированного доступа к объектам в БД.The technical result from the use of this technical solution is to increase the reliability of the DBMS and prevent unauthorized access to objects in the database.

Данный технический результат достигается за счет групповой обработки страницы запоминающего устройства на основании информации о назначенной группе конфиденциальности.This technical result is achieved due to the group processing of the page of the storage device based on information about the assigned privacy group.

В одном из предпочтительных вариантов реализации предложен способ проведения разделения объектов базы данных на основе меток конфиденциальности, характеризующийся тем, что: генерируют для каждого объекта в базе данных метку конфиденциальности, характеризующую уровень конфиденциальности информации, содержащейся в объекте; формируют для каждой страницы памяти запоминающего устройства, хранящего базу данных, параметр, идентифицирующий группу конфиденциальности, связанную с упомянутыми метками конфиденциальности, причем каждая страница памяти хранит только те объекты базы данных, которые относятся к назначенной группе конфиденциальности; определяют запрос на предоставление доступа к объектам базы данных, содержащий данные об уровне конфиденциальности; осуществляют сравнение информации, полученной в запросе на доступ, с информацией, содержащейся в упомянутых метках конфиденциальности; определяют на основании выполненного сравнения меток конфиденциальности соответствующую одну или более групп конфиденциальности и связанные с ними страницы памяти запоминающего устройства.In one of the preferred embodiments, a method is proposed for separating database objects based on confidentiality labels, characterized in that: generate a confidentiality label for each object in the database characterizing the level of confidentiality of information contained in the object; form for each memory page of the storage device storing the database, a parameter identifying the privacy group associated with the said privacy labels, and each memory page stores only those database objects that belong to the assigned privacy group; determine a request for providing access to database objects containing data on the level of confidentiality; comparing the information received in the access request with the information contained in the said privacy labels; determine, based on the comparison of the privacy labels, the corresponding one or more privacy groups and the associated memory pages of the storage device.

При операциях создания новых объектов базы данных производится поиск свободных страниц памяти запоминающего устройства с соответствующей группой конфиденциальности, если нет ни одной страницы памяти, удовлетворяющих этому условию, то выделяется пустая страница памяти, которой назначают необходимую группу, и в нее производят запись нового объекта базы данных.During the operations of creating new database objects, the free pages of the memory of the storage device with the corresponding privacy group are searched, if there are no pages of memory that satisfy this condition, then an empty memory page is allocated to which the necessary group is assigned, and a new database object is written to it. .

При операциях создания новых объектов базы данных производится поиск свободных страниц памяти запоминающего устройства с соответствующей группой конфиденциальности и в найденную страницу памяти запоминающего устройства производят запись нового объекта базы данных.During the operations of creating new database objects, the free pages of the memory of the storage device with the corresponding privacy group are searched and a new database object is recorded in the found memory page of the storage device.

При операциях изменения уже хранящегося в базе данных объекта определяют возможность изменения метки конфиденциальности данного объекта перед данной операцией.During operations, changes to an object already stored in the database determine the possibility of changing the confidentiality label of this object before this operation.

Состав групп конфиденциальности может адаптироваться с учетом накопленной статистики по частоте использования конкретных меток доступа.The composition of privacy groups can be adapted taking into account accumulated statistics on the frequency of use of specific access tags.

Каждая из групп конфиденциальности может состоять только из одного значения.Each privacy group can consist of only one value.

Операция записи уже хранящегося в базе данных объекта не является единичной операцией и осуществляется как последовательные операции удаления старого объекта и вставки нового с обновленными данными.The write operation of an object already stored in the database is not a single operation and is carried out as sequential operations of deleting the old object and inserting a new one with updated data.

Данное техническое решение может быть выполнено в виде системы проведения разделения объектов базы данных на основе меток конфиденциальности, содержащую: по крайней мере, одно устройство обработки команд; по крайней мере, одно устройство хранения данных; одну или более компьютерных программ, загружаемых в, по крайней мере, одно вышеупомянутое устройство хранения данных и выполняемых на, по крайне мере, одном из вышеупомянутых устройств обработки команд, при этом одна или более компьютерных программ содержат следующие инструкции: генерируют для каждого объекта в базе данных метку конфиденциальности, характеризующую уровень конфиденциальности информации, содержащейся в объекте; формируют для каждой страницы памяти запоминающего устройства, хранящего базу данных, параметр, идентифицирующий группу конфиденциальности, связанную с упомянутыми метками конфиденциальности, причем каждая страница памяти хранит только те объекты базы данных, которые относятся к назначенной группе конфиденциальности; определяют запрос на предоставление доступа к объектам базы данных, содержащий данные об уровне конфиденциальности; осуществляют сравнение информации, полученной в запросе на доступ, с информацией, содержащейся в упомянутых метках конфиденциальности; определяют на основании выполненного сравнения меток конфиденциальности соответствующую одну или более групп конфиденциальности и связанные с ними страницы памяти запоминающего устройства.This technical solution can be made in the form of a system for separating database objects based on confidentiality labels, containing: at least one command processing device; at least one data storage device; one or more computer programs loaded into at least one of the aforementioned data storage devices and executed on at least one of the aforementioned command processing devices, while one or more computer programs contain the following instructions: generate for each object in the database data confidentiality label, characterizing the level of confidentiality of information contained in the object; form for each memory page of the storage device storing the database, a parameter identifying the privacy group associated with the said privacy labels, and each memory page stores only those database objects that belong to the assigned privacy group; determine a request for providing access to database objects containing data on the level of confidentiality; comparing the information received in the access request with the information contained in the said privacy labels; determine, based on the comparison of the privacy labels, the corresponding one or more privacy groups and the associated memory pages of the storage device.

При операциях создания новых объектов базы данных производится поиск свободных страниц памяти запоминающего устройства с соответствующей группой конфиденциальности, если нет ни одной страницы памяти, удовлетворяющих этому условию, то выделяется пустая страница памяти, которой назначают необходимую группу, и в нее производят запись нового объекта базы данных.During the operations of creating new database objects, the free pages of the memory of the storage device with the corresponding privacy group are searched, if there are no pages of memory that satisfy this condition, then an empty memory page is allocated to which the necessary group is assigned, and a new database object is written to it. .

При операциях создания новых объектов базы данных производится поиск свободных страниц памяти запоминающего устройства с соответствующей группой конфиденциальности и в найденную страницу памяти запоминающего устройства производят запись нового объекта базы данных.During the operations of creating new database objects, the free pages of the memory of the storage device with the corresponding privacy group are searched and a new database object is recorded in the found memory page of the storage device.

При операциях изменения уже хранящегося в базе данных объекта определяют возможность изменения метки конфиденциальности данного объекта перед данной операцией.During operations, changes to an object already stored in the database determine the possibility of changing the confidentiality label of this object before this operation.

Состав групп конфиденциальности может адаптироваться с учетом накопленной статистики по частоте использования конкретных меток доступа.The composition of privacy groups can be adapted taking into account accumulated statistics on the frequency of use of specific access tags.

Каждая из групп конфиденциальности может состоять только из одного значения.Each privacy group can consist of only one value.

Операция записи уже хранящегося в базе данных объекта не является единичной операцией и осуществляется как последовательные операции удаления старого объекта и вставки нового с обновленными данными.The write operation of an object already stored in the database is not a single operation and is carried out as sequential operations of deleting the old object and inserting a new one with updated data.

КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙBRIEF DESCRIPTION OF THE DRAWINGS

Фиг. 1 - структура страниц на запоминающем устройстве с указанием групп и меток конфиденциальности;FIG. 1 - page structure on a storage device indicating groups and privacy labels;

Фиг. 2 - блок-схема, иллюстрирующая запись нового объекта с использованием способа проведения разделения объектов базы данных на основе меток конфиденциальности;FIG. 2 is a flowchart illustrating a recording of a new object using a method for separating database objects based on privacy labels;

Фиг. 3 - система для реализации способа проведения разделения объектов базы данных на основе меток конфиденциальности.FIG. 3 is a system for implementing a method for separating database objects based on privacy labels.

ПОДРОБНОЕ ОПИСАНИЕ ТЕХНИЧЕСКОГО РЕШЕНИЯDETAILED DESCRIPTION OF THE TECHNICAL SOLUTION

В данном устройстве под системой подразумевается компьютерная система, ЭВМ (электронно-вычислительная машина), ЧПУ (числовое программное управление), ПЛК (программируемый логический контроллер), компьютеризированные системы управления и любые другие устройства, способные выполнять заданную, четко определенную последовательность операций (действий, инструкций).In this device, a system means a computer system, a computer (electronic computer), CNC (numerical program control), PLC (programmable logic controller), computerized control systems, and any other devices that can perform a given, clearly defined sequence of operations (actions, instructions).

Под устройством обработки команд подразумевается электронный блок либо интегральная схема (микропроцессор), исполняющая машинные инструкции (программы).By a command processing device is meant an electronic unit or an integrated circuit (microprocessor) that executes machine instructions (programs).

Устройство обработки команд считывает и выполняет машинные инструкции (программы) с одного или более устройства хранения данных. В роли устройства хранения данных могут выступать, но, не ограничиваясь, жесткие диски (HDD), флеш-память, ПЗУ (постоянное запоминающее устройство), твердотельные накопители (SSD), оптические приводы.The command processing device reads and executes machine instructions (programs) from one or more data storage devices. Data storage devices may include, but are not limited to, hard disks (HDDs), flash memory, ROM (read only memory), solid state drives (SSDs), and optical drives.

Ниже будут рассмотрены некоторые термины, которые в дальнейшем будут использоваться при описании технического решения.Below we will consider some terms that will be used later in the description of the technical solution.

Программа - последовательность инструкций, предназначенных для исполнения устройством управления вычислительной машины или устройством обработки команд.A program is a sequence of instructions intended for execution by a control device of a computer or a device for processing commands.

База данных, database - представленная в объективной форме совокупность самостоятельных материалов (статей, расчетов, нормативных актов, судебных решений и иных подобных материалов), систематизированных таким образом, чтобы эти материалы могли быть найдены и обработаны с помощью электронной вычислительной машины (ЭВМ).Database, database - a set of independent materials (articles, calculations, normative acts, court decisions and other similar materials) presented in an objective form, systematized in such a way that these materials can be found and processed using an electronic computer (computer).

Система управления базами данных, Database Management System, СУБД, DBMS - совокупность программных и лингвистических средств общего или специального назначения, обеспечивающих управление созданием и использованием баз данных.Database management system, Database Management System, DBMS, DBMS - a set of software and linguistic tools for general or special purposes, providing management of the creation and use of databases.

Запоминающее устройство, ЗУ - устройство, предназначенное для записи и хранения данных.Storage device, memory - a device designed to record and store data.

Мандатное управление доступом, mandatory access control, MAC - разграничение доступа субъектов к объектам, основанное на назначении метки конфиденциальности для информации, содержащейся в объектах, и выдаче официальных разрешений (допуска) субъектам на обращение к информации такого уровня конфиденциальности. Также иногда переводится как принудительный контроль доступа.Mandatory access control, mandatory access control, MAC - differentiation of subjects' access to objects, based on the assignment of a confidentiality label for the information contained in the objects, and the issuance of official permissions (admission) to subjects to access information of this level of confidentiality. Also sometimes translated as forced access control.

Row Level Security или безопасность на уровне строк - механизм разграничения доступа к информации к БД, позволяющий ограничить доступ пользователей к отдельным строкам в таблицах.Row Level Security or row-level security is a mechanism for delimiting access to information to the database, which allows users to restrict access to individual rows in tables.

Multilevel security, защита многоуровневая - защита, обеспечивающая разграничение доступа субъектов с различными правами доступа к объектам различных уровней конфиденциальности.Multilevel security, multilevel protection - protection that provides access control for subjects with different access rights to objects of different privacy levels.

Запись - набор значений различных типов, предназначенный к хранению на ЗУ.Record - a set of values of various types, intended for storage on the memory.

Объект доступа (Объект, Access object) - единица информационного ресурса автоматизированной системы, доступ к которой регламентируется правилами разграничения доступа.Access object (Object, Access object) - a unit of information resource of an automated system, access to which is regulated by the rules of access control.

Субъект доступа (Субъект, Access subject) - лицо или процесс, действия которого регламентируются правилами разграничения доступа.Access subject (Subject, Access subject) - a person or process whose actions are governed by the rules of access control.

Страницы запоминающего устройства - блоки фиксированного размера, на которые делится память ЗУ.The pages of the storage device are blocks of a fixed size into which the memory of the memory is divided.

Данное техническое решение обеспечивает повышение надежности СУБД и предотвращение несанкционированного доступа к объектам в БД за счет групповой обработки страницы запоминающего устройства на основании информации о назначенной группе конфиденциальности.This technical solution provides an increase in the reliability of the DBMS and the prevention of unauthorized access to objects in the database due to the group processing of the page of the storage device based on information about the assigned privacy group.

Согласно предлагаемому техническому решению, способ проведения разделения объектов базы данных на основе меток конфиденциальности заключается в выполнении нижеперечисленных этапов.According to the proposed technical solution, the method for separating database objects based on confidentiality labels is to perform the following steps.

Сначала генерируют для каждого объекта в базе данных метку конфиденциальности, характеризующую уровень конфиденциальности информации, содержащейся в объекте. Метками снабжается непосредственно запись на диске/памяти, т.е. уровни доступа являются характеристикой этих данных. Метки могут быть представлены парой значений в диапазоне от 1 до 16: уровнем чтения данных (RAL) и уровнем доступа данных (WAL). Метка назначается при создании объекта и обновляется при его модификации на основании уровня доступа субъекта, который создал этот объект.First, a privacy label is generated for each object in the database, characterizing the level of confidentiality of the information contained in the object. The labels directly record on the disk / memory, i.e. access levels are a characteristic of this data. Labels can be represented by a pair of values in the range from 1 to 16: data reading level (RAL) and data access level (WAL). The label is assigned when the object is created and updated when it is modified based on the access level of the subject who created this object.

Представление метки доступа не является ограничивающим.The presentation of the access token is not restrictive.

Каждому субъекту (пользователю, процессу) назначают один из уровней доступа. Уровни доступа вводятся для проверки на уровне ядра СУБД прав субъектов на осуществление чтения/записи информации. Уровень доступа может быть представляен парой числовых значений в диапазоне от 1 до 16: уровенем доступа на чтение - RAL (Read Access Level) и уровенем доступа на запись - WAL (Write Access Level), которые отображают действующие ограничения на действия связанные с соответствующей операцией.Each subject (user, process) is assigned one of the access levels. Access levels are introduced to verify the rights of subjects to read / write information at the DBMS kernel level. The access level can be represented by a pair of numerical values in the range from 1 to 16: the read access level - RAL (Read Access Level) and the write access level - WAL (Write Access Level), which display the current restrictions on the actions associated with the corresponding operation.

Уровни доступа субъектам назначает субъект с соответствующей ролью (например администратор безопасности может назначать уровни доступа другим пользователям).Access levels for subjects are assigned by the subject with the corresponding role (for example, the security administrator can assign access levels to other users).

Представление уровня доступа не являются ограничивающими.The presentation of the access level is not restrictive.

Затем формируют для каждой страницы памяти запоминающего устройства, хранящего базу данных, параметр, идентифицирующий группу конфиденциальности, связанную с упомянутыми метками конфиденциальности, причем каждая страница памяти хранит только те объекты базы данных, которые относятся к назначенной группе конфиденциальности.Then, a parameter identifying a confidentiality group associated with said confidentiality labels is formed for each memory page of the storage device storing the database, and each memory page stores only those database objects that belong to the assigned privacy group.

Обращение субъекта к объекта регулируется СУБД в соответствии с моделью контроля и управления доступом, которая не является ограничивающей. Такой моделью, например, может быть модель Белла - Лападулы (Bell-LaPadula Model (BLP)).The subject's appeal to the object is regulated by the DBMS in accordance with the access control and management model, which is not restrictive. Such a model, for example, may be the Bell-LaPadula Model (BLP).

Выделение и освобождение страниц ЗУ регулируется СУБД в соответствии с правилами управления пространством (space management) ЗУ, которые не являются ограничивающими. Управление пространством может быть основано, например, на использовании порогового значения заполнения страниц.The allocation and release of memory pages is regulated by the DBMS in accordance with the space management rules of the memory, which are not limiting. Space management can be based, for example, on the use of a page fill threshold.

На Фиг. 1 изображены страницы (102, 103, 104) на запоминающем устройстве (101). Страницы 103 и 104 детализированы в 103' и 104' Страница 103' имеет назначенную группу конфиденциальности (105) позволяющую содержать объекты (107, 108) только с меткой s0 (105). Страница 104' имеет назначенную группу конфиденциальности (106) позволяющую содержать объекты (109, 110) только с метками s0 и s1 (106).In FIG. 1 shows pages (102, 103, 104) on a storage device (101). Pages 103 and 104 are detailed in 103 'and 104' Page 103 'has an assigned privacy group (105) that allows you to contain objects (107, 108) with only the label s0 (105). Page 104 'has an assigned privacy group (106) that allows you to contain objects (109, 110) with only labels s0 and s1 (106).

СУБД хранит для каждой страницы информацию о назначенной группе конфиденциальности.The DBMS stores information about the assigned privacy group for each page.

СУБД разделяет объекты только по фактически существующим группам конфиденциальности. Т.е. если в БД существуют, например, записи с WAL:RAL=5:5 и с WAL:RAL=10:10, то будут использоваться эти две группы. Когда появится запись с отличным значением метки - будет создана третья группа и т.д.DBMS divides objects only by actually existing privacy groups. Those. if, for example, records with WAL: RAL = 5: 5 and with WAL: RAL = 10: 10 exist in the database, then these two groups will be used. When a record appears with an excellent label value, a third group will be created, etc.

Разделение записей происходит на этапе их создания, поскольку, - в этот момент происходит назначение метки. Модификация записи рассматривается как пара операций: удаление старой и запись ново, т.е. метка (и группа) может поменяться.Separation of records occurs at the stage of their creation, because, - at this moment the label is assigned. A record modification is considered as a pair of operations: deleting the old and recording is new, i.e. the label (and group) may change.

Далее определяют запрос на предоставление доступа к объектам базы данных, содержащий данные об уровне конфиденциальности.Next, a request for providing access to database objects containing data on the level of confidentiality is determined.

После этого осуществляют сравнение информации, полученной в запросе на доступ, с информацией, содержащейся в упомянутых метках конфиденциальности.After that, the information obtained in the access request is compared with the information contained in the said privacy labels.

Все запросы субъекта на чтение или запись объекта СУБД проверяют на соответствие принятой модели доступа, и только в случае положительного решения о разрешении операции производят обращение к странице ЗУ.All requests of the subject to read or write the object of the DBMS are checked for compliance with the adopted access model, and only in the case of a positive decision on the permission of the operation do they refer to the page of the memory.

Для операций записи для новых объектов СУБД производит поиск свободных страниц с соответствующей группой конфиденциальности, если нет ни одной страницы удовлетворяющих этому условию, то выделяется пустая страница без записей, которой назначают необходимую группу. В найденную или выделенную страницу производят запись.For write operations for new objects, the DBMS searches for free pages with the corresponding confidentiality group, if there are no pages that satisfy this condition, then a blank page without records is selected, to which the necessary group is assigned. The found or highlighted page is recorded.

В качестве частного примера на Фиг. 2 приведена блок-схема, иллюстрирующая запись нового объекта. Принятие решения (203) о разрешении или запрете операции производится в соответствии с моделью контроля и управления доступом, а выделение новой страницы (207) - в соответствии с правилами управления пространством ЗУ.As a particular example in FIG. 2 is a flowchart illustrating a recording of a new object. Decision (203) on allowing or prohibiting an operation is made in accordance with the access control and management model, and a new page (207) is allocated in accordance with the rules for managing storage space.

Определяют на основании выполненного сравнения меток конфиденциальности соответствующую одну или более групп конфиденциальности и связанные с ними страницы памяти запоминающего устройства.Based on the comparison of the privacy labels, the corresponding one or more privacy groups and the associated memory pages of the storage device are determined.

Для операций записи уже хранящегося в БД объекта (включая его удаление) СУБД определяет, приведет ли операция к изменению метки конфиденциальности таким образом, что ее новое значение не будет соответствовать текущей группе конфиденциальности страницы, а также применяет правила управления пространством ЗУ. Если измененный объект не может располагаться на текущей странице, то поиск новой страницы производят образом, аналогичным поиску страницы для новых объектов, в найденную или выделенную страницу переносят запись.For write operations of an object already stored in the database (including its deletion), the DBMS determines whether the operation will change the privacy label so that its new value does not correspond to the current page privacy group, and also applies storage space management rules. If the changed object cannot be located on the current page, then a new page is searched in a manner similar to the page search for new objects, the record is transferred to the found or selected page.

Все дальнейшие результаты достигаются благодаря физически раздельному хранению записей с разными группами/метками доступа в разных страницах, что позволяет применить групповую обработку страниц ЗУ.All further results are achieved due to physically separate storage of records with different groups / access tags in different pages, which allows you to apply batch processing of memory pages.

Групповая обработка страниц запоминающего устройства, таким образом, включает:Batch processing of pages of the storage device thus includes:

- принятие решения о запрете или разрешения операций чтения или записи объекта на странице на основании группы конфиденциальности без необходимости чтения непосредственно записей, т.е. при запросе на чтение записи со страницы возможно предварительно прочесть заголовок страницы и если уровень читателя не соответствует группе, то прекратить операцию как заведомо невозможную;- making a decision on the prohibition or permission to read or write an object on a page based on a confidentiality group without the need to read directly the records, i.e. when requesting to read a record from a page, it is possible to read the page title first, and if the reader level does not correspond to the group, then stop the operation as it is obviously impossible;

- возможность ведения различных механизмов аудита для страниц с разными группами конфиденциальности; например, пусть в БД есть всего лишь две группы - «секретно» и «не секретно», тогда для страниц «не секретно» можно отключить аудит полностью.- the ability to conduct various audit mechanisms for pages with different privacy groups; for example, if there are only two groups in the database - “secret” and “not secret”, then for pages “not secret” you can disable audit completely.

- возможность хранить страницы с разными группами конфиденциальности на разных носителях, т.е., например, можно хранить более ценные группы страниц на более надежных и/или защищенных носителях.- the ability to store pages with different privacy groups on different media, i.e., for example, you can store more valuable groups of pages on more reliable and / or protected media.

- возможность использовать для страниц разных групп раздельные механизмы кеширования, т.е., например, можно отключить кеширование для страниц с ценными данными, убрав остаточные следы данных в ОЗУ.- the ability to use separate caching mechanisms for pages of different groups, i.e., for example, you can disable caching for pages with valuable data by removing residual traces of data in RAM.

Согласно Фиг. 3, примерная система для реализации технического решения включает в себя устройство обработки данных 300. Устройство обработки данных 300 может быть сконфигурировано как клиент, сервер, мобильное устройство или любое другое вычислительное устройство, которое взаимодействует с данными в системе совместной работы, основанной на сети. В самой базовой конфигурации устройство обработки данных 300, как правило, включает в себя, по меньшей мере, один процессор 301 и устройство хранения данных 302. В зависимости от точной конфигурации и типа вычислительного устройства системная память 302 может быть энергозависимой (например, оперативное запоминающее устройство (ОЗУ, RAM)), энергонезависимой (например, постоянное запоминающее устройство (ПЗУ, ROM)) или некоторой их комбинацией. Устройство хранения данных 302, как правило, включает в себя одну или более прикладных программ 303 и может включать в себя данные 304 программ. Настоящее техническое решение как способ, описанное в деталях выше, реализовано в прикладных программах 303.According to FIG. 3, an exemplary system for implementing a technical solution includes a data processing device 300. The data processing device 300 can be configured as a client, server, mobile device, or any other computing device that interacts with data in a network-based collaboration system. In the most basic configuration, the data processor 300 typically includes at least one processor 301 and a data storage device 302. Depending on the exact configuration and type of computing device, system memory 302 may be volatile (e.g., random access memory (RAM, RAM)), non-volatile (for example, read-only memory (ROM)), or some combination thereof. The data storage device 302 typically includes one or more application programs 303 and may include program data 304. The present technical solution as a method described in detail above is implemented in application programs 303.

Устройство обработки данных 300 может иметь дополнительные особенности или функциональные возможности. Например, устройство обработки данных 300 может также включать в себя дополнительные устройства хранения данных (съемные и несъемные), такие как, например, магнитные диски, оптические диски или лента. Такие дополнительные хранилища проиллюстрированы на Фиг. 3 посредством несъемного хранилища 307 и съемного хранилища 308. Компьютерные носители данных могут включать в себя энергозависимые и энергонезависимые, съемные и несъемные носители, реализованные любым способом или при помощи любой технологии для хранения информации. Устройство хранения данных 302, несъемное хранилище 307 и съемное хранилище 308 являются примерами компьютерных носителей данных. Компьютерные носители данных включают в себя, но не в ограничительном смысле, оперативное запоминающее устройство (ОЗУ), постоянное запоминающее устройство (ПЗУ), электрически стираемое программируемое ПЗУ (EEPROM), флэш-память или память, выполненную по другой технологии, ПЗУ на компакт-диске (CD-ROM), универсальные цифровые диски (DVD) или другие оптические запоминающие устройства, магнитные кассеты, магнитные ленты, хранилища на магнитных дисках или другие магнитные запоминающие устройства, или любую другую среду, которая может быть использована для хранения желаемой информации и к которой может получить доступ устройство обработки данных 300. Любой такой компьютерный носитель данных может быть частью устройства 300. Устройство обработки данных 300 может также включать в себя устройство(а) 305 ввода, такие как клавиатура, мышь, перо, устройство с речевым вводом, устройство сенсорного ввода, и так далее. Устройство (а) 306 вывода, такие как дисплей, динамики, принтер и тому подобное, также могут быть включены в состав устройства.The data processing device 300 may have additional features or functionality. For example, the data processing device 300 may also include additional data storage devices (removable and non-removable), such as, for example, magnetic disks, optical disks, or tape. Such additional storages are illustrated in FIG. 3 through non-removable storage 307 and removable storage 308. Computer storage media may include volatile and non-volatile, removable and non-removable media implemented in any way or using any technology for storing information. A storage device 302, a non-removable storage 307, and a removable storage 308 are examples of computer storage media. Computer storage media includes, but is not limited to, random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact ROM a disc (CD-ROM), universal digital disks (DVDs) or other optical storage devices, magnetic tapes, magnetic tapes, magnetic disk storage or other magnetic storage devices, or any other medium that may be used on to store the desired information and which can be accessed by the data processing device 300. Any such computer storage medium may be part of the device 300. The data processing device 300 may also include an input device (a) 305, such as a keyboard, mouse, pen , a voice input device, a touch input device, and so on. Output device (a) 306, such as a display, speakers, printer, and the like, may also be included in the device.

Устройство обработки данных 300 содержит коммуникационные соединения, которые позволяют устройству связываться с другими вычислительными устройствами, например по сети. Сети включают в себя локальные сети и глобальные сети наряду с другими большими масштабируемыми сетями, включая, но не в ограничительном смысле, корпоративные сети и экстрасети. Коммуникационное соединение является примером коммуникационной среды. Как правило, коммуникационная среда может быть реализована при помощи машиночитаемых инструкций, структур данных, программных модулей или других данных в модулированном информационном сигнале, таком как несущая волна, или в другом транспортном механизме, и включает в себя любую среду доставки информации. Термин «модулированный информационный сигнал» означает сигнал, одна или более из его характеристик изменены или установлены таким образом, чтобы закодировать информацию в этом сигнале. Для примера, но без ограничения, коммуникационные среды включают в себя проводные среды, такие как проводная сеть или прямое проводное соединение, и беспроводные среды, такие как акустические, радиочастотные, инфракрасные и другие беспроводные среды. Термин «машиночитаемый носитель», как употребляется в этом документе, включает в себя как носители данных, так и коммуникационные среды.The data processing device 300 includes communication connections that allow the device to communicate with other computing devices, for example over a network. Networks include local area networks and wide area networks along with other large, scalable networks, including, but not limited to, corporate networks and extranets. Communication connection is an example of a communication environment. Typically, a communication medium can be implemented using computer-readable instructions, data structures, program modules or other data in a modulated information signal, such as a carrier wave, or in another transport mechanism, and includes any information delivery medium. The term "modulated information signal" means a signal, one or more of its characteristics are changed or set in such a way as to encode information in this signal. By way of example, but without limitation, communication media include wired media such as a wired network or a direct wired connection, and wireless media such as acoustic, radio frequency, infrared, and other wireless media. The term “machine-readable medium”, as used herein, includes both storage media and communication media.

Claims (17)

1. Способ проведения разделения объектов базы данных на основе меток конфиденциальности, характеризующийся тем, что:1. The method of separating database objects based on confidentiality labels, characterized in that: • генерируют для каждого объекта в базе данных метку конфиденциальности, характеризующую уровень конфиденциальности информации, содержащейся в объекте;• generate for each object in the database a confidentiality label characterizing the level of confidentiality of the information contained in the object; • формируют для каждой страницы памяти запоминающего устройства, хранящего базу данных, параметр, идентифицирующий группу конфиденциальности, связанную с упомянутыми метками конфиденциальности, причем каждая страница памяти хранит только те объекты базы данных, которые относятся к назначенной группе конфиденциальности;• form for each memory page of the storage device storing the database, a parameter identifying the privacy group associated with the said privacy labels, and each memory page stores only those database objects that belong to the assigned privacy group; • определяют запрос на предоставление доступа к объектам базы данных, содержащий данные об уровне конфиденциальности;• define a request for providing access to database objects containing data on the level of confidentiality; • осуществляют сравнение информации, полученной в запросе на доступ, с информацией, содержащейся в упомянутых метках конфиденциальности;• compare the information received in the access request with the information contained in the said privacy labels; • определяют на основании выполненного сравнения меток конфиденциальности соответствующую одну или более групп конфиденциальности и связанные с ними страницы памяти запоминающего устройства.• determine, based on the comparison of the privacy labels, the corresponding one or more privacy groups and the associated memory pages of the storage device. 2. Способ по п. 1, характеризующийся тем, что при операциях создания новых объектов базы данных производится поиск свободных страниц памяти запоминающего устройства с соответствующей группой конфиденциальности, если нет ни одной страницы памяти, удовлетворяющей этому условию, то выделяется пустая страница памяти, которой назначают необходимую группу, и в нее производят запись нового объекта базы данных.2. The method according to p. 1, characterized in that during the operations of creating new database objects, a search is made for free pages of the memory of the storage device with the corresponding privacy group, if there is not a single page of memory that satisfies this condition, then an empty memory page is allocated, which is assigned necessary group, and a new database object is written to it. 3. Способ по п. 1, характеризующийся тем, что при операциях создания новых объектов базы данных производится поиск свободных страниц памяти запоминающего устройства с соответствующей группой конфиденциальности и в найденную страницу памяти запоминающего устройства производят запись нового объекта базы данных.3. The method according to claim 1, characterized in that during the operations of creating new database objects, a search is made for free pages of the memory of the storage device with the corresponding privacy group, and a new database object is recorded in the found memory page of the storage device. 4. Способ по п. 1, характеризующийся тем, что при операциях изменения уже хранящегося в базе данных объекта определяют возможность изменения метки конфиденциальности данного объекта перед данной операцией.4. The method according to claim 1, characterized in that during the operations of changing an object already stored in the database, it is possible to change the confidentiality label of this object before this operation. 5. Способ по п. 1, характеризующийся тем, что состав групп конфиденциальности может адаптироваться с учетом накопленной статистики по частоте использования конкретных меток доступа.5. The method according to claim 1, characterized in that the composition of the privacy groups can be adapted taking into account the accumulated statistics on the frequency of use of specific access tags. 6. Способ по п. 1, характеризующийся тем, что каждая из групп конфиденциальности может состоять только из одного значения.6. The method according to p. 1, characterized in that each of the privacy groups can consist of only one value. 7. Способ по п. 1, характеризующийся тем, что операция записи уже хранящегося в базе данных объекта не является единичной операцией и осуществляется как последовательные операции удаления старого объекта и вставки нового с обновленными данными.7. The method according to claim 1, characterized in that the write operation of an object already stored in the database is not a single operation and is performed as sequential operations of deleting an old object and inserting a new one with updated data. 8. Система проведения разделения объектов базы данных базы данных на основе меток конфиденциальности, содержащая:8. A system for separating database database objects based on confidentiality labels, comprising: • по крайней мере одно устройство обработки команд;• at least one command processing device; • по крайней мере одно устройство хранения данных;• at least one data storage device; • одну или более компьютерных программ, загружаемых в по крайней мере одно вышеупомянутое устройство хранения данных и выполняемых на по крайне мере одном из вышеупомянутых устройств обработки команд, при этом одна или более компьютерных программ содержат инструкции для выполнения способа по любому из пп. 1-7.• one or more computer programs loaded into at least one of the aforementioned data storage devices and executed on at least one of the aforementioned command processing devices, wherein one or more computer programs contain instructions for performing the method according to any one of claims. 1-7. 9. Машиночитаемый носитель данных, содержащий исполняемые одним или более процессором машиночитаемые инструкции, которые при их исполнении реализуют выполнение способа проведения разделения объектов базы данных базы данных на основе меток конфиденциальности по любому из пп. 1-7.9. A machine-readable storage medium containing machine-readable instructions executed by one or more processors, which, when executed, implement a method for separating database database objects based on privacy labels according to any one of paragraphs. 1-7.
RU2017113370A 2017-11-16 2017-11-16 Method for separating database objects based on privacy labels RU2676223C1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2017113370A RU2676223C1 (en) 2017-11-16 2017-11-16 Method for separating database objects based on privacy labels

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2017113370A RU2676223C1 (en) 2017-11-16 2017-11-16 Method for separating database objects based on privacy labels

Publications (1)

Publication Number Publication Date
RU2676223C1 true RU2676223C1 (en) 2018-12-26

Family

ID=64753646

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2017113370A RU2676223C1 (en) 2017-11-16 2017-11-16 Method for separating database objects based on privacy labels

Country Status (1)

Country Link
RU (1) RU2676223C1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2718736C1 (en) * 2019-09-26 2020-04-14 Публичное акционерное общество «Аэрофлот - российские авиалинии» Electronic document management system and electronic document management system control method

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090199273A1 (en) * 2008-02-01 2009-08-06 Oracle International Corporation Row-level security with expression data type
US7661141B2 (en) * 2004-02-11 2010-02-09 Microsoft Corporation Systems and methods that optimize row level database security
RU2477884C1 (en) * 2011-10-13 2013-03-20 Открытое акционерное общество "Концерн "Созвездие" Method of increasing data search rate using adaptive data media
US9514328B2 (en) * 2002-09-04 2016-12-06 International Business Machines Corporation Row-level security in a relational database management system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9514328B2 (en) * 2002-09-04 2016-12-06 International Business Machines Corporation Row-level security in a relational database management system
US7661141B2 (en) * 2004-02-11 2010-02-09 Microsoft Corporation Systems and methods that optimize row level database security
US20090199273A1 (en) * 2008-02-01 2009-08-06 Oracle International Corporation Row-level security with expression data type
RU2477884C1 (en) * 2011-10-13 2013-03-20 Открытое акционерное общество "Концерн "Созвездие" Method of increasing data search rate using adaptive data media

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2718736C1 (en) * 2019-09-26 2020-04-14 Публичное акционерное общество «Аэрофлот - российские авиалинии» Electronic document management system and electronic document management system control method

Similar Documents

Publication Publication Date Title
US10453076B2 (en) Cold storage for legal hold data
US9075851B2 (en) Method and apparatus for data retention in a storage system
US11604791B2 (en) Automatic resource ownership assignment systems and methods
US8386533B2 (en) Records management of database tables
US11138323B2 (en) Blockchain-based content management system, method, apparatus, and electronic device
US9940348B2 (en) Managing multiple locks for data set members in a data set index
US10013312B2 (en) Method and system for a safe archiving of data
CN110888837B (en) Object storage small file merging method and device
US20080276065A1 (en) Method of partitioning storage area of recording medium and recording medium using the method, and method of accessing recording medium and recording device using the method
CN107402821A (en) Access control method, device and the equipment of shared resource
US9177034B2 (en) Searchable data in an object storage system
US10313371B2 (en) System and method for controlling and monitoring access to data processing applications
US11275850B1 (en) Multi-faceted security framework for unstructured storage objects
US20060206484A1 (en) Method for preserving consistency between worm file attributes and information in management servers
RU2676223C1 (en) Method for separating database objects based on privacy labels
KR20120082176A (en) Data processing method of database management system and system thereof
CN112257097A (en) Partition authority management method based on distributed database
US20220222207A1 (en) Management computer and data management method by management computer
US20060069867A1 (en) Storage concept
US9898485B2 (en) Dynamic context-based data protection and distribution
CN110717153B (en) Authority verification method and device
CN112149070A (en) Authority control method and device
CN109241011B (en) Virtual machine file processing method and device
KR101567715B1 (en) storage managing device and method
US10445289B1 (en) Method and apparatus for automatic cleanup of disfavored content

Legal Events

Date Code Title Description
PD4A Correction of name of patent owner