Send feedback on this topic.
Teradata.Client.Provider
Client Attributes
.NET Data Provider for Teradata > Developer's Guide > Working with the Data Provider Features > Connecting to Advanced SQL Engine > Client Attributes

Beginning in Teradata Database 14.00, several new client attributes are collected and stored in separate columns of the DBC.SessionInfo view, the DBC.SessionTbl table, and the DBC.LogOnOff view. This information is an extension to the LogonSource information collected in the Logon Source Format column.

In Teradata Database 14.10, five additional client attributes are supported in the .NET Data Provider for Teradata - ClientIPAddrByClient, ClientPortByClient, ServerIPAddrByClient, ServerPortByClient and ClientCOPSuffixedHostName. Because the hostname IP address and the hostname port number are new columns for the 14.10 release, the ClientTdHostName now only contains the Teradata Database hostname. The composite ClientTdHostName containing the hostname, IP address and the port number will continue to be supported with Teradata Database version 14.00.

The DBC.LogOnOff and the DBC.SessionInfo views contain the same new additional columns, so the columns will be described within the DBC.SessionInfo view. The DBC.SessionTbl is accessable by only admninistrators (by default) and the DBC.SessionInfo is a view of this table. One new additional column DBC.SessionTbl.ClientAttributesEx is described that contains key value pairs, not found in the DBC.SessionInfo view. This same column does appear in the DBC.LogOnOff view.

When the .NET Data Provider for Teradata establishes a connection to the Advanced SQL Engine, several attributes of the application environment are collected and stored in the SQL Engine. A list of the attribute columns and their content are described below. The Teradata Database/SQL Engine Version indicates the SQL Engine version that supports the attribute.

Client Attribute Descriptions

SQL Engine Version Table/View Table/View Column Type Max Length Description
14.00 DBC.SessionInfo ClientTdHostname string 128
  • The Teradata Vantage Hostname: +
  • The IP address of the SQL Engine node: +
  • The port of the SQL Engine node
14.10 DBC.SessionInfo ClientTdHostname string 128 Teradata Vantage Hostname
14.00 DBC.SessionInfo ClientProcThreadid string 128 The client process thread id
14.00 DBC.SessionInfo ClientSystemUserId string 128 The client user name
14.00 DBC.SessionInfo ClientProgramName string 1024 The process name of the executing application
14.00 DBC.SessionInfo ClientOSName string 128 The operating system name
14.00 DBC.SessionInfo ClientNetDataProviderVersion string 16 The .NET Data Provider version in the format of WW.XX.YY.ZZ
14.00 DBC.SessionInfo ClientNetFrameworkVersion; string 30 The .NET Framework version
14.00 DBC.SessionInfo ClientAttributesEx string 512 Key-Value pairs as a String (key=value). Two values are supported and are separated by colons:
  • NF=The .NET Framework version
  • PI=Operating System Architecture
14.10 DBC.SessionInfo ClientIPAddrByClient string 45 The client IP address
14.10 DBC.SessionInfo ClientPortByClient integer 4 The client port number
14.10 DBC.SessionInfo ServerIPAddrByClient string 45 The server IP address
14.10 DBC.SessionInfo ServerPortByClient integer 4 The server port number
14.10 DBC.SessionInfo ClientCOPSuffixedHostName string 128 When COP discovery is enabled, the hostname identifying the COP number
16.20.53.30 DBC.SessionInfo ClientConfType char 1

The Client Confidentiality Type:

  • 'U': TLS was not attempted; the data transfer is not encrypted.
  • 'E': TLS was not attempted; TDGSS is used for encryption.
  • 'F': TLS was attempted, but failed; TDGSS is used for encryption.
  • 'H': TLS was attempted, but failed; the data transfer is not encrypted.
  • 'R': TLS is used for encryption, but no certificate verification was performed.
  • 'C': TLS is used for encryption and the server certificate is valid and trusted by the client, but the hostname was not verified.
  • 'V': TLS is used for encryption and the server certificate was fully verified.

Each of the table/view columns are described below in more detail.

TdHostName

The TdHostName will consist of the Teradata Hostname as supplied from the Data Source connection property for Teradata Database versions 14.10 and greater.

The TdHostName will be supplied as a combination of three fields for Teradata Database version 14.00. For example:

    tdnetdp2:141.206.36.245:1025

ClientProcThreadid

The process id is obtained from process.GetCurrentProcess. The Data Provider populates this field with a question mark when .NET Framework throws a security violation exception.

ClientSystemUserId

The user name is obtained from System.Environment.UserName. The Data Provider populates this field with a question mark when .NET Framework throws a security violation exception.

ClientProgramName

The program name is obtained from System.GetCurrentProcess().ProcessName. The Data Provider populates this field with a question mark when .NET Framework throws a security violation exception.

ClientOSName

.NET Framework

The operating system name is obtained from System.Environment.OsVersion.Version property. To help distinguish the operating system version, the System.Environment.OsVersion.Version is included within the name. Any operating system service packs are obtained from the System.Environment.OsVersion.ServicePack property, which is appended to the end of the operating system name.

The major and minor version numbers are used to determine the operating system name. Two major minor version combinations exist that are not able to be distinguished uniquely. "Windows Vista and Windows Server 2008" and "Windows 7/Windows Server 2008 R2" will be returned as a combined entry.

The following are examples of the operating system names returned.

The above strings are returned with the OsVersion and the service pack (if exists). An example of the fully populated string is:

Windows 7/Windows Server 2008 R2 6.1.7601.65536 Service Pack 1.

.NET Core

The operating system name is obtained from System.Runtime.InteropServices.RuntimeInformation.OSDescription property.

ClientNetDataProviderVersion

The .NET Data Provider version is set in the format ww.xx.yy.zz. For example version 14.0.0.0, which is the version that supports the first release of Client Attributes.

ClientNetFrameworkVersion

The .NET Framework version is obtained by reading the current Environment.Version. The CLR version returned may not match the .NET Framework directly. See the table below.

.NET Framework
Version
Common Language Runtime
Version
System.Core.dll
Version
4.5.2 4.0 4.0
4.6 4.0 4.0
4.6.1 4.0 4.0
4.6.2 4.0 4.0

For example .NET Framework version may be:

    CLR 4.0.30319.42000

ClientAttributesEx

This property is capable of storing multiple key-value pairs in the form: key1=value1;key2=value2. Two keys are supported by the data provider:

The DBC.SessionInfo view obtains the .NET Framework version as described in the above attribute from the DBC.SessionTbl. An example of this column content is:

    NF=CLR 4.0.30319.237;PI=x64;

ClientIPAddrByClient

The IP address of the client application machine obtained from the socket local endpoint property.

ClientPortByClient

The port number of the client application machine obtained frrom the socket local endpoint property.

ServerIPAddrByClient

The IP address of the Teradata hostname obtained from the socket remote endpoint property.

ServerPortByClient

The port number of the Teradata hostname obtained frrom the socket remote endpoint property.

ClientCOPSuffixedHostName

When COP discovery is enabled, the ClientTdHostName identifying the COP number.

See Also

Logon Source Format