


DBMMANAGE2(1)               dbmmanage2              DBMMANAGE2(1)


NAME
       dbmmanage2 - Manage user authentication files in DBM format


SYNOPSIS
       dbmmanage2  [ encoding ] filename add|adduser|check|delete|update user-
       name [ encpasswd [ group[,group...] [ comment ] ] ]


       dbmmanage2 filename view [ username ]


       dbmmanage2 filename import



SUMMARY
       dbmmanage2 is used to create and update the DBM format  files  used  to
       store usernames and password for basic authentication of HTTP users via
       mod_authn_dbm. Resources available from the Apache HTTP server  can  be
       restricted to just the users listed in the files created by dbmmanage2.
       This program can only be used when the usernames are stored  in  a  DBM
       file. To use a flat-file database see htpasswd2.


       This  manual page only lists the command line arguments. For details of
       the directives necessary to configure user authentication in httpd2 see
       the  httpd2  manual, which is part of the Apache distribution or can be
       found at http://httpd.apache.org/.



OPTIONS
       filename
              The filename of the DBM format file. Usually without the  exten-
              sion .db, .pag, or .dir.

       username
              The  user  for  which the operations are performed. The username
              may not contain a colon (:).

       encpasswd
              This is the already encrypted password to use for the update and
              add  commands.  You  may  use  a  hyphen  (-) if you want to get
              prompted for the password, but fill in  the  fields  afterwards.
              Additionally  when  using the update command, a period (.) keeps
              the original password untouched.

       group  A group, which the user is member of. A groupname may  not  con-
              tain  a colon (:). You may use a hyphen (-) if you don't want to
              assign the user to a group, but fill in the comment field. Addi-
              tionally  when  using the update command, a period (.) keeps the
              original groups untouched.




Apache HTTP Server          2004-12-10                          1





DBMMANAGE2(1)               dbmmanage2              DBMMANAGE2(1)


       comment
              This is the place for your opaque comments about the user,  like
              realname,  mailaddress  or  such  things. The server will ignore
              this field.


   Encodings
       -d     crypt encryption (default, except on Win32, Netware)

       -m     MD5 encryption (default on Win32, Netware)

       -s     SHA1 encryption

       -p     plaintext (not recommended)


   Commands
       add    Adds an entry for username to filename using the encrypted pass-
              word  encpasswd.  dbmmanage2  passwords.dat  add  rbowen  foKnt-
              nEF3KSXA

       adduser
              Asks for a password and then adds an entry for username to file-
              name. dbmmanage2 passwords.dat adduser krietz

       check  Asks  for  a password and then checks if username is in filename
              and if it's password matches the specified one. dbmmanage2 pass-
              words.dat check rbowen

       delete Deletes  the  username  entry  from  filename.  dbmmanage2 pass-
              words.dat delete rbowen

       import Reads username:password entries (one per line)  from  STDIN  and
              adds them to filename. The passwords already have to be crypted.

       update Same as the adduser command, except that it makes sure  username
              already  exists  in  filename.  dbmmanage2  passwords.dat update
              rbowen

       view   Just displays the contents of the DBM file.  If  you  specify  a
              username,  it  displays  the  particular record only. dbmmanage2
              passwords.dat view


BUGS
       One should be aware that there are a number of different DBM file  for-
       mats in existence, and with all likelihood, libraries for more than one
       format may exist on your system. The three primary examples  are  SDBM,
       NDBM,  the  GNU  project's  GDBM, and Berkeley DB 2. Unfortunately, all
       these libraries use different file formats, and you must make sure that
       the  file  format  used  by filename is the same format that dbmmanage2
       expects to see. dbmmanage2 currently has no  way  of  determining  what
       type  of  DBM  file it is looking at. If used against the wrong format,
       will simply return nothing, or may create a different DBM file  with  a



Apache HTTP Server          2004-12-10                          2





DBMMANAGE2(1)               dbmmanage2              DBMMANAGE2(1)


       different  name,  or  at worst, it may corrupt the DBM file if you were
       attempting to write to it.


       dbmmanage2 has a list of DBM format preferences, defined by  the  @Any-
       DBM::ISA  array  near the beginning of the program. Since we prefer the
       Berkeley DB 2 file format, the order in which dbmmanage2 will look  for
       system  libraries is Berkeley DB 2, then NDBM, then GDBM and then SDBM.
       The first library found will be the library dbmmanage2 will attempt  to
       use  for all DBM file transactions. This ordering is slightly different
       than the standard @AnyDBM::ISA ordering in Perl, as well as the  order-
       ing  used by the simple dbmopen() call in Perl, so if you use any other
       utilities to manage your DBM files, they must also follow this  prefer-
       ence  ordering.  Similar  care must be taken if using programs in other
       languages, like C, to access these files.


       One can usually use the file program supplied with most Unix systems to
       see what format a DBM file is in.






































Apache HTTP Server          2004-12-10                          3


