Patent EA-003618-B1 (EA)
Title: System and method for selectively defining access to application features
Inventor: GERSHFIELD JAMES N
IPC: G06F21/62
Filed: 1999-07-15
Abstract: 1. In a computer system capable of running at least one application and maintaining a database, each application having at least one feature, a method for defining a user's access to said at least one feature comprising the steps of: assigning at least two attributes to said user, one of the attributes relating to the ability to access data and one of the attributes relating to the ability to manipulate accessed data; storing said at least two attributes in a first table in said database; running an application having at least two features in said computer system, one of the features relating to the ability to access data and one of the features relating to the ability to manipulate accessed data; retrieving from said first table two or more of said at least two attributes assigned to the user, one of the retrieved attributes relating to the ability to access data and one of the retrieved attributes relating to the ability to manipulate accessed data; and enforcing the retrieved attributes, whereby the user's access to data and ability to manipulate accessed data is defined in accordance with the retrieved attributes. 2. The method of claim 1 wherein more than one of the at least two features relate to the ability to access data. 3. The method of claim 1 comprising, prior to the running step, the additional steps of: assigning a parent value for each actual value of said at least two attributes, whereby one or more parent-child relationships are created; and storing said one or more parent-child value relationships in a second table in said database; said method further comprising, prior to the enforcing step, the additional steps of: retrieving said one or more parent-child value relationships from said second table; and determining whether any of the retrieved attributes may be discarded in accordance with the retrieved parent-child value relationships. 4. In a computer system capable of running at least one application and maintaining a database, each application having at least one feature, a method for defining a user's access to said at least one feature comprising the steps of: assigning at least two attributes to said user, one of the attributes relating to the ability to access data and one of the attributes relating to the ability to manipulate accessed data; storing said at least two attributes in a first table in said database; running an application having at least two features in said computer system, one of the features relating to the ability to access data and one of the features relating to the ability to manipulate accessed data; retrieving from said first table in the database two or more of said at least two attributes assigned to the user, one of the retrieved attributes relating to the ability to access data and one of the retrieved attributes relating to the ability to manipulate accessed data; providing the retrieved attributes to said running application; and enforcing the attributes, whereby the user's access to data and ability to manipulate accessed data is defined in accordance with the retrieved attributes. 5. The method of claim 4 further comprising, prior to the running step, the additional step of providing to said user a choice of one or more applications to run in accordance with the at least one attribute assigned to said user. 6. The method of claim 4 wherein more than one of the at least two features relate to the ability to access data. 7. The method of claim 4 comprising, prior to the running step, the additional steps of: assigning a parent value for each actual value of said at least two attributes; and storing parent-child value relationships in a second table in said database; said method further comprising, prior to the enforcing step, the additional steps of: retrieving said parent-child value relationships from said second table; and determining whether any of the retrieved attributes may be discarded in accordance with the retrieved parent-child value relationships. 8. In a computer system capable of running at least one application and maintaining a database, each application having at least one feature, a method for defining a user's access to said at least one feature comprising the steps of: assigning at least two attributes to a group, one of the attributes relating to the ability to access data and one of the attributes relating to the ability to manipulate accessed data; assigning said group to at least one user; storing said group in a table in said database; running an application having at least two features in said computer system, one of the features relating to the ability to access data and one of the features relating to the ability to manipulate accessed data; retrieving said group assigned to said user from said data table; and enforcing the retrieved attributes, whereby the user's access to (said at least one feature) data and ability to manipulate accessed data is defined in accordance with said at least (one attribute assigned to said group) two attributes assigned to said group retrieved from said data table. 9. The method of claim 8 wherein said at least two attributes assigned to said group defines access only to said application 10. A computer system comprising: means for running an application, said application having at least two features, one of the features relating to the ability to access data and one of the features relating to the ability to manipulate accessed data; means for maintaining a database; means for assigning at least two attributes to a user, one of the attributes relating to the ability to access data and one of the attributes relating to the ability to manipulate accessed data; means for storing said at least two attributes in a first table in said database; means for retrieving from said first table said at least two attributes assigned to the user; and means for enforcing the retrieved attributes, whereby the user's access to data and ability to manipulate accessed data is defined in accordance with said at least two attributes assigned to the user. 11. The system of claim 10 wherein more than one of the at least two features relate to the ability to access data. 12. The system of claim 10 further comprising: means for assigning a parent value for each actual value of said at least two attributes, whereby one or more parent-child relationships are created; means for storing said one or more parent-child value relationships in a second table in said database; means for retrieving said one or more parent-child value relationships from said second table; and means for determining whether any of the retrieved attributes may be discarded in accordance with said parent-child value relationships. 13. A computer system comprising: means for running an application, said application having at least two features, one of the features relating to the ability to access data and one of the features relating to the ability to manipulate accessed data; means for maintaining a database; means for assigning at least two attributes to a user, one of the attributes relating to the ability to access data and one of the attributes relating to the ability to manipulate accessed data; means for storing said at least two attributes in a first table in said database; means for retrieving from said first table said at least two attributes assigned to the user; means for providing the retrieved attributes to said application; and means for enforcing the attributes, whereby the user's access to data and ability to manipulate accessed data is defined in accordance with at least two attributes assigned to the user. 14. The system of claim 13 further comprising means for providing to said user a choice of one or more applications to run in accordance with said at least two attributes assigned to said user. 15. The system of claim 13 wherein more than one of the least two features relate to the ability to access data. 16. The system of claim 13 further comprising: means for assigning a parent value for each actual value of said at least two attributes; means for storing parent-child value relationships in a second table in said database; means for retrieving said parent-child value relationships from said second table; and means for determining whether any of the retrieved attributes may be discarded in accordance with the retrieved parent-child value relationships. 17. A computer system comprising: means for running an application, said application having at least two features, one of the features relating to the ability to access data and one of the features relating to the ability to manipulate accessed data; means for maintaining a database; means for assigning at least two attributes to a group, one of the attributes relating to the ability to access data and one of the attributes relating to the ability to manipulate accessed data; means for assigning said group to a user; means for storing said group in a table in said database; means for retrieving from said data table said group assigned to said user; and means for enforcing the retrieved attributes, whereby the user's access to data and ability to manipulate accessed data is defined in accordance with said at least two attributes assigned to said group retrieved from said data table. 18. The system of claim 17 wherein said at least (one attribute) two attributes assigned to said group defines access only to said application.