Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to content

Commit 3de791e

Browse files
committed
Recommend include_realm=1 in docs
As discussed, the default setting of include_realm=0 can be dangerous in multi-realm environments because it is then impossible to differentiate users with the same username but who are from two different realms. Recommend include_realm=1 and note that the default setting may change in a future version of PostgreSQL and therefore users may wish to explicitly set include_realm to avoid issues while upgrading.
1 parent 596fb5a commit 3de791e

File tree

1 file changed

+32
-9
lines changed

1 file changed

+32
-9
lines changed

doc/src/sgml/client-auth.sgml

Lines changed: 32 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -951,7 +951,12 @@ omicron bryanh guest1
951951
If set to 1, the realm name from the authenticated user
952952
principal is included in the system user name that's passed through
953953
user name mapping (<xref linkend="auth-username-maps">). This is
954-
useful for handling users from multiple realms.
954+
the recommended configuration as, otherwise, it is impossible to
955+
differentiate users with the same username who are from different
956+
realms. The default for this parameter is 0 (meaning to not include
957+
the realm in the system user name) but may change to 1 in a future
958+
version of <productname>PostgreSQL</productname>. Users can set it
959+
explicitly to avoid any issues when upgrading.
955960
</para>
956961
</listitem>
957962
</varlistentry>
@@ -961,12 +966,16 @@ omicron bryanh guest1
961966
<listitem>
962967
<para>
963968
Allows for mapping between system and database user names. See
964-
<xref linkend="auth-username-maps"> for details. For a Kerberos
965-
principal <literal>username/hostbased@EXAMPLE.COM</literal>, the
966-
user name used for mapping is <literal>username/hostbased</literal>
967-
if <literal>include_realm</literal> is disabled, and
968-
<literal>username/hostbased@EXAMPLE.COM</literal> if
969-
<literal>include_realm</literal> is enabled.
969+
<xref linkend="auth-username-maps"> for details. For a GSSAPI/Kerberos
970+
principal, such as <literal>username@EXAMPLE.COM</literal> (or, less
971+
commonly, <literal>username/hostbased@EXAMPLE.COM</literal>), the
972+
default user name used for mapping is
973+
<literal>username</literal> (or <literal>username/hostbased</literal>,
974+
respectfully), unless <literal>include_realm</literal> has been set to
975+
1 (as recommended, see above), in which case
976+
<literal>username@EXAMPLE.COM</literal> (or
977+
<literal>username/hostbased@EXAMPLE.COM</literal>)
978+
is what is seen as the system username when mapping.
970979
</para>
971980
</listitem>
972981
</varlistentry>
@@ -1024,7 +1033,12 @@ omicron bryanh guest1
10241033
If set to 1, the realm name from the authenticated user
10251034
principal is included in the system user name that's passed through
10261035
user name mapping (<xref linkend="auth-username-maps">). This is
1027-
useful for handling users from multiple realms.
1036+
the recommended configuration as, otherwise, it is impossible to
1037+
differentiate users with the same username who are from different
1038+
realms. The default for this parameter is 0 (meaning to not include
1039+
the realm in the system user name) but may change to 1 in a future
1040+
version of <productname>PostgreSQL</productname>. Users can set it
1041+
explicitly to avoid any issues when upgrading.
10281042
</para>
10291043
</listitem>
10301044
</varlistentry>
@@ -1034,7 +1048,16 @@ omicron bryanh guest1
10341048
<listitem>
10351049
<para>
10361050
Allows for mapping between system and database user names. See
1037-
<xref linkend="auth-username-maps"> for details.
1051+
<xref linkend="auth-username-maps"> for details. For a SSPI/Kerberos
1052+
principal, such as <literal>username@EXAMPLE.COM</literal> (or, less
1053+
commonly, <literal>username/hostbased@EXAMPLE.COM</literal>), the
1054+
default user name used for mapping is
1055+
<literal>username</literal> (or <literal>username/hostbased</literal>,
1056+
respectfully), unless <literal>include_realm</literal> has been set to
1057+
1 (as recommended, see above), in which case
1058+
<literal>username@EXAMPLE.COM</literal> (or
1059+
<literal>username/hostbased@EXAMPLE.COM</literal>)
1060+
is what is seen as the system username when mapping.
10381061
</para>
10391062
</listitem>
10401063
</varlistentry>

0 commit comments

Comments
 (0)