TL;DR: The model is formulated in two layers, one corresponding to a reference monitor that enforces mandatory security, and an extension of the standard relational model defining multilevel relations and formalizing policies for labeling new and derived data, data consistency, and discretionary security.
Abstract: A multilevel database is intended to provide the security needed for database systems that contain data at a variety of classifications and serve a set of users having different clearances. A formal security model for such a system is described. The model is formulated in two layers, one corresponding to a reference monitor that enforces mandatory security, and the second an extension of the standard relational model defining multilevel relations and formalizing policies for labeling new and derived data, data consistency, and discretionary security. The model also defines application-independent properties for entity integrity, referential integrity, and polyinstantiation integrity. >
TL;DR: A secure multilevel object oriented database management system which maintains data confidentiality and optimizes data integrity is presented in this paper, where all requests for database operations are mediated through an access validation monitor (AVM), which is responsible for performing the following duties: applying mandatory and discretionary access control rules for each request it services to ensure the request is allowable; constructing views of multi-level objects ensuring that the clearance level of the subject making the request dominates the classification of the data being requested; managing data update requests so as to allow polyinstantiation only upon receiving explicit requests from
Abstract: A secure multilevel object oriented database management system which maintains data confidentiality and optimizes data integrity. All requests for database operations are mediated through an access validation monitor (AVM). The AVM is responsible for performing the following duties: applying mandatory and discretionary access control rules for each request it services to ensure the request is allowable; constructing views of multilevel objects ensuring that the clearance level of the subject making the request dominates the classification of the data being requested; managing data update requests so as to allow polyinstantiation only upon receiving explicit requests from the subject, the explicit request being accomplished through an update to the associated semantic vector (Semantic vectors are employed to maintain data integrity); detecting erroneous polyinstantiation attempts and flagging such errors to the requesting subject; and managing the creation of new multilevel objects, and enforces entity integrity constraints. The AVM constructs the requesting subject's view of a multilevel object at a particular security level by computing a value for each property of the object. Each property value of the object if determined by inspecting the object's semantic vector. The semantic vector indicates, for each property of a multilevel object and at every populated level of said object, whether the property's value is dynamic (i.e., derived from an instantiation stored at the nearest populated dominated sensitivity level of the object where the semantic vector mark such property static).
TL;DR: The results help to bridge the gap between the existing theory of database constraints and database practice and settle various questions related to the maximal size of a family of non-redundant key sets.
Abstract: Keys allow a database management system to uniquely identify tuples in a database. Consequently, the class of keys is of great significance for almost all data processing tasks. In the relational model of data, keys have received considerable interest and are well understood. However, for efficient means of data processing most commercial relational database systems deviate from the relational model. For example, tuples may contain only partial information in the sense that they contain so-called null values to represent incomplete information. Codd's principle of entity integrity says that every tuple of every relation must not contain a null value on any attribute of the primary key. Therefore, a key over partial relations enforces both uniqueness and totality of tuples on the attributes of the key. On the basis of these two requirements, we study the resulting class of keys over relations that permit occurrences of Zaniolo's null value ‘no-information’. We show that the interaction of this class of keys is different from the interaction of the class of keys over total relations. We establish a finite ground axiomatization, and an algorithm for deciding the associated implication problem in linear time. Further, we characterize Armstrong relations for an arbitrarily given sets of keys; that is, we give a sufficient and necessary condition for a partial relation to satisfy a key precisely when it is implied by a given set of keys. We also establish an algorithm that computes an Armstrong relation for an arbitrarily given set of keys. While the problem of finding an Armstrong relation for a given key set is precisely exponential in general, our algorithm returns an Armstrong relation whose size is at most quadratic in the size of a minimal Armstrong relation. Finally, we settle various questions related to the maximal size of a family of non-redundant key sets. Our results help to bridge the gap between the existing theory of database constraints and database practice.
TL;DR: The relational schema may be implemented in a relational database management system (RDBMS) that has plenty of data and provides further capabilities such as sorting, arithmetic, grouping, and formatting.
Abstract: Publisher Summary
The relational schema may be implemented in a relational database management system (RDBMS) that has plenty of data. In the relational model of data, all facts are stored in tables (or relations). New tables may be formed from existing tables by applying operations in the relational algebra. The tables resulting from these operations may be named and stored, using the relational assignment. A relational system that supports all eight table operations of the relational algebra is said to be relationally complete. The two main relational languages are SQL and QBE, with SQL being the most important. Most SQL systems are relationally complete. A system that supports all aspects of the relational model, including domains and the two basic integrity rules (entity integrity and referential integrity), is said to be “fully relational.” The relational model of data itself is evolving. In addition to relational algebra operations, relational DBMSs provide further capabilities such as sorting, arithmetic, grouping, and formatting. Most systems also provide powerful tools for creating external interfaces, report writing, and security.
TL;DR: This work revisits the fundamental notion of a key in relational databases with NULLs, and investigates the notions of possible and certain keys, which are keys that hold in some or all possible worlds that can originate from an SQL table, respectively.
Abstract: Driven by the dominance of the relational model, the requirements of modern applications, and the veracity of data, we revisit the fundamental notion of a key in relational databases with NULLs. In SQL database systems primary key columns are NOT NULL by default. NULL columns may occur in unique constraints which only guarantee uniqueness for tuples which do not feature null markers in any of the columns involved, and therefore serve a different function than primary keys. We investigate the notions of possible and certain keys, which are keys that hold in some or all possible worlds that can originate from an SQL table, respectively. Possible keys coincide with the unique constraint of SQL, and thus provide a semantics for their syntactic definition in the SQL standard. Certain keys extend primary keys to include NULL columns, and thus form a sufficient and necessary condition to identify tuples uniquely, while primary keys are only sufficient for that purpose. In addition to basic characterization, axiomatization, and simple discovery approaches for possible and certain keys, we investigate the existence and construction of Armstrong tables, and describe an indexing scheme for enforcing certain keys. Our experiments show that certain keys with NULLs do occur in real-world databases, and that related computational problems can be solved efficiently. Certain keys are therefore semantically well-founded and able to maintain data quality in the form of Codd's entity integrity rule while handling the requirements of modern applications, that is, higher volumes of incomplete data from different formats.