Verifying dynamically generated operations on a data store
First Claim
1. One or more computer storage media having stored thereon a plurality of instructions that, when executed by one or more processors of a device, causes the one or more processors to perform acts comprising:
- set permissions on a data store to allow access to only an unrestricted portion of the data store, said data store defining a structured database accessible by a structured request, by one or more dynamically generated operations that are dynamically generated based on the request, the unrestricted portion of the data store excluding a first portion of the data store that should not be accessed by the one or more dynamically generated operations;
activate a lockset module to lock access to a pad of the data store that should not be accessed by the one or more dynamically generated operations, the part of the data store being included in the portion of the data store;
check, after the one or more dynamically generated operations are performed, whether say unexpected changes were made to the unrestricted portion of the data store, wherein unexpected changes include changes beyond those required for each operation performed; and
communicate, upon making a determination, an indication of whether unexpected changes were made to the unrestricted portion of the data store, wherein the communication occurs with at least an application,wherein the plurality of instructions further cause the one or more processors to;
capture a first snapshot of part of the unrestricted portion before the one or more operations are performed, andcapture a second snapshot of the part of the unrestricted portion after the one or more operations are performed;
check whether any unexpected changes were made to the unrestricted portion by comparing the first snapshot and the second snapshot; and
determine that unexpected changes were made to the unrestricted portion if the first snapshot and the second snapshot are not the same.
2 Assignments
0 Petitions
Accused Products
Abstract
Verifying dynamically generated operations on a data store includes carrying out setup actions for access to the data store, the setup actions being based at least in part on a request for which the dynamically generated operations will be generated. The carrying out of setup actions includes permissions being set for portions of the data store to establish a restricted portion of the data store and an unrestricted portion of the data store, as well as using one or more additional techniques to check whether any unexpected changes were made to the unrestricted portion or to lock access to parts of the unrestricted portion. After the dynamically generated operations are performed, a verification is made that no unexpected work was performed by the dynamically generated operations. If unexpected work was performed then the operations are determined to be not correct for the request.
-
Citations
29 Claims
-
1. One or more computer storage media having stored thereon a plurality of instructions that, when executed by one or more processors of a device, causes the one or more processors to perform acts comprising:
-
set permissions on a data store to allow access to only an unrestricted portion of the data store, said data store defining a structured database accessible by a structured request, by one or more dynamically generated operations that are dynamically generated based on the request, the unrestricted portion of the data store excluding a first portion of the data store that should not be accessed by the one or more dynamically generated operations; activate a lockset module to lock access to a pad of the data store that should not be accessed by the one or more dynamically generated operations, the part of the data store being included in the portion of the data store; check, after the one or more dynamically generated operations are performed, whether say unexpected changes were made to the unrestricted portion of the data store, wherein unexpected changes include changes beyond those required for each operation performed; and communicate, upon making a determination, an indication of whether unexpected changes were made to the unrestricted portion of the data store, wherein the communication occurs with at least an application, wherein the plurality of instructions further cause the one or more processors to; capture a first snapshot of part of the unrestricted portion before the one or more operations are performed, and capture a second snapshot of the part of the unrestricted portion after the one or more operations are performed; check whether any unexpected changes were made to the unrestricted portion by comparing the first snapshot and the second snapshot; and determine that unexpected changes were made to the unrestricted portion if the first snapshot and the second snapshot are not the same. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. One or more computer storage media having stored thereon a plurality of instructions that, when executed by one or more processors of a device, causes the one or more processors to perform acts comprising:
-
carrying out set up actions for access to a data store, said data store defining a structured database accessible by a structured request, the setup actions being based at least in part on the request for which dynamically generated operations will be generated, the carrying out comprising; setting permissions for onions of the data store to establish a restricted portion of the data store and an unrestricted portion of the data store; activating a module to lock access to a art of a restricted portion of the data store; locking access to a part of the data store that should not be accessed by the one or more dynamically generated operations, the part of the data store being included in the unrestricted portion, wherein to lock access to the part of the data store is to begin one or more update transactions to the data in the locked part of the unrestricted portion of the data store, but not complete the one or more update transactions until after the one or more dynamically generated operations are performed; verifying, after the dynamically generated operations are performed, that no unexpected work was performed by the dynamically generated operations, wherein unexpected work includes the dynamically generated operations making unexpected changes to the unrestricted portions of the data store, the dynamically generated operations attempting to access a restricted portion of the data store, or the dynamically generated operations making unexpected changes to the unrestricted portions of the data store and attempting to access a restricted portion of the data store; determining, if no unexpected work was performed by the dynamically generated operations, that the dynamically generated operations are correct for the structured request; determining, if any unexpected work was performed by the dynamically generated operations, that the dynamically generated operations are not correct for the structured request; and returning, to an application, results of whether the dynamically generated operations on the data store were correct. - View Dependent Claims (10, 11, 12)
-
-
13. A method of determining whether dynamically generated operations on a data store are correct, said data store defining a structured database accessible by a structured request, the method comprising:
-
carrying out setup actions for access to the data store, the setup actions being based at least in part on the request for which the dynamically generated operations will be generated, the carrying out comprising; setting permissions for portions of the data store to establish a restricted portion of the data store and an unrestricted portion of the data store; activating a lockset module to lock access to a part of the restricted portion of the data store; locking access to part of the unrestricted portion; allowing a subsequent cheek of whether any unexpected changes were made to the unrestricted portion, wherein unexpected changes include changes beyond those required for the dynamically generated operation performed; verifying, after the dynamically generated operations are performed, that no unexpected work was performed by the dynamically generated operations, wherein unexpected work includes the dynamically generated operations making unexpected changes to the unrestricted portions of the data store, the dynamically generated operations attempting to access a restricted portion of the data store, or the dynamically generated operations making unexpected changes to the unrestricted portions of the data store and attempting to access a restricted portion of the data store; determining if no unexpected work was performed by the dynamically generated operations, that the dynamically generated operations are correct for the request; determining;
if any unexpected work was performed by the dynamically generated operations, that the dynamically generated operations are not correct for the request;returning, to an application, results of whether the dynamically generated operations on the data store were correct; and wherein the allowing a subsequent check of whether any unexpected changes were made to the unrestricted portion comprises; capturing a first snapshot of a first pat of the unrestricted portion before the dynamically generated operations are performed; capturing a second snapshot of the first part of the unrestricted portion after the dynamically generated operations are performed; comparing the first snapshot and the second snapshot; determining that unexpected work was performed by the dynamically generated operations if the first snapshot and the second snapshot are not the same; and determining that no unexpected work was performed by the dynamically generated operations if the first snapshot and the second snapshot are the same. - View Dependent Claims (14, 15, 16, 17, 18, 19)
-
-
20. A system comprising:
-
a processor; a memory coupled to the processor, wherein the memory includes; a snapshot module to check, after one or more dynamically generated operations, one or more dynamically generated operations being dynamically generated based on a structured request, on a data store, said data store defining a structured database accessible by the structured request, are performed, whether any unexpected changes were made to a portion of the data store wherein unexpected changes include changes beyond those required for the operation performed, wherein the snapshot module to check whether any unexpected changes were made to the portion is to; capture a first snapshot of a first pert of the portion before the one or more operations are performed; capture a second snapshot of the first part of the portion after the one or more operations are performed; compare the first snapshot and the second snapshot; determine that unexpected changes were made to the portion if the first snapshot and the second snapshot are not the same; and determine that no unexpected changes were made to the portion if the first snapshot and the second snapshot are the same; and a lockset module to lock access to a pert of the data store that should not be accessed by the one or more dynamically generated operations, the part of the data store being included in the portion of the data store. - View Dependent Claims (21, 22, 23, 24, 25)
-
-
26. A system comprising:
-
a processor; a memory coupled to the processor; means for carrying out setup actions for access to a data store, said data store defining a structured database accessible by a structured request, the setup actions being based at least in part on the request for which dynamically generated operations will be generated, the means for carrying out comprising; means for setting permissions for portions of the data store to establish a restricted portion of the data store and an unrestricted portion of the data store; means for locking access to art of the restricted onion of the data store; means for locking access to part of the unrestricted portion or means for allowing a subsequent check of whether any unexpected changes were made to the unrestricted portion, wherein unexpected changes include changes beyond those required for the operation performed; means for verifying, after the dynamically generated operations are performed, that no unexpected work was performed by the dynamically generated operations, wherein unexpected work includes the dynamically generated operations making unexpected changes to the unrestricted portions of the data store, the dynamically generated operations attempting to access a restricted portion of the data store, or the dynamically generated operations making unexpected changes to the unrestricted portions of the data store and attempting to access a restricted portion of the data store; means for determining, if no unexpected work was performed by the dynamically generated operations, that the dynamically generated operations are correct for the request; means for determining, if any unexpected work was performed by the dynamically generated operations, that the dynamically generated operations are not correct for the request; means for returning to an application, results of whether the dynamically generated operations on the data store were correct; and wherein the means for locking access to part of the unrestricted portion comprises;
means for beginning one or more update transactions to the data in the locked part of the unrestricted portion of the data store, but not completing the one or more update transactions until after the dynamically generated operations are performed. - View Dependent Claims (27, 28, 29)
-
Specification