Security Features in Teradata Database
Security Features in Teradata Database
By:
Jim Browning and
Adriaan Veldhuisen
Security Features in Teradata Database
Table of Contents
Endnotes 13
> Network traffic encryption.
> Auditing and monitoring controls.
1
Common Criteria for Information Technology Security Evaluation, Part 1: Introduction and general model
Enterprise
Information Data Custom Support Information Production Business
Information
security and privacy infrastructure already Governance
Sourcing Mapping Component Management Exploitation Install Continuity
The Design phase ensures that the database Services Plan Education Recovery Testing Relocation
Hardware/
User User
design and data model fully address all Curriculum Training
Software
Upgrade
able to ensure that passwords are regularly Maximum Logon Allows the security administrator to define the number
changed, are sufficiently complex, and that Attempts of erroneous sequential logon attempts a user is
allowed before the user is blocked from further logon
effective precautions can be taken to protect attempts.
against attempts to guess user passwords.
Password Lockout Allows the security administrator to set the user
As such, the Teradata Database supports a Time lock time duration after the user has exceeded the
rich set of password security controls that maximum number of logon attempts.
can be specified at either the user level or
Format Controls Description
the system level. This is important since it
is often desirable to establish and enforce Password Length Allows the security administrator to define the
minimum and maximum number of characters
different password management policies required in a valid password string.
for different types of database users (e.g.,
Password Allows the security administrator to specify whether
batch versus interactive). Construction alpha characters, digits, special characters, and a
combination of upper- and lowercase characters are
User-level controls are implemented using to be allowed or required in the password string.
the User Profiles feature that was intro- Also, allows the security administrator to specify
whether the username should be allowed to be
duced in Teradata Warehouse 7.0. In this included in the password string.
manner, profiles specifying specific
Figure 3. Password Controls
password management policies can be
defined and assigned to individual users, Windows Network Authentication that is performed upon initial network
groups of users, or an entire enterprise. Effective user authentication is a founda- access. This capability improves the
When a user logs on to the Teradata tion of a database system’s security productivity of network users, reduces
Database, any associated profile password services. However, secure authentication the cost of network operations, and,
controls will take effect. If no associated may be compromised in large, heteroge- ultimately, improves network security.
profile password controls have been neous networks where users may be Further, security is improved by eliminat-
defined, then the system-level controls required to remember multiple user ing the need for an application to declare
will take effect. names and passwords. To address this or store a password on the client system.
issue, a single sign-on capability can be
Figure 3 describes the password security For homogeneous Windows environments,
used to allow network users to seamlessly
controls that are supported in Teradata the Teradata Database, since Release
access authorized network resources and
Database V2R6.1 (reference the Security V2R4.1, supports a single sign-on capability
applications, including an enterprise data
Administration reference manual for through integration with Windows
warehouse, with a single authentication
implementation specifics2). Network Authentication. Upon connection
of options for authenticating database authentication methods without requiring RBAC, security is managed at a level that
users, it is often desirable to integrate the installation on an active system. more closely corresponds to an organiza-
authentication with that provided by such tion’s structure. Each database user may
Authorization
access management systems. be assigned one or more roles with each
Ensuring appropriate and authorized access
role assigning access rights or privileges
With Teradata Warehouse 8.0, the Teradata to data is a major objective – and concern –
that are permitted to users in that role.
Database supports an Extensible User in database security. The Teradata Database
Security administration with RBAC
Authentication architecture that allows contains a robust set of fully integrated
requires determining the operations that
for custom authentication methods to be system access control capabilities. The
must be allowed by users in particular
developed (with the assistance of Teradata mission of security administration on a
jobs and assigning those users to the
Professional Services) and used for Teradata Database system is to prevent
proper roles. RBAC effectively manages
authentication of database users. This unauthorized persons from accessing the
complexities resulting from differing roles
architecture is built around the use of system and its resources, as well as permit-
or hierarchies, thereby easing the task of
standard application programming ting legitimate users access to those
security administration.
interfaces, such as the Generic Security resources to which they are authorized. The
Services API (GSS-API) and the Security Teradata Database supports a discretionary Introduced in Teradata Warehouse 7.0, the
Service Provider Interface (SSPI). As access control policy in which access to Teradata Database provides support for
such, new methods can be developed and database objects is restricted based upon the Security Roles, which are used to define
deployed without requiring new releases of identity of users and/or groups to which access privileges on database objects. For
base Teradata client and database software. they belong. The controls are discretionary example, a user who is a member of a role
in the sense that a user with certain access can access the specific views for which the
The architecture readily accommodates
permissions is capable of passing those role has been granted appropriate access
different types of credentials (e.g., tokens
permissions on to other users. rights or privileges. For enterprise data
and certificates) that can be used to identify
warehouses that provide access to many
and authenticate a user. Moreover, custom Security Roles
users, the use of roles will significantly
methods can be developed to implement One of the most challenging problems in
simplify access rights administration and
agents that interface to external access managing large data warehouse systems is
enhance overall security. A security admin-
or policy servers thereby extending the the complexity of security administration.
istrator can create different roles for
authentication or single sign-on services Often, security administration is costly
different job functions and responsibilities.
provided to include the Teradata Database. and prone to errors because security
For example, a security administrator can
Teradata Warehouse 8.1 provides a Soft- administrators must specify access con-
grant rights on a clinician view to a role
ware Developer’s Kit (SDK) to support trols individually for each database user.
and have these rights automatically applied
easier development and testing of custom Role-based access control (RBAC) is a
to all users assigned to that role (Figure 5).
authentication methods. The SDK technology that can reduce the complexity
includes a test framework that enables and cost of security administration in Management of access rights is simplified
initial development and testing of new large data warehouse environments. With by allowing grants and revokes of multiple
Clinician
With Teradata Warehouse 8.0, Teradata
has defined directory schema attributes
Clinician
and objects that allow for the extension
Clinician of a directory schema to map the distin-
guished name of a directory user to a
Clinician
Teradata Database permanent user. Such
users inherit the roles assigned to the
Researcher
Researcher mapped permanent user. However,
additional external roles can be created
Researcher
and assigned to the directory user. Exter-
nal roles assigned to a directory user can
Lab Analyst Lab Analyst be used in addition to any roles inherited
from the mapped permanent user. A user
profile may be created and assigned to a
Lab Analyst directory user in a similar manner.
Lab Analyst
These schema extensions are provided
Figure 5. Security Roles for popular directory services such as
access rights with one request. This is rights are only granted through the role Microsoft Active Directory and Sun Java
important when a user changes job definition. System Directory Server. Upon successful
functions (role) within the company. authentication, Teradata Database will
Typically, only one role will be the session’s enable the specified security role(s) and
Should a job function need a new access
current or active role. Enabled roles are user profile for the database session.
right, it can be granted to the role and
the current role plus any nested roles. At
would be effective immediately for all
logon, the current role is the user’s default Normally, users are defined in the database
users with that role.
role. Alternatively, it is possible to enable via a CREATE USER request. However,
To effectively use the Security Roles all roles granted to a user for a session. some data warehouse environments may
feature, individual rights must be con- support large numbers of users that do
Directory Integration not have unique system requirements
verted into role rights. This requires
As noted earlier, many enterprises are (such as the need for PERM space or
creating the required roles and granting
adopting centralized security management unique SPOOL or TEMP space alloca-
appropriate rights to each role. Roles
frameworks, built using LDAP directory tions). To simplify the management of
can then be granted to users and users
services, which provide for a single point such users, the Directory Integration
assigned their default roles. Finally, all
of administration for users and associated feature allows for user access without
individual access rights that have been
security policies. Often, with such systems, requiring the creation of a database
replaced by role rights should be revoked
the directory maintains access control instance for every user. Users that are not
from the users to ensure that all access
mapped in the directory to an existing operate in a traditional client/server for complex key management processes.
permanent Teradata Database user may environment. If clients are accessing the Strong encryption is accomplished using
be mapped to a system-defined user database server over non-secure networks, the industry-standard Advanced Encryp-
called EXTUSER. Access rights for such there is a risk that data may be compro- tion Standard (AES) algorithm.
external users are determined by the user’s mised by a malicious user who is snooping
In networked environments, a password
directory-assigned security role(s). Space on the network.
transmitted from a client application to a
allocations may default or can be deter-
To mitigate this risk, Teradata Warehouse database server may pose a security risk. If
mined by the user’s directory-assigned
8.0 provides for encryption of data the password is transmitted in clear text
user profile.
transmitted between client applications over a non-secure network, there is a risk
With Teradata Warehouse 8.1, the LDAP and the Teradata Database. Encryption is it could be intercepted by a malicious user
authentication method properties can be a CPU-intensive function that can nega- snooping for data on the network. To
configured to allow for directory users that tively affect the performance of some protect against this, the Teradata Database
correspond to a user defined in the database operations. As such, its use should be client tools and utilities always encrypt
to log on without requiring directory carefully considered. The use of encryp- the logon string (including username
schema extensions. In this scenario, authori- tion is determined by the user through the and password) that is transmitted to the
zation to access database objects is managed client application and can be controlled on Teradata Database server.
entirely within the database. a per request basis. As such, the user has
For compatibility purposes, the client and
complete flexibility in the use of encryp-
Tools are provided to validate directory server are not required to be at the same
tion to protect payloads transmitted over
content and the operation of the directory version level. However, only the security
a network and to minimize any negative
when using the Teradata schema extensions. features common to each version level
performance impacts. Alternatively, the
can be used. This can allow for security
Data Security client interfaces can be configured such
features to be utilized according to indi-
It is important to implement appropriate that all sessions between the client applica-
vidual client needs.
controls to protect sensitive data. Data tions and the database server are encrypted.
can be vulnerable when transmitted over Row- and Column-Level Security
The security provided by encryption is
non-secure networks or when appropriate Database views are used to restrict the
dependent upon the strength of the encryp-
access controls have not been enabled rows and columns that users (or groups
tion algorithm and the security of the key
for stored data. The Teradata Database of users) can access. Views are part of the
used to perform the encryption. The
provides facilities to manage the encryp- SQL standard and can be thought of as
Teradata Database uses the public-key
tion of sensitive data when transmitted virtual tables that can be accessed as if
based Diffie-Hellman key agreement
over non-secure networks. Further, row- they were physical tables to retrieve data
protocol to generate a secure 128-bit key
and column-level security can be imple- from the database. Views can be defined
for use by the client and the database. A
mented readily using database views. to reference columns or rows from underly-
unique key is generated for each database
ing views and/or tables. A view does not
Network Traffic Encryption session. The key generation is built into
actually contain data but rather is used to
The Teradata Database and associated the underlying client/server communica-
provide users with their own logical view
client applications and utilities typically tion protocol thereby eliminating the need
of the data within the database. Figure 6
Auditing and Monitoring configure the system’s Access Log to log database tables within the data dictionary
An important aspect of any security any successful and/or unsuccessful attempt and access to the information requires
implementation is the creation and to access any or all database objects by appropriate access rights and privileges.
monitoring of a record of system activity any or all database users. Also, the Access The audit records can be viewed through
to detect abnormal activity and to ensure Log has controls to filter the logging by ad hoc queries or with any appropriate
that users are held accountable for their frequency of access or type of access. application or query tool. Additionally,
actions. To detect intruders and ensure Teradata Database security features include Teradata Manager includes facilities that
data integrity, the Teradata Database the option to log the SQL expression enable the security administrator to access
provides a comprehensive set of auditing that was used to perform the access to a preconfigured reports or to generate
capabilities. A security administrator can database object. As such, all accesses are custom reports from the Access Log.
periodically audit events on the Teradata effectively audited.
Database to effectively detect potential Assurance
attempts to gain unauthorized access to Parameterized macros or triggers may be Assurance refers to a level of confidence
database resources or attempts to alter the used to further customize or refine the that a product’s security features have
behavior of the auditing facilities. auditing. Triggers are particularly useful been evaluated against a well-defined and
when creating audit logs based upon widely accepted set of security require-
The Teradata Database automatically specific data or content-based rules. ments. Security evaluations are conducted
audits all logon and logoff activity. How- by independent, licensed, and accredited
ever, the security administrator can also All audit information is stored in protected
organizations most often to the require-
ments of a specific industry standard. A France, Germany, the Netherlands, United confidential data within a database.
security evaluation provides assurance Kingdom, the U.S. National Institute of Important patents protect this intellectual
through an analysis of a system’s security Standards and Technology, and the U.S. property:
functions using functional and interface National Security Agency. > U.S. Patent # 6,253,203 – Privacy-
specifications, guidance documentation, enabled database (issued June 26, 2001)
The security evaluation of the Teradata
and the high-level design of the system
Database was conducted by the Booz Allen > U.S. Patent # 6,275,824 – System and
to understand the security behavior.
Common Criteria Test Lab under the method for managing data privacy in a
Independent testing of the security
National Information Assurance Partner- database management system (issued
functions supports the analysis, evidence
ship Common Criteria Evaluation and August 14, 2001)
of developer testing based on a functional
Validation Scheme (CCEVS). The Teradata > U.S. Patent # 6,438,544 – Method and
specification, selective independent
Database was evaluated against 31 separate apparatus for dynamic discovery of
confirmation of the developer test results,
security functional requirements that data model allowing customization
and a search for obvious vulnerabilities.
describe the security behavior of the of consumer applications accessing
Assurance is also provided through a
system3. These requirements spanned privacy data (issued August 20, 2002)
configuration list for the system and
multiple functional classes including > U.S. Patent # 6,480,850 – System and
evidence of secure delivery procedures.
Identification and Authentication, User method for managing data privacy in a
Security Evaluation under Data Protection, Access, Security Audit, database management system including
Common Criteria Security Management, and others. While a dependently connected privacy data
Teradata Database V2R5.0.2 has been the evaluation considered the design of the mart (issued November 12, 2002)
independently system, it also considered processes used
evaluated to the requirements of the for testing and installation and included a The architecture represented by these
Common Criteria for Information Tech- vulnerability analysis. As such, this evalua- patents leverages core Teradata Database
nology Security Evaluation (Common tion provides a high level of assurance in strengths such as:
Criteria) standard. The Common Criteria the security design and implementation of > The ability to store and manage large
is a multi-part standard that aligns with a Teradata Database system. volumes of detailed data through
the International support for normalized data models,
This evaluation is intended to satisfy the
Standard ISO/IEC an infrastructure that efficiently
requirements of those customers (primarily
15408:1999, which is enables multiple views, and data
government agencies) that are required
meant to be used as a models that are easily extended.
to procure only IT systems for which the
basis for evaluating > A high-performance implementation
security robustness has been formally
security properties of Information Tech- that makes views practical for privacy.
evaluated and validated.
nology Optimized SQL selects appropriate
(IT) products and systems. The Common columns and rows from base tables,
Criteria are defined by seven governmental Teradata Database
and complex SQL expressions exploit
security organizations known as “the Security Advantage
Teradata Database parallelism.
Common Criteria Project Sponsoring Teradata has a defined architecture for
> A security mechanism that can deny
Organizations” represented by Canada, protecting personal information or other
access to restricted views or macros.
> Access logging that provides a privacy authentication methods, access controls, Endnotes
audit trail and includes options to log high-performance database views, network
1
all accesses (or access attempts) to a traffic encryption, access logging, and Common Criteria for Information
table (or view, macro), and log the audit reporting. Technology Security Evaluation, Part 1:
associated SQL expression. Introduction and general model
New industry regulations, especially in the 2
Teradata Database Security Admin-
retail, financial services, and healthcare
Conclusion istration – www.info.ncr.com
industries, present increased challenges
3
The Teradata Database provides a rich for securing an enterprise’s information Teradata Relational Database Man-
set of security controls for managing, assets. The security capabilities described agement System Version 2, Release
protecting, and auditing access to stored in this paper can assist Teradata Database 5.0.2 Security Target (Version 1.0) –
data. These capabilities include extensive security administrators in meeting these niap.nist.gov/cc-scheme/st/
password controls, support for multiple new challenges. ST_VID7001.html
This document, which includes the information contained herein, is the exclusive property of Teradata Corporation. Any person is hereby authorized to view, copy,
print, and distribute this document subject to the following conditions. This document may be used for non-commercial, informational purposes only and is
provided on an “AS-IS” basis. Any copy of this document or portion thereof must include this copyright notice and all other restrictive legends appearing in this
document. Note that any product, process or technology described in the document may be the subject of other intellectual property rights reserved by Teradata
and are not licensed hereunder. No license rights will be implied. Use, duplication, or disclosure by the United States government is subject to the restrictions set
forth in DFARS 252.227-7013 (c) (1) (ii) and FAR 52.227-19.
Microsoft and Windows are registered trademarks of Microsoft Corporation. Teradata continually enhances products as new technologies and components become
available. Teradata continually improves products as new technologies and components become available. Teradata, therefore, reserves the right to change
specifications without prior notice. All features, functions, and operations described herein may not be marketed in all parts of the world. Consult your Teradata
representative or Teradata.com for more information.
Copyright © 2005-2007 by Teradata Corporation All Rights Reserved. Produced in U.S.A.