Keywords introducing the external security clause.
This clause is mandatory for external UDFs that perform operating system I/O operations.
If you do not specify an external security clause, but the UDF 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.
See CREATE AUTHORIZATION and REPLACE AUTHORIZATION for information about creating authorizations for external routines.
- DEFINER
- Specifies that the UDF 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 table function.
- If you specify an authorization name, you must define an authorization object with that name before you can invoke the table function.
- If you do not specify an authorization name, you must define a default DEFINER authorization object.
- authorization_name
- Optional authorization name.
- INVOKER
- Specifies that the table function runs in the OS user context with the associated default authorization object that exists for this purpose.