SEC_SQLI VARA Objects

SEC_SQLI or Secure SQL Internal VARA objects retrieve values from the Automation Engine database in a secure manner. The difference between SQLI (SQL Internal) and SEC_SQLI VARA objects is that with SEC_SQLI variables can always be inserted in the SQL statements regardless of the VAR_SECURITY_LEVEL setting in the UC_SYSTEM_SETTINGS - Systemwide Settings variable. To include variables in the SQL, you need to use bind parameters. In doing so, you cannot compose SQL statements, and this protects the database from the risk of an SQL injection.

As in SQLI VARA objects, the variable values in SEC_SQLI are directly retrieved from the Automation Engine database. This means that you do not need a database Agent.

For technical reasons, the system cannot check whether only SELECT commands are used in the variable's SQL.

This page includes the following:

Prerequisites

Defining SEC_SQLI VARA Objects

A SEC_SQLI VARA object definition is made up of the following pages:

Important Considerations

When using SEC_SQLI VARA objects take the following into account:

Variable Settings

Bind Parameters

You insert variable values within SQL statements in the Bind Parameters section. You can use variable or VARA object names as bind parameters with any values of your choice. If a variable or VARA object does not exist, no values are replaced but the variable or VARA object name is used. This can cause an error when the variable or VARA object is resolved.

You can enter the following type of variables and VARA objects:

Each line in the table represents one bind parameter.

The following field data types and input formats are supported for bind parameters:

Important!

Preview

To run a command, select it and click Preview. The statements are executed and their results displayed. The preview function serves to check for potential errors in the database statements (for example, it the data type of the VARA object and of the database do not match).

Example:

The following SQL statement is entered in the SQL Server Statement field. The values of the bind variables replace the "?" characters.

select ah_name as ObjectName,ah_timestamp1 as ActivationTime,ah_timestamp2 as StartTime,ah_timestamp4 as EndTime from ah

where ah_client = ?

and ah_otype = ?

and ah_deleteflag = ?

and ah_hostdst = ?

order by ah_name asc

See also: