Requires (Query Keyword)
Usage
To specify that this query should be restricted to users or processes that have the specified privileges, use the following syntax:
Query name(formal_spec) As classname [ Requires = privilegelist ] { //implementation }
Where privilegelist is either a single privilege or a comma-separated list of privileges, enclosed in quotation marks. Each privilege takes the form resource:permission, where permission is Use, Read, or Write (or the single-letter abbreviations U, R, or W).
To specify multiple permissions for one resource, use the single-letter abbreviations.
Details
The user or process must have all of the privileges in the list of privileges in order to call the query. Calling the query without the specified privileges results in a <PROTECT> error.
If a query inherits the Requires keyword from a superclass, you can add to the list of required privileges by setting a new value for the keyword. You cannot remove required privileges in this manner.
Default
If you omit this keyword, no special privileges are required to call this query.