Patent ID: 8321460

Claim:
A non-transitory computer readable medium having instructions stored thereon that, when executed by a processor, causes the processor to: in response to a first user selection from a user of one or more data items and a current privilege, execute a query to a database system to determine all data items of an application that the user is authorized to perform the current privilege on, wherein the first user selection comprises selected identities of the selected one or more data items, and the query is based on receiving a primary key for each selected data item, wherein the first user selection is received from the user interacting with a user interface; receive results of the query that includes the current privilege and the corresponding all authorized data items of the current privilege, wherein the all authorized data items include data items in addition to the user selected data items, and the results include identities of the additional data items in addition to the selected identities; store in a cache system the results of the query; wherein the current privilege comprises one or more actions that may be performed on the authorized data items by the user within the application based at least on a role of the user; receive a second user selection from the user, after the results of the query are stored in the cache system, for a second data item of the authorized data items of the current privilege, wherein the second data item is different from the one or more data items of the first user selection; in response to the second user selection, determining from the results of the query stored in the cache system that the current privilege can be performed on the second data item, wherein the determining comprises evaluating if the current privilege is authorized by comparing the second data item with all authorized data items stored in the cache system.