The system performs certain actions before and after executing a query.

Data source can be a database table or REST service. The system checks if user has view access for these data sources.
The system performs basic parameter validation such as
Type: String, Integer,etc.
Not null constraint: can it be null or not?
If user has view has access to a database table then the system checks if user has view access to all the columns. User may not have view access to some of them.
The system prepares SELECT query based on access control output and search parameters given by user.
The system executes the query.
If the system was configured to log this query action, it will log information such as execution time of the query and who executed this query.