Blame docs/manual/mod/mod_authz_dbm.html.en

Packit 90a5c9
Packit 90a5c9
Packit 90a5c9
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"><head>
Packit 90a5c9
<meta content="text/html; charset=ISO-8859-1" http-equiv="Content-Type" />
Packit 90a5c9
Packit 90a5c9
        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Packit 90a5c9
              This file is generated from xml source: DO NOT EDIT
Packit 90a5c9
        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Packit 90a5c9
      -->
Packit 90a5c9
<title>mod_authz_dbm - Apache HTTP Server Version 2.4</title>
Packit 90a5c9
<link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
Packit 90a5c9
<link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
Packit 90a5c9
<link href="../style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" /><link rel="stylesheet" type="text/css" href="../style/css/prettify.css" />
Packit 90a5c9
<script src="../style/scripts/prettify.min.js" type="text/javascript">
Packit 90a5c9
</script>
Packit 90a5c9
Packit 90a5c9
<link href="../images/favicon.ico" rel="shortcut icon" /></head>
Packit 90a5c9
<body>
Packit 90a5c9
Packit 90a5c9

Modules | Directives | FAQ | Glossary | Sitemap

Packit 90a5c9

Apache HTTP Server Version 2.4

Packit 90a5c9
Packit 90a5c9
<-
Packit 90a5c9
Packit 90a5c9
Apache > HTTP Server > Documentation > Version 2.4 > Modules
Packit 90a5c9
Packit 90a5c9

Apache Module mod_authz_dbm

Packit 90a5c9
Packit 90a5c9

Available Languages:  en  |

Packit 90a5c9
 fr  |
Packit 90a5c9
 ko 

Packit 90a5c9
Packit 90a5c9
Description:Group authorization using DBM files
Packit 90a5c9
Status:Extension
Packit 90a5c9
Module Identifier:authz_dbm_module
Packit 90a5c9
Source File:mod_authz_dbm.c
Packit 90a5c9
Compatibility:Available in Apache 2.1 and later
Packit 90a5c9

Summary

Packit 90a5c9
Packit 90a5c9
    

This module provides authorization capabilities so that

Packit 90a5c9
       authenticated users can be allowed or denied access to portions
Packit 90a5c9
       of the web site by group membership. Similar functionality is
Packit 90a5c9
       provided by mod_authz_groupfile.

Packit 90a5c9
Packit 90a5c9
Support Apache!

Topics

Packit 90a5c9
    Packit 90a5c9
  • The Require Directives
  • Packit 90a5c9
  • Example usage
  • Packit 90a5c9

    Directives

    Packit 90a5c9
      Packit 90a5c9
    • AuthDBMGroupFile
    • Packit 90a5c9
    • AuthzDBMType
    • Packit 90a5c9
      Packit 90a5c9

      Bugfix checklist

      See also

      Packit 90a5c9
        Packit 90a5c9
      • Require
      • Packit 90a5c9
      • Comments
      • Packit 90a5c9
        top
        Packit 90a5c9
        Packit 90a5c9

        The Require Directives

        Packit 90a5c9
        Packit 90a5c9
            

        Apache's Require

        Packit 90a5c9
            directives are used during the authorization phase to ensure that
        Packit 90a5c9
            a user is allowed to access a resource.  mod_authz_dbm extends the
        Packit 90a5c9
            authorization types with dbm-group.

        Packit 90a5c9
        Packit 90a5c9
            

        Since v2.4.8, expressions are supported

        Packit 90a5c9
            within the DBM require directives.

        Packit 90a5c9
        Packit 90a5c9

        Require dbm-group

        Packit 90a5c9
        Packit 90a5c9
            

        This directive specifies group membership that is required for the

        Packit 90a5c9
            user to gain access.

        Packit 90a5c9
        Packit 90a5c9
            
        Require dbm-group admin
        Packit 90a5c9
        Packit 90a5c9
        Packit 90a5c9
        Packit 90a5c9
        Packit 90a5c9

        Require dbm-file-group

        Packit 90a5c9
        Packit 90a5c9
            

        When this directive is specified, the user must be a member of the group

        Packit 90a5c9
            assigned to the file being accessed.

        Packit 90a5c9
        Packit 90a5c9
            
        Require dbm-file-group
        Packit 90a5c9
        Packit 90a5c9
        Packit 90a5c9
        Packit 90a5c9
        Packit 90a5c9
        top
        Packit 90a5c9
        Packit 90a5c9

        Example usage

        Packit 90a5c9
        Packit 90a5c9

        Note that using mod_authz_dbm requires you to require dbm-group

        Packit 90a5c9
        instead of group:
        Packit 90a5c9

        Packit 90a5c9
        <Directory "/foo/bar">
        Packit 90a5c9
          AuthType Basic
        Packit 90a5c9
          AuthName "Secure Area"
        Packit 90a5c9
          AuthBasicProvider dbm
        Packit 90a5c9
          AuthDBMUserFile "site/data/users"
        Packit 90a5c9
          AuthDBMGroupFile "site/data/users"
        Packit 90a5c9
          Require dbm-group admin
        Packit 90a5c9
        </Directory>
        Packit 90a5c9
        Packit 90a5c9
        Packit 90a5c9
        top
        Packit 90a5c9
        Packit 90a5c9
        Packit 90a5c9
        Description:Sets the name of the database file containing the list
        Packit 90a5c9
        of user groups for authorization
        Packit 90a5c9
        Syntax:AuthDBMGroupFile file-path
        Packit 90a5c9
        Context:directory, .htaccess
        Packit 90a5c9
        Override:AuthConfig
        Packit 90a5c9
        Status:Extension
        Packit 90a5c9
        Module:mod_authz_dbm
        Packit 90a5c9
        Packit 90a5c9
            

        The AuthDBMGroupFile directive sets the

        Packit 90a5c9
            name of a DBM file containing the list of user groups for user
        Packit 90a5c9
            authorization.  File-path is the absolute path to the
        Packit 90a5c9
            group file.

        Packit 90a5c9
        Packit 90a5c9
            

        The group file is keyed on the username. The value for a

        Packit 90a5c9
            user is a comma-separated list of the groups to which the users
        Packit 90a5c9
            belongs. There must be no whitespace within the value, and it
        Packit 90a5c9
            must never contain any colons.

        Packit 90a5c9
        Packit 90a5c9
            

        Security

        Packit 90a5c9
              

        Make sure that the AuthDBMGroupFile is

        Packit 90a5c9
              stored outside the document tree of the web-server. Do
        Packit 90a5c9
              not put it in the directory that it protects.
        Packit 90a5c9
              Otherwise, clients will be able to download the
        Packit 90a5c9
              AuthDBMGroupFile unless otherwise
        Packit 90a5c9
              protected.

        Packit 90a5c9
            
        Packit 90a5c9
        Packit 90a5c9
            

        Combining Group and Password DBM files: In some cases it is

        Packit 90a5c9
            easier to manage a single database which contains both the
        Packit 90a5c9
            password and group details for each user. This simplifies any
        Packit 90a5c9
            support programs that need to be written: they now only have to
        Packit 90a5c9
            deal with writing to and locking a single DBM file. This can be
        Packit 90a5c9
            accomplished by first setting the group and password files to
        Packit 90a5c9
            point to the same DBM:

        Packit 90a5c9
        Packit 90a5c9
            
        AuthDBMGroupFile "/www/userbase"
        Packit 90a5c9
        AuthDBMUserFile "/www/userbase"
        Packit 90a5c9
        Packit 90a5c9
        Packit 90a5c9
            

        The key for the single DBM is the username. The value consists

        Packit 90a5c9
            of

        Packit 90a5c9
        Packit 90a5c9
            

        Packit 90a5c9
              Encrypted Password : List of Groups [ : (ignored) ]
        Packit 90a5c9
            

        Packit 90a5c9
        Packit 90a5c9
            

        The password section contains the encrypted

        Packit 90a5c9
            password as before. This is followed by a colon and the comma
        Packit 90a5c9
            separated list of groups. Other data may optionally be left in the
        Packit 90a5c9
            DBM file after another colon; it is ignored by the authorization
        Packit 90a5c9
            module. This is what www.telescope.org uses for its combined
        Packit 90a5c9
            password and group database.

        Packit 90a5c9
        Packit 90a5c9
        Packit 90a5c9
        top
        Packit 90a5c9
        Packit 90a5c9
        Packit 90a5c9
        Description:Sets the type of database file that is used to
        Packit 90a5c9
        store list of user groups
        Packit 90a5c9
        Syntax:AuthzDBMType default|SDBM|GDBM|NDBM|DB
        Packit 90a5c9
        Default:AuthzDBMType default
        Packit 90a5c9
        Context:directory, .htaccess
        Packit 90a5c9
        Override:AuthConfig
        Packit 90a5c9
        Status:Extension
        Packit 90a5c9
        Module:mod_authz_dbm
        Packit 90a5c9
        Packit 90a5c9
            

        Sets the type of database file that is used to store the list

        Packit 90a5c9
            of user groups.
        Packit 90a5c9
            The default database type is determined at compile time.  The
        Packit 90a5c9
            availability of other types of database files also depends on
        Packit 90a5c9
            compile-time settings.

        Packit 90a5c9
        Packit 90a5c9
            

        It is crucial that whatever program you use to create your group

        Packit 90a5c9
            files is configured to use the same type of database.

        Packit 90a5c9
        Packit 90a5c9
        Packit 90a5c9
        Packit 90a5c9
        Packit 90a5c9

        Available Languages:  en  |

        Packit 90a5c9
         fr  |
        Packit 90a5c9
         ko 

        Packit 90a5c9
        top

        Comments

        Notice:
        This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our mailing lists.
        Packit 90a5c9
        <script type="text/javascript">
        Packit 90a5c9
        var comments_shortname = 'httpd';
        Packit 90a5c9
        var comments_identifier = 'http://httpd.apache.org/docs/2.4/mod/mod_authz_dbm.html';
        Packit 90a5c9
        (function(w, d) {
        Packit 90a5c9
            if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
        Packit 90a5c9
                d.write('
        <\/div>');
        Packit 90a5c9
                var s = d.createElement('script');
        Packit 90a5c9
                s.type = 'text/javascript';
        Packit 90a5c9
                s.async = true;
        Packit 90a5c9
                s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
        Packit 90a5c9
                (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
        Packit 90a5c9
            }
        Packit 90a5c9
            else { 
        Packit 90a5c9
                d.write('
        Comments are disabled for this page at the moment.<\/div>');
        Packit 90a5c9
            }
        Packit 90a5c9
        })(window, document);
        Packit 90a5c9
        //--></script>
        Packit 90a5c9

        Copyright 2018 The Apache Software Foundation.
        Licensed under the Apache License, Version 2.0.

        Packit 90a5c9

        Modules | Directives | FAQ | Glossary | Sitemap

        <script type="text/javascript">
        Packit 90a5c9
        if (typeof(prettyPrint) !== 'undefined') {
        Packit 90a5c9
            prettyPrint();
        Packit 90a5c9
        }
        Packit 90a5c9
        //--></script>
        Packit 90a5c9
        </body></html>