mirror of
https://github.com/postgres/postgres.git
synced 2025-07-27 12:41:57 +03:00
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
This commit is contained in:
@ -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>' ]
|
||||
@ -62,6 +65,22 @@ ALTER USER <replaceable class="PARAMETER">username</replaceable> [ WITH PASSWORD
|
||||
</listitem>
|
||||
</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>
|
||||
@ -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>
|
||||
|
@ -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>' ]
|
||||
@ -49,11 +51,28 @@ CREATE USER<replaceable class="PARAMETER"> username</replaceable>
|
||||
</listitem>
|
||||
</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>
|
||||
|
Reference in New Issue
Block a user