O exemplo a seguir mostra como habilitar o contexto confiável, alternar
usuários e obter o ID do usuário atual.
<?php
$database = "SAMPLE";
$hostname = "localhost";
$port = 50000;
$authID = "db2inst1";
$auth_pass = "ibmdb2";
$tc_user = "tcuser";
$tc_pass = "tcpassword";
$dsn = "DATABASE=$database;HOSTNAME=$hostname;PORT=$port;
PROTOCOL=TCPIP;UID=$authID;PWD=$auth_pass;";
$options = array ("trustedcontext" => DB2_TRUSTED_CONTEXT_ENABLE);
$tc_conn = db2_pconnect($dsn, "", "", $options);
if($tc_conn) {
echo "Conexão confiável explícita bem-sucedida.\n";
if(db2_get_option($tc_conn, "trustedcontext")) {
$userBefore = db2_get_option($tc_conn, "trusted_user");
// Faz algo como usuário 1.
// Trocando para usuário confiável.
$parameters = array("trusted_user" => $tc_user,
"trusted_password" => $tcuser_pass);
$res = db2_set_option ($tc_conn, $parameters, 1);
$userAfter = db2_get_option($tc_conn, "trusted_user");
// Faz algo mais como usuário confiável.
if($userBefore != $userAfter) {
echo "O usuário foi trocado." . "\n";
}
}
db2_close($tc_conn);
}
else {
echo "Falha na conexão confiável explícita.\n";
}
?>
O exemplo acima produzirá:
Conexão confiável explícita bem-sucedida.
O usuário foi trocado.