15.10 - EXTERNAL SECURITY - Teradata Database

Teradata Database SQL Data Definition Language Syntax and Examples

prodname
Teradata Database
vrm_release
15.10
created_date
December 2015
category
Programming Reference
featnum
B035-1144-151K

Keywords introducing the external security clause.

This clause is mandatory for external methods that perform operating system I/O operations.

If you do not specify an external security clause, but the method being defined performs OS I/O, then the results of that I/O are unpredictable. The most likely outcome is crashing the database, and perhaps crashing the entire system.

DEFINER
The method runs in the client user context of the associated security authorization object created for this purpose, which is contained within the same database as the method, SYSUDTLIB.
  • If you specify an authorization name, then you must define an authorization object with that name before you can run the function.
  • If you do not specify an authorization name, then you must define a default DEFINER authorization object.
The default authorization object must be defined before a user can run the function.
The system reports a warning if the specified authorization name does not exist at the time the method is created, stating that no authorization name exists.
See CREATE AUTHORIZATION and REPLACE AUTHORIZATION.
authorization_name
An optional authorization name.
For information about naming database objects, see SQL Fundamentals, B035-1141.
The specified authorization object must already be defined or the system reports an error. For further information, see CREATE AUTHORIZATION and REPLACE AUTHORIZATION.
INVOKER
The method runs in the OS user context with the associated default authorization object that exists for this purpose.
See CREATE AUTHORIZATION and REPLACE AUTHORIZATION.