<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.de.xsl"?>
<modulesynopsis metafile="mod_auth_dbm.xml.meta">

<name>mod_auth_dbm</name>
<description>Benutzerauthentifizierung mit DBM-Dateien</description>
<status>Erweiterung</status>
<sourcefile>mod_auth_dbm.c</sourcefile>
<identifier>auth_dbm_module</identifier>
<compatibility>Verf&uuml;gbar bis zur Version 2.1</compatibility>

<summary>
    <p>Dieses Modul wird f&uuml;r die HTTP Basic-Authentication verwendet, bei
	der die Benutzernamen und Passw&ouml;rter in DBM-Datenbankdateien gespeichert
	werden. Sie bieten eine Alternative zu den einfachen Textdateien des Moduls
	<module>mod_auth</module>.</p>
</summary>

<seealso><directive module="core">AuthName</directive></seealso>
<seealso><directive module="core">AuthType</directive></seealso>
<seealso><directive module="core">Require</directive></seealso>
<seealso><directive module="core">Satisfy</directive></seealso>

<directivesynopsis>
<name>AuthDBMGroupFile</name>
<description>Gibt den Namen der Datenbankdatei mit der Liste der
Benutzergruppen f&uuml;r die Authentifizierung an.</description>
<syntax>AuthDBMGroupFile <var>Dateipfad</var></syntax>
<contextlist><context>directory</context><context>.htaccess</context>
</contextlist>
<override>AuthConfig</override>

<usage>
    <p>Die <directive>AuthDBMGroupFile</directive>-Direktive nennt den Namen
	der DBM-Datei mit der Liste der Benutzergruppen f&uuml;r die
	Authentifizierung. Als <var>Dateipfad</var> wird der absolute Pfad zur
	Gruppendatei angegeben.</p>

    <p>Die Benutzernamen stehen verschl&uuml;sselt in der Gruppendatei. Der
	Eintrag f&uuml;r einen Benutzer besteht aus einer durch Komata getrennten
	Liste der Gruppen, denen der Benutzer angeh&ouml;rt. Dieser Eintrag darf
	weder Leerstellen noch Doppelpunkte enthalten.</p>

    <p>Achtung: Stellen Sie sicher, dass die
    <directive>AuthDBMGroupFile</directive>-Datei au&szlig;erhalb des
	Dokumentverzeichnisses des Webservers untergebracht wird. Legen Sie sie
	<em>niemals</em> in dem Verzeichnis ab, das gesch&uuml;tzt werden soll, da sie
	sonst von Clients heruntergeladen werden kann, falls sie nicht anders
	gesch&uuml;tzt ist.</p>

    <p>Kombination von User- und Group-Datei: In manchen Situationen ist es
	einfacher, eine einzige Datenbank zu unterhalten, die sowohl die notwendigen
	Angaben zum Benutzer als auch zur Gruppe verwaltet. Das erleichtert Programmen
	das Schreiben: Auf diese Weise m&uuml;ssen sie nur in eine einzige DBM-Datei
	schreiben und nur diese eine Datei blockieren. Das wird dadurch erreicht, dass
    das User- und Group-Datei auf die gleiche DBM-Datei verweisen:</p>

    <example>
      AuthDBMGroupFile /www/userbase<br />
      AuthDBMUserFile /www/userbase
    </example>

    <p>Der Schl&uuml;ssel f&uuml;r eine DBM-Datei ist der Benutzername. Das
	Format sieht folgenderma&szlig;en aus:</p>

    <example>
      <var>verschl&uuml;sseltes_Passwort</var>:<var>Gruppenliste</var
	  >[:(ignoriert)]
    </example>

    <p>Der Passwortabschnitt enth&auml;lt wie zuvor das verschl&uuml;sselte
	Passwort gefolgt von einem Doppelpunkt und der durch Komata getrennten
	Gruppenliste. Nach einem weiteren Doppelpunkt k&ouml;nnen weitere Daten
	folgen, die jedoch vom Authentifizierungsmodul ignoriert werden. So ist die
	kombinierte Passwort- und Gruppendatenbank von www.telescope.org
	aufgebaut.</p>
</usage>
</directivesynopsis>

<directivesynopsis>
<name>AuthDBMUserFile</name>
<description>Gibt den Namen der Datenbankdatei mit der Benutzerliste und
den Passw&ouml;rtern f&uuml;r die Authentifizierung an.</description>
<syntax>AuthDBMUserFile <var>Dateipfad</var></syntax>
<contextlist><context>directory</context><context>.htaccess</context>
</contextlist>
<override>AuthConfig</override>

<usage>
    <p>Die <directive>AuthDBMUserFile</directive>-Direktive gibt den Namen der
    DBM-Datei mit der Benutzerliste und den Passw&ouml;rtern f&uuml;r die
	Authentifizierung an. Der <var>Dateipfad</var> ist der absolute Pfad zur
	Benutzerdatei.</p>

    <p>Der Schl&uuml;ssel der Benutzerdatei ist der Benutzername. Der Eintrag
	f&uuml;r einen Benutzer besteht aus dem verschl&uuml;sselten Passwort, auf das
	optional ein Doppelpunkt sowie beliebige Daten folgen k&ouml;nnen. Der
	Doppelpunkt und die folgenden Daten werden vom Server nicht beachtet.</p>

    <note type="warning"><title>Achtung:</title>
      <p>Achten Sie darauf, dass die <directive>AuthDBMUserFile</directive
	  >-Datei au&szlig;erhalb des Dokumentverzeichnisses des Webservers
	  gespeichert wird. Bringen Sie die Datei <em>nicht</em> in dem zu
	  sch&uuml;tzenden Verzeichnis unter, da sie sonst von den Clients
	  heruntergeladen werden kann..</p>
    </note>

    <p>Wichtiger Hinweis zur Kompatibilit&auml;t: Die Implementierung von
    "dbmopen()" in den Apache-Modulen liest die L&auml;nge der Zeichenkette der
	Hash-Werte aus der DBM-Datenstruktur, anstatt darauf zu vetrauen, dass die
	Zeichenfolge mit einem NULL-Byte endet. Einige Anwendungen wie zum Beispiel
	der Netscape-Webserver verlassen sich darauf, dass die Zeichenfolge mit einem
	Null-Byte endet, was was bei Verwendung von DBM-Dateien unter Umst&auml;nden
	Probleme bereiten kann.</p>

    <p>Mit dem Perl-Skript 
    <a href="../programs/dbmmanage.html">dbmmanage</a> k&ouml;nnen Sie
	Passwortdateien im DBM-Format f&uuml;r die Verwendung mit diesem Modul
	erzeugen und bearbeiten.</p>
</usage>
</directivesynopsis>

<directivesynopsis>
<name>AuthDBMType</name>
<description>Gibt den Typ der Datenbankdatei an, in der Passw&ouml;rter
gespeichert werden.</description>
<syntax>AuthDBMType Voreinstellung|SDBM|GDBM|NDBM|DB</syntax>
<default>AuthDBMType Voreinstellung</default>
<contextlist><context>directory</context><context>.htaccess</context>
</contextlist>
<override>AuthConfig</override>
<compatibility>Verf&uuml;gbar ab Version 2.0.30</compatibility>

<usage>
    <p>Gibt den Typ der Datenbankdatei an, in der die Passw&ouml;rter
	gespeichert werden. Die Voreinstellung wird beim Kompilieren festgelegt. Die
    Verf&uuml;gbarkeit anderer Datenbankdateitypen h&auml;ngt auch von den
	Einstellungen beim <a href="../install.html#dbm">Kompilieren</a> ab.</p>

    <p>Es ist &auml;u&szlig;erst wichtig, dass das Programm, mit dem Sie die
	Passwortdateien erstellen, so konfiguriert ist, dass es den gleichen
	Datenbanktyp verwendet.</p>
</usage>
</directivesynopsis>

<directivesynopsis>
<name>AuthDBMAuthoritative</name>
<description>Legt fest, ob vom Authentifizierungsmodul nicht gefundene User-IDs
an Module mit niedriger Priorit&auml;t weitergereicht werden.</description>
<syntax>AuthDBMAuthoritative On|Off</syntax>
<default>AuthDBMAuthoritative On</default>
<contextlist><context>directory</context><context>.htaccess</context>
</contextlist>
<override>AuthConfig</override>

<usage>
    <p>Wird die <directive>AuthDBMAuthoritative</directive>-Direktive explizit
	auf <code>Off</code> gesetzt, werden die Authentifizierungsdaten an Module
	auf niedrigerer Ebenen weitergereicht (wie in der Datei <code>modules.c</code>
	definiert), wenn <strong>keine User-ID</strong> oder <strong>Regel</strong>
	f&uuml;r die angegebene User-ID zutrifft. Ist eine entsprechende User-ID
	und/oder Regel angegeben, werden die &uuml;blichen Passwort- und
	Zugriffs&uuml;berpr&uuml;fungen durchgef&uuml;hrt und beim Fehlschlag die
	Meldung "Authentication Required" zur&uuml;ckgegeben.</p>

    <p>Taucht eine User-ID in der Datenbank mehrerer Module auf oder trifft
	eine g&uuml;ltige <directive module="core">Require</directive>-Direktive
	f&uuml;r mehr als ein Modul zu, dann &uuml;berpr&uuml;ft das erste Modul die
	Zugangsdaten und reicht keine Zugriffsrechte weiter, unabh&auml;ngig davon, 
    wie die Einstellungen der Direktive <directive
	>AuthDBMAuthoritative</directive> lauten.</p>

    <p>Dies kommt h&auml;ufig in Verbindung mit einem der Grundmodule wie
	<module>mod_auth</module> zum Einsatz. Dieses DBM-Modul bietet eine Vielzahl
	von M&ouml;glichkeiten zur Benutzerpr&uuml;fung. Einige wenige
	(administrative) Zugriffe fallen bei einer gut gesch&uuml;tzten <code
	>.htpasswd</code>-Datei auf eine niedrigere Ebene durch.</p>

    <p>Gem&auml;&szlig; Voreinstellung wird die Kontrolle nicht weitergereicht
	und ein unbekannter Benutzername oder eine unbekannte Regel f&uuml;hren zur
	Antwort "Authentication Required". Wird keine Angabe gemacht, bleibt das
	System daher gesch&uuml;tzt und erzwingt ein NCSA entsprechendes
	Verhalten.</p>

    <note type="warning"><title>Achtung:</title>
      <p>Beachten Sie die damit verbundenen Implikationen, wenn Sie zulassen,
      dass ein Benutzer in seiner .htaccess-Datei durchrutscht und
	  &uuml;berpr&uuml;fen Sie, ob das tats&auml;chlich gewollt ist. Im
	  Allgemeinen ist es einfacher, eine einzelne .htpasswd-Datei an Stelle
	  einer Datenbank zu sch&uuml;tzen.</p>
    </note>
</usage>
</directivesynopsis>

</modulesynopsis>

