oci_set_client_identifier

(PHP 5 >= 5.3.2, PHP 7, PHP 8, PECL OCI8 >= 1.4.0)

oci_set_client_identifierSets the client identifier

Beschreibung

oci_set_client_identifier(resource $connection, string $client_id): bool

Sets the client identifier used by various database components to identify lightweight application users who authenticate as the same database user.

The client identifier is registered with the database when the next 'round-trip' from PHP to the database occurs, typically when an SQL statement is executed.

The identifier can subsequently be queried, for example with SELECT SYS_CONTEXT('USERENV','CLIENT_IDENTIFIER') FROM DUAL. Database administration views such as V$SESSION will also contain the value. It can be used with DBMS_MONITOR.CLIENT_ID_TRACE_ENABLE for tracing and can also be used for auditing.

The value may be retained across page requests that use the same persistent connection.

Parameter-Liste

connection

Ein Oracle-Verbindungs-Identifiierer, der von oci_connect(), oci_pconnect(), oder oci_new_connect() zurückgegeben wurde.

client_id

User chosen string up to 64 bytes long.

Rückgabewerte

Gibt bei Erfolg true zurück. Bei einem Fehler wird false zurückgegeben.

Beispiele

Beispiel #1 Setting the client identifier to the application user

<?php

// Find the application user's login name
session_start();
$un = my_validate_session($_SESSION['username']);
$c = oci_connect('myschema', 'welcome', 'localhost/XE');

// Tell Oracle who that user is
oci_set_client_identifier($c, $un);

// The next round-trip to the database will piggyback the identifier
$s = oci_parse($c, 'select mydata from mytable');
oci_execute($s);

// ...

?>

Anmerkungen

Achtung

Roundtrip Hinweis

Einige, aber nicht alle OCI8-Funktionen verursachen Roundtrips. Roundtrips zur Datenbank dürfen nicht für Queries auftreten, wenn der Ergebniscache aktiviert ist.

Siehe auch

add a note add a note

User Contributed Notes 1 note

up
2
sixd at php dot net
13 years ago
There's an article "PHP Web Auditing, Authorization and Monitoring with Oracle Database" at www.oracle.com/technetwork/articles/dsl/php-web-auditing-171451.html which is all about using oci_set_client_identifier()
To Top