diff options
| author | Bruce Momjian <bruce@momjian.us> | 1999-11-30 03:57:29 +0000 |
|---|---|---|
| committer | Bruce Momjian <bruce@momjian.us> | 1999-11-30 03:57:29 +0000 |
| commit | eebfb9baa517b2680cf963b74e4c6a9fb12a1df2 (patch) | |
| tree | f8ceb89757f3910de48346cf0a0290528cc40ceb /doc/src/sgml | |
| parent | 3ab5b1f1e661840c191dbba9d2985c17766896ef (diff) | |
create/alter user extension
This one should work much better than the one I sent in previously. The
functionality is the same, but the patch was missing one file resulting
in
the compilation failing. The docs also received a minor fix.
Peter Eisentraut Sernanders väg 10:115
Diffstat (limited to 'doc/src/sgml')
| -rw-r--r-- | doc/src/sgml/ref/alter_user.sgml | 31 | ||||
| -rw-r--r-- | doc/src/sgml/ref/create_user.sgml | 74 |
2 files changed, 58 insertions, 47 deletions
diff --git a/doc/src/sgml/ref/alter_user.sgml b/doc/src/sgml/ref/alter_user.sgml index 686684632a5..75bcca86546 100644 --- a/doc/src/sgml/ref/alter_user.sgml +++ b/doc/src/sgml/ref/alter_user.sgml @@ -1,5 +1,5 @@ <!-- -$Header: /cvsroot/pgsql/doc/src/sgml/ref/alter_user.sgml,v 1.8 1999/07/22 15:09:06 thomas Exp $ +$Header: /cvsroot/pgsql/doc/src/sgml/ref/alter_user.sgml,v 1.9 1999/11/30 03:57:22 momjian Exp $ Postgres documentation --> @@ -23,7 +23,10 @@ Postgres documentation <date>1999-07-20</date> </refsynopsisdivinfo> <synopsis> -ALTER USER <replaceable class="PARAMETER">username</replaceable> [ WITH PASSWORD <replaceable class="PARAMETER">password</replaceable> ] +ALTER USER <replaceable class="PARAMETER">username</replaceable> + [ WITH + [ SYSID <replaceable class="PARAMETER">uid</replaceable> ] + [ PASSWORD <replaceable class="PARAMETER">password</replaceable> ] ] [ CREATEDB | NOCREATEDB ] [ CREATEUSER | NOCREATEUSER ] [ IN GROUP <replaceable class="PARAMETER">groupname</replaceable> [, ...] ] [ VALID UNTIL '<replaceable class="PARAMETER">abstime</replaceable>' ] @@ -63,6 +66,22 @@ ALTER USER <replaceable class="PARAMETER">username</replaceable> [ WITH PASSWORD </varlistentry> <varlistentry> + <term><replaceable class="parameter">uid</replaceable></term> + <listitem> + <para> + The new <productname>PostgreSQL</productname> user id of the user. + Since this number is used as a key into the + <literal>pg_shadow</literal>/<literal>pg_user</literal> table + throughout the system catalogs, it is not recommended that you change + it unless the user in question does not own anything at all and/or + you really know what you are doing. Note that it is not necessary that + database and <acronym>UNIX</acronym> user ids match, but some people + choose to keep the numbers the same. + </para> + </listitem> + </varlistentry> + + <varlistentry> <term><replaceable class="PARAMETER"> groupname </replaceable></term> <listitem> <para> @@ -130,9 +149,7 @@ ERROR: alterUser: user "username" does not exist <para> <command>ALTER USER</command> is used to change the attributes of a user's <productname>Postgres</productname> account. - Please note that it is not possible - to alter a user's "<literal>usesysid</literal>" via the alter user - statement. Also, it is only possible for the + Also, it is only possible for the <productname>Postgres</productname> user or any user with read and modify permissions on <literal>pg_shadow</literal> to alter user passwords. @@ -161,9 +178,7 @@ ERROR: alterUser: user "username" does not exist to create or remove a user account. </para> <para> - In the current release (v6.5), the IN GROUP clause is parsed - but has no affect. When it is fully implemented, it is - intended to modify the pg_group relation. + The IN GROUP clause is not yet implemented. </para> </refsect2> </refsect1> diff --git a/doc/src/sgml/ref/create_user.sgml b/doc/src/sgml/ref/create_user.sgml index b7a55d05d48..9eccd3f7130 100644 --- a/doc/src/sgml/ref/create_user.sgml +++ b/doc/src/sgml/ref/create_user.sgml @@ -1,5 +1,5 @@ <!-- -$Header: /cvsroot/pgsql/doc/src/sgml/ref/create_user.sgml,v 1.9 1999/10/07 16:40:36 momjian Exp $ +$Header: /cvsroot/pgsql/doc/src/sgml/ref/create_user.sgml,v 1.10 1999/11/30 03:57:23 momjian Exp $ Postgres documentation --> @@ -23,8 +23,10 @@ Postgres documentation <date>1999-07-20</date> </refsynopsisdivinfo> <synopsis> -CREATE USER<replaceable class="PARAMETER"> username</replaceable> - [ WITH PASSWORD <replaceable class="PARAMETER">password</replaceable> ] +CREATE USER <replaceable class="PARAMETER">username</replaceable> + [ WITH + [ SYSID <replaceable class="PARAMETER">uid</replaceable> ] + [ PASSWORD <replaceable class="PARAMETER">password</replaceable> ] ] [ CREATEDB | NOCREATEDB ] [ CREATEUSER | NOCREATEUSER ] [ IN GROUP <replaceable class="PARAMETER">groupname</replaceable> [, ...] ] [ VALID UNTIL '<replaceable class="PARAMETER">abstime</replaceable>' ] @@ -50,10 +52,27 @@ CREATE USER<replaceable class="PARAMETER"> username</replaceable> </varlistentry> <varlistentry> + <term><replaceable class="parameter">uid</replaceable></term> + <listitem> + <para> + The <literal>SYSID</literal> clause can be used to choose + the <productname>PostgreSQL</productname> user id of the user + that is being created. It is not at all necessary that those + match the <acronym>UNIX</acronym> user ids, but some people + choose to keep the numbers the same. + </para> + <para> + If this is not specified, the highest assigned user id plus one + will be used as default. + </para> + </listitem> + </varlistentry> + + <varlistentry> <term><replaceable class="parameter">password</replaceable></term> <listitem> <para> - The WITH PASSWORD clause sets the user's password within + The PASSWORD clause sets the user's password within the "<filename>pg_shadow</filename>" table. For this reason, <filename>"pg_shadow</filename>" is no longer accessible to the instance of @@ -173,30 +192,9 @@ CREATE USER </title> <para> CREATE USER will add a new user to an instance of - <productname>Postgres</productname>. + <productname>PostgreSQL</productname>. </para> - <para> - The new user will be given a <filename>usesysid</filename> of: - - <programlisting> -SELECT MAX(usesysid) + 1 FROM pg_shadow; - </programlisting> - - This means that - <productname>Postgres</productname> users' <filename>usesysid</filename>s will not - correspond to their operating - system(OS) user ids. The exception to this rule is - the <literal>postgres</literal> superuser, whose OS user id - is used as the - <filename>usesysid</filename> during the initdb process. - If you still want the - OS user id and the <filename>usesysid</filename> to match - for any given user, - use the <application>createuser</application> script provided with - the <productname>Postgres</productname> distribution. - </para> - <refsect2 id="R2-SQL-CREATEUSER-3"> <refsect2info> <date>1998-09-21</date> @@ -216,19 +214,17 @@ SELECT MAX(usesysid) + 1 FROM pg_shadow; Refer to the <filename>pg_shadow</filename> table for further information. </para> <programlisting> - Table = pg_shadow - +--------------------------+--------------------------+-------+ - | Field | Type | Length| - +--------------------------+--------------------------+-------+ - | usename | name | 32 | - | usesysid | int4 | 4 | - | usecreatedb | bool | 1 | - | usetrace | bool | 1 | - | usesuper | bool | 1 | - | usecatupd | bool | 1 | - | passwd | text | var | - | valuntil | abstime | 4 | - +--------------------------+--------------------------+-------+ + Table "pg_shadow" + Attribute | Type | Extra +-------------+---------+------- + usename | name | + usesysid | int4 | + usecreatedb | bool | + usetrace | bool | + usesuper | bool | + usecatupd | bool | + passwd | text | + valuntil | abstime | </programlisting> </refsect2> </refsect1> |
