diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2012-10-04 13:41:05 -0400 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2012-10-04 13:41:05 -0400 |
commit | cb4083dfbbda97eb2b23111a3093c417d8a7d41a (patch) | |
tree | 46ad8751d3d21fc2932d7e1476541b68d9500bd4 | |
parent | a846f63aed825e4addbf24bbbb36fc0de9ddf568 (diff) | |
download | postgresql-cb4083dfbbda97eb2b23111a3093c417d8a7d41a.tar.gz postgresql-cb4083dfbbda97eb2b23111a3093c417d8a7d41a.zip |
Fix permissions explanations in CREATE DATABASE and CREATE SCHEMA docs.
These reference pages still claimed that you have to be superuser to create
a database or schema owned by a different role. That was true before 8.1,
but it was changed in commits aa1110624c08298393dfce996f7b21809d98d3fd and
f91370cd2faf1fd35a1ac74d84652a85ed841919 to allow assignment of ownership
to any role you are a member of. However, at the time we were thinking of
that primarily as a change to the ALTER OWNER rules, so the need to touch
these two CREATE ref pages got missed.
-rw-r--r-- | doc/src/sgml/ref/create_database.sgml | 14 | ||||
-rw-r--r-- | doc/src/sgml/ref/create_schema.sgml | 13 |
2 files changed, 12 insertions, 15 deletions
diff --git a/doc/src/sgml/ref/create_database.sgml b/doc/src/sgml/ref/create_database.sgml index 91cf7018c08..5158854841f 100644 --- a/doc/src/sgml/ref/create_database.sgml +++ b/doc/src/sgml/ref/create_database.sgml @@ -47,14 +47,6 @@ CREATE DATABASE <replaceable class="PARAMETER">name</replaceable> </para> <para> - Normally, the creator becomes the owner of the new database. - Superusers can create databases owned by other users, by using the - <literal>OWNER</> clause. They can even create databases owned by - users with no special privileges. Non-superusers with <literal>CREATEDB</> - privilege can only create databases owned by themselves. - </para> - - <para> By default, the new database will be created by cloning the standard system database <literal>template1</>. A different template can be specified by writing <literal>TEMPLATE @@ -84,9 +76,11 @@ CREATE DATABASE <replaceable class="PARAMETER">name</replaceable> <term><replaceable class="parameter">user_name</replaceable></term> <listitem> <para> - The name of the database user who will own the new database, + The role name of the user who will own the new database, or <literal>DEFAULT</literal> to use the default (namely, the - user executing the command). + user executing the command). To create a database owned by another + role, you must be a direct or indirect member of that role, + or be a superuser. </para> </listitem> </varlistentry> diff --git a/doc/src/sgml/ref/create_schema.sgml b/doc/src/sgml/ref/create_schema.sgml index 930d876814d..399e30df7d1 100644 --- a/doc/src/sgml/ref/create_schema.sgml +++ b/doc/src/sgml/ref/create_schema.sgml @@ -65,7 +65,8 @@ CREATE SCHEMA AUTHORIZATION <replaceable class="parameter">user_name</replaceabl <term><replaceable class="parameter">schema_name</replaceable></term> <listitem> <para> - The name of a schema to be created. If this is omitted, the user name + The name of a schema to be created. If this is omitted, the + <replaceable class="parameter">user_name</replaceable> is used as the schema name. The name cannot begin with <literal>pg_</literal>, as such names are reserved for system schemas. @@ -77,9 +78,10 @@ CREATE SCHEMA AUTHORIZATION <replaceable class="parameter">user_name</replaceabl <term><replaceable class="parameter">user_name</replaceable></term> <listitem> <para> - The name of the user who will own the schema. If omitted, - defaults to the user executing the command. Only superusers - can create schemas owned by users other than themselves. + The role name of the user who will own the new schema. If omitted, + defaults to the user executing the command. To create a schema + owned by another role, you must be a direct or indirect member of + that role, or be a superuser. </para> </listitem> </varlistentry> @@ -175,7 +177,8 @@ CREATE VIEW hollywood.winners AS all objects within it. <productname>PostgreSQL</productname> allows schemas to contain objects owned by users other than the schema owner. This can happen only if the schema owner grants the - <literal>CREATE</> privilege on his schema to someone else. + <literal>CREATE</> privilege on his schema to someone else, or a + superuser chooses to create objects in it. </para> </refsect1> |