Extensible ACL Framework for Filesystem Access Control
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing filesystem access control systems are limited in their ability to support multiple access control list (ACL) types, leading to inflexibility and inefficiency in managing access permissions across different environments and applications.
Innovation Solution
An extensible ACL framework is implemented as a filesystem framework and kernel extensions, allowing for the support of various ACL types, decoupling ACL type definitions from the base kernel, and enabling dynamic loading of kernel extensions to manage access control based on defined ACL types.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If a single fixed ACL type is used in the filesystem, then the access control mechanism is simple and easy to implement, but the system lacks flexibility and adaptability across different environments and applications
Solution Approach 1:
The patent segments the ACL system into multiple independent ACL types (e.g., POSIX ACLs, NFSv4 ACLs, AIX ACLs) that can be selectively applied to different filesystem objects. Each ACL type is implemented as a separate module with its own access control logic, allowing the system to handle diverse access control requirements without requiring a completely custom solution for each environment.
Solution Approach 2:
The patent creates a universal ACL framework that can accommodate multiple ACL types through a common interface. The framework provides universal functionality for storing ACL indicators, retrieving ACL type definitions, and governing access, while allowing different ACL types to be registered and used as needed. This multi-functional approach eliminates the need for separate access control implementations for each environment.
2Adaptability or versatility
If ACL type definitions are hard-coded in the base kernel, then the access control system is stable and reliable, but the system cannot dynamically adapt to new ACL types without kernel reconfiguration
Solution Approach 1:
The patent implements dynamic loading of kernel extensions that define ACL types. Instead of hard-coding ACL type definitions in the base kernel, the system allows administrators to load and unload kernel modules that provide specific ACL type implementations. This dynamic approach enables the system to adapt to new ACL types while maintaining stability through proper module initialization and termination routines.
Solution Approach 2:
The patent introduces an intermediary framework layer between the base kernel and ACL type implementations. This framework mediates between the stable kernel core and the variable ACL type definitions, providing a stable interface for accessing filesystem objects while allowing the ACL type definitions to be dynamically loaded and unloaded without affecting the core kernel stability.
3Adaptability or versatility
If multiple ACL types are supported with custom definitions, then the system becomes highly flexible and adaptable, but the complexity of managing and interpreting different ACL types increases
Solution Approach 1:
The patent implements self-service functionality where the framework automatically retrieves the appropriate ACL type definition based on the ACL indicator stored with the filesystem object. When access is requested, the framework autonomously determines which ACL type applies and retrieves the corresponding definition from memory, eliminating the need for manual configuration or complex user-side logic to handle different ACL types.
Solution Approach 2:
The patent changes the parameter of ACL type identification by using an ACL indicator field stored with each filesystem object to specify which ACL type applies. This parameter change allows the system to switch between different ACL types by simply changing the indicator value, making the complex multi-ACL-type system easier to manage through a simple parameter mechanism rather than complex configuration logic.
Data Source
AI summary
Methods, systems, and products for governing access to objects on a filesystem. In one general embodiment, the method includes providing a framework in an operating system environment for support of a plurality of access control list (ACL) types, thereby enabling governing of access to objects on a filesystem according to an associated definition of an ACL type; and accepting definitions of ACL types. The associated definition may comprise a kernel extension.


