Commit 2bde07c1 authored by Bruce Momjian's avatar Bruce Momjian

Clarify the meaning of "trusted language" in the documentation.

parent 63f591e9
<!-- <!--
$PostgreSQL: pgsql/doc/src/sgml/ref/create_language.sgml,v 1.50 2010/04/03 07:22:58 petere Exp $ $PostgreSQL: pgsql/doc/src/sgml/ref/create_language.sgml,v 1.51 2010/05/30 02:23:09 momjian Exp $
PostgreSQL documentation PostgreSQL documentation
--> -->
...@@ -104,11 +104,10 @@ CREATE [ OR REPLACE ] [ TRUSTED ] [ PROCEDURAL ] LANGUAGE <replaceable class="pa ...@@ -104,11 +104,10 @@ CREATE [ OR REPLACE ] [ TRUSTED ] [ PROCEDURAL ] LANGUAGE <replaceable class="pa
<listitem> <listitem>
<para> <para>
<literal>TRUSTED</literal> specifies that <literal>TRUSTED</literal> specifies that the language does
the language is safe, that is, it does not offer an not grant access to data that the user would not otherwise
unprivileged user any functionality to bypass access have. If this key word is omitted
restrictions. If this key word is omitted when registering the when registering the language, only users with the
language, only users with the
<productname>PostgreSQL</productname> superuser privilege can <productname>PostgreSQL</productname> superuser privilege can
use this language to create new functions. use this language to create new functions.
</para> </para>
......
<!-- $PostgreSQL: pgsql/doc/src/sgml/xplang.sgml,v 1.37 2010/04/03 07:22:56 petere Exp $ --> <!-- $PostgreSQL: pgsql/doc/src/sgml/xplang.sgml,v 1.38 2010/05/30 02:23:09 momjian Exp $ -->
<chapter id="xplang"> <chapter id="xplang">
<title>Procedural Languages</title> <title>Procedural Languages</title>
...@@ -151,8 +151,10 @@ CREATE <optional>TRUSTED</optional> <optional>PROCEDURAL</optional> LANGUAGE <re ...@@ -151,8 +151,10 @@ CREATE <optional>TRUSTED</optional> <optional>PROCEDURAL</optional> LANGUAGE <re
<optional>VALIDATOR <replaceable>validator_function_name</replaceable></optional> ; <optional>VALIDATOR <replaceable>validator_function_name</replaceable></optional> ;
</synopsis> </synopsis>
The optional key word <literal>TRUSTED</literal> specifies that The optional key word <literal>TRUSTED</literal> specifies that
ordinary database users that have no superuser privileges should the language does not grant access to data that the user would
be allowed to use this language to create functions and trigger not otherwise have. Trusted languages are designed for ordinary
database users (those without superuser privilege) and allows them
to safely create of functions and trigger
procedures. Since PL functions are executed inside the database procedures. Since PL functions are executed inside the database
server, the <literal>TRUSTED</literal> flag should only be given server, the <literal>TRUSTED</literal> flag should only be given
for languages that do not allow access to database server for languages that do not allow access to database server
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment