SEC_SQLI-VARA-Objekte

SEC_SQLI- oder Secure SQL Internal VARA-Objekte beziehen Werte auf sichere Weise aus der Automation Engine-Datenbank. Der Unterschied zwischen SQLI- (SQL Internal) und SEC_SQLI-VARA-Objekten ist, dass SEC_SQLI-Variablen immer in SQL-Statements eingefügt werden können, unabhängig von der Einstellung VAR_SECURITY_LEVEL in der Variable UC_SYSTEM_SETTINGS - Systemweite Einstellungen. Um Variablen in das SQL einzubinden, sind sogenannte Bind-Parameter zu verwenden. Dabei ist es nicht möglich, SQL-Statements zusammenzusetzen, wodurch eine Gefährdung der Datenbank durch SQL-Injection ausgeschlossen wird.

Wie SQLI-VARA-Objekten werden Variablenwerte in SEC_SQLI direkt aus der Automation Engine-Datenbank bezogen. Ein Datenbank-Agent ist somit nicht erforderlich.

Aus technischen Gründen kann das System nicht prüfen, ob nur SELECT-Kommandos im SQL der Variable verwendet werden.

Dieses Thema beinhaltet Folgendes:

Vorbedingungen

SEC_SQLI-VARA-Objekte definieren

Die Definition eines SEC_SQLI-VARA-Objekts besteht aus den folgenden Seiten:

Wichtige Hinweise

Bei der Verwendung von SEC_SQLI-VARA-Objekten ist Folgendes zu beachten:

Variablen-Einstellungen

Bind-Parameter

Sie fügen Variablenwerte innerhalb von SQL-Statements im Abschnitt Bind-Parameter ein. Sie können Variablennamen oder VARA-Objektnamen als Bind-Parameter mit beliebigen Werte angeben. Wenn eine Variable oder ein VARA-Objekt nicht vorhanden ist, werden keine Werte ersetzt, sondern derVariablen- oder VARA-Objektname wird verwendet. Dies kann zu einem Fehler führen, wenn die Variable oder das VARA-Objekt aufgelöst wird.

Sie können folgende Arten von Variablen und VARA-Objekten eingeben:

Jede Zeile in der Tabelle steht für einen Bind-Parameter.

Für Bind-Parameter werden folgende Feld-Datentypen und Eingabeformate unterstützt:

Wichtig!

Vorschau

Um ein Kommando auszuführen, wählen Sie dieses aus und klicken Sie auf Vorschau. Die Statements werden ausgeführt und die jeweiligen Ergebnisse angezeigt. Die Vorschaufunktion dient der Überprüfung auf mögliche Fehler in den Datenbank-Statements (z. B. ob der Datentyp des VARA-Objekts und der Datenbank nicht übereinstimmen).

Beispiel:

Im Beispiel oben wird das folgende SQL-Statement in das Feld SQL Server Statement eingegeben. Der Wert der Bind-Variable ersetzt das Zeichen „?“.

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

Siehe auch: