mirror of https://github.com/postgres/postgres
I'm still working on the has_role function and information_schema changes.REL8_1_STABLE
parent
f5df006a04
commit
e5d6b91220
@ -0,0 +1,116 @@ |
|||||||
|
<!-- $PostgreSQL: pgsql/doc/src/sgml/ref/set_role.sgml,v 1.1 2005/07/25 22:12:31 tgl Exp $ --> |
||||||
|
<refentry id="SQL-SET-ROLE"> |
||||||
|
<refmeta> |
||||||
|
<refentrytitle id="sql-set-role-title">SET ROLE</refentrytitle> |
||||||
|
<refmiscinfo>SQL - Language Statements</refmiscinfo> |
||||||
|
</refmeta> |
||||||
|
|
||||||
|
<refnamediv> |
||||||
|
<refname>SET ROLE</refname> |
||||||
|
<refpurpose>set the current user identifier of the current session</refpurpose> |
||||||
|
</refnamediv> |
||||||
|
|
||||||
|
<indexterm zone="sql-set-role"> |
||||||
|
<primary>SET ROLE</primary> |
||||||
|
</indexterm> |
||||||
|
|
||||||
|
<refsynopsisdiv> |
||||||
|
<synopsis> |
||||||
|
SET [ SESSION | LOCAL ] ROLE <replaceable class="parameter">rolename</replaceable> |
||||||
|
SET [ SESSION | LOCAL ] ROLE NONE |
||||||
|
RESET ROLE |
||||||
|
</synopsis> |
||||||
|
</refsynopsisdiv> |
||||||
|
|
||||||
|
<refsect1> |
||||||
|
<title>Description</title> |
||||||
|
|
||||||
|
<para> |
||||||
|
This command sets the current user |
||||||
|
identifier of the current SQL-session context to be <replaceable |
||||||
|
class="parameter">rolename</replaceable>. The role name may be |
||||||
|
written as either an identifier or a string literal. Using this |
||||||
|
command, it is possible to either add privileges or restrict one's |
||||||
|
privileges. |
||||||
|
</para> |
||||||
|
|
||||||
|
<para> |
||||||
|
The specified <replaceable class="parameter">rolename</replaceable> |
||||||
|
must be a role that the current session user is a member of. |
||||||
|
(If the session user is a superuser, any role can be selected.) |
||||||
|
</para> |
||||||
|
|
||||||
|
<para> |
||||||
|
The <literal>SESSION</> and <literal>LOCAL</> modifiers act the same |
||||||
|
as for the regular <xref linkend="SQL-SET" endterm="SQL-SET-title"> |
||||||
|
command. |
||||||
|
</para> |
||||||
|
|
||||||
|
<para> |
||||||
|
The <literal>NONE</> and <literal>RESET</> forms reset the current |
||||||
|
user identifier to be the current session user identifier. |
||||||
|
These forms may be executed by any user. |
||||||
|
</para> |
||||||
|
</refsect1> |
||||||
|
|
||||||
|
<refsect1> |
||||||
|
<title>Examples</title> |
||||||
|
|
||||||
|
<programlisting> |
||||||
|
SELECT SESSION_USER, CURRENT_USER; |
||||||
|
|
||||||
|
session_user | current_user |
||||||
|
--------------+-------------- |
||||||
|
peter | peter |
||||||
|
|
||||||
|
SET ROLE 'paul'; |
||||||
|
|
||||||
|
SELECT SESSION_USER, CURRENT_USER; |
||||||
|
|
||||||
|
session_user | current_user |
||||||
|
--------------+-------------- |
||||||
|
peter | paul |
||||||
|
</programlisting> |
||||||
|
</refsect1> |
||||||
|
|
||||||
|
<refsect1> |
||||||
|
<title>Compatibility</title> |
||||||
|
|
||||||
|
<para> |
||||||
|
<productname>PostgreSQL</productname> |
||||||
|
allows identifier syntax (<literal>"rolename"</literal>), while |
||||||
|
the SQL standard requires the role name to be written as a string |
||||||
|
literal. SQL does not allow this command during a transaction; |
||||||
|
<productname>PostgreSQL</productname> does not make this |
||||||
|
restriction because there is no reason to. |
||||||
|
The <literal>SESSION</> and <literal>LOCAL</> modifiers are a |
||||||
|
<productname>PostgreSQL</productname> extension, as is the |
||||||
|
<literal>RESET</> syntax. |
||||||
|
</para> |
||||||
|
</refsect1> |
||||||
|
|
||||||
|
<refsect1> |
||||||
|
<title>See Also</title> |
||||||
|
|
||||||
|
<simplelist type="inline"> |
||||||
|
<member><xref linkend="sql-set-session-authorization" endterm="sql-set-session-authorization-title"></member> |
||||||
|
</simplelist> |
||||||
|
</refsect1> |
||||||
|
</refentry> |
||||||
|
|
||||||
|
<!-- Keep this comment at the end of the file |
||||||
|
Local variables: |
||||||
|
mode:sgml |
||||||
|
sgml-omittag:nil |
||||||
|
sgml-shorttag:t |
||||||
|
sgml-minimize-attributes:nil |
||||||
|
sgml-always-quote-attributes:t |
||||||
|
sgml-indent-step:1 |
||||||
|
sgml-indent-data:t |
||||||
|
sgml-parent-document:nil |
||||||
|
sgml-default-dtd-file:"../reference.ced" |
||||||
|
sgml-exposed-tags:nil |
||||||
|
sgml-local-catalogs:("/usr/lib/sgml/catalog") |
||||||
|
sgml-local-ecat-files:nil |
||||||
|
End: |
||||||
|
--> |
Loading…
Reference in new issue