Add new framework for smb.conf(5). Please read README before trying to compile.
[Samba/gebeck_regimport.git] / docs / docbook / smbdotconf / security / passdbbackend.xml
blob918c802e7899653e29453935360270d7b54b137d
1 <samba:parameter xmlns:samba="http://samba.org/common">
2                 <term><anchor id="PASSDBBACKEND"/>passdb backend (G)</term>
3                 <listitem><para>This option allows the administrator to chose which backends to retrieve and store passwords with. This allows (for example) both 
4                 smbpasswd and tdbsam to be used without a recompile. 
5                 Multiple backends can be specified, separated by spaces. The backends will be searched in the order they are specified. New users are always added to the first backend specified.
6                 Experimental backends must still be selected
7                 (eg --with-tdbsam) at configure time.
8                 </para>
10                 <para>This parameter is in two parts, the backend's name, and a 'location'
11                 string that has meaning only to that particular backed.  These are separated
12                 by a : character.</para>
14                 <para>Available backends can include:
15                 <itemizedlist>
16                         <listitem><para><command moreinfo="none">smbpasswd</command> - The default smbpasswd
17                         backend.  Takes a path to the smbpasswd file as an optional argument.</para></listitem>
18                         
19                         <listitem><para><command moreinfo="none">smbpasswd_nua</command> - The smbpasswd
20                         backend, but with support for 'not unix accounts'.  
21                         Takes a path to the smbpasswd file as an optional argument.</para>
22                         <para>See also <link linkend="NONUNIXACCOUNTRANGE">
23                         <parameter moreinfo="none">non unix account range</parameter></link></para></listitem>
25                         <listitem><para><command moreinfo="none">tdbsam</command> - The TDB based password storage
26                         backend.  Takes a path to the TDB as an optional argument (defaults to passdb.tdb 
27                         in the <link linkend="PRIVATEDIR">
28                         <parameter moreinfo="none">private dir</parameter></link> directory.</para></listitem>
29                         
30                         <listitem><para><command moreinfo="none">tdbsam_nua</command> - The TDB based password storage
31                         backend, with non unix account support.  Takes a path to the TDB as an optional argument (defaults to passdb.tdb 
32                         in the <link linkend="PRIVATEDIR">
33                         <parameter moreinfo="none">private dir</parameter></link> directory.</para>
34                         <para>See also <link linkend="NONUNIXACCOUNTRANGE">
35                         <parameter moreinfo="none">non unix account range</parameter></link></para></listitem>
36                         
37                         <listitem><para><command moreinfo="none">ldapsam</command> - The LDAP based passdb 
38                         backend.  Takes an LDAP URL as an optional argument (defaults to 
39                         <command moreinfo="none">ldap://localhost</command>)</para></listitem>
40                         
41                         <listitem><para><command moreinfo="none">ldapsam_nua</command> - The LDAP based passdb 
42                         backend, with non unix account support.  Takes an LDAP URL as an optional argument (defaults to 
43                         <command moreinfo="none">ldap://localhost</command>)</para>
45                         <para>Note:  In this module, any account without a matching POSIX account is regarded
46                         as 'non unix'.  </para>
48                         <para>See also <link linkend="NONUNIXACCOUNTRANGE">
49                         <parameter moreinfo="none">non unix account
50                         range</parameter></link></para>
51                         
52                         <para>LDAP connections should be secured where
53                         possible.  This may be done using either
54                         Start-TLS (see <link linkend="LDAPSSL">
55                         <parameter moreinfo="none">ldap ssl</parameter></link>) or by
56                         specifying <parameter moreinfo="none">ldaps://</parameter> in
57                         the URL argument.  
58                         </para></listitem>
59                         
60                         <listitem><para><command moreinfo="none">nisplussam</command> - The NIS+ based passdb backend. Takes name NIS domain as an optional argument. Only works with sun NIS+ servers. </para></listitem>
61                         
62                         <listitem><para><command moreinfo="none">plugin</command> - Allows Samba to load an 
63                         arbitary passdb backend from the .so specified as a compulsary argument.
64                         </para>
66                         <para>Any characters after the (optional) second : are passed to the plugin
67                         for its own processing</para>
68                         </listitem>
69                 
70                         <listitem><para><command moreinfo="none">unixsam</command> - Allows samba to map all (other) available unix users</para>
72                         <para>This backend uses the standard unix database for retrieving users. Users included 
73                         in this pdb are NOT listed in samba user listings and users included in this pdb won't be 
74                         able to login. The use of this backend is to always be able to display the owner of a file 
75                         on the samba server - even when the user doesn't have a 'real' samba account in one of the 
76                         other passdb backends.
77                         </para>
79                         <para>This backend should always be the last backend listed, since it contains all users in 
80                         the unix passdb and might 'override' mappings if specified earlier. It's meant to only return 
81                         accounts for users that aren't covered by the previous backends.</para>
82                         </listitem>
83                 </itemizedlist>
84                 </para>
86                 <para>Default: <command moreinfo="none">passdb backend = smbpasswd unixsam</command></para>
87                 <para>Example: <command moreinfo="none">passdb backend = tdbsam:/etc/samba/private/passdb.tdb smbpasswd:/etc/samba/smbpasswd unixsam</command></para>
88                 <para>Example: <command moreinfo="none">passdb backend = ldapsam_nua:ldaps://ldap.example.com unixsam</command></para>
89                 <para>Example: <command moreinfo="none">passdb backend = plugin:/usr/local/samba/lib/my_passdb.so:my_plugin_args tdbsam:/etc/samba/private/passdb.tdb</command></para>
90                 </listitem>
91                 </samba:parameter>