Database Migration Preserving Row-Level Security
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Migrating database content with row-level security from a source database to a target database while preserving security access privileges is challenging, especially when the target database does not support row-level security features, as different vendors use varying methods for implementing access control, such as Multi-Level Security (MLS), which complicates the migration process.
Innovation Solution
A computer-implemented method and system that determines the type of the source database, creates a data structure for storing multi-level security attributes, and adds columns to the target database to represent these attributes, enabling the migration of source tables with row-level security to target databases without native support for such features, using a mapping table to manage multi-dimensional security attributes.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If row-level security features are implemented in the source database, then access control and data privacy are improved, but database complexity and migration difficulty increase
Solution Approach 1:
The patent extracts the security attributes from the database schema itself and stores them as separate metadata columns in the target database. This separates the security control logic from the core data structure, allowing the target database to maintain simplified schema while preserving row-level security functionality through application-layer filtering based on the extracted security metadata.
Solution Approach 2:
The patent introduces security metadata columns as intermediary structures between the source database's native security mechanism and the target database. These metadata columns act as a bridge, carrying security attribute information during migration and enabling security-aware applications to function on databases that don't natively support row-level security features.
2Reliability
If multi-level security attributes are migrated to the target database, then security access privileges are preserved, but migration complexity increases
Solution Approach 1:
The patent segments the multi-level security attributes into distinct, identifiable columns (e.g., security_level, clearance_level, classification_level) within the metadata structure. This segmentation allows the migration system to process and map each security dimension independently, reducing the complexity of handling complex multi-level security attributes during the migration process.
Solution Approach 2:
The patent transforms the native security attribute format of the source database into a standardized set of metadata column formats suitable for the target database. This parameter transformation involves converting different security attribute representations into a unified schema that can be consistently stored and queried, simplifying the migration of multi-level security attributes across different database systems.
3Reliability
If columns are added to represent multi-level security attributes, then access rights are preserved, but database schema complexity increases
Solution Approach 1:
The patent designs the security metadata columns to serve multiple functions: storing security attributes, enabling row-level filtering, and providing compatibility with both source and target database systems. These universal columns can be used for various security-related operations without requiring separate dedicated structures for each function, reducing overall schema complexity while preserving access rights.
Data Source
AI summary
In an approach for migrating database content with row-level security from a source database with row-level security to a target database without row-level security, a computer determines a type of the source database to be migrated, and upon determining that a source table of the source database is maintained using multi-level security attributes, creating a data structure for a source table of the source database for storing meta-data comprising the multi-level security attributes, determining all dimensions of the multi-level security attributes, adding columns to a target table of the target database relating to the source table, the added columns representing the multi-level security attributes of the source table.


