<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>2.10. OpenDocument-Vorlagen</title><link rel="stylesheet" type="text/css" href="style.css"><meta name="generator" content="DocBook XSL Stylesheets V1.76.1-RC2"><link rel="home" href="index.html" title="Lx-Office: Installation, Konfiguration, Entwicklung"><link rel="up" href="ch02.html" title="Kapitel 2. Installation und Grundkonfiguration"><link rel="prev" href="ch02s09.html" title="2.9. Drucken mit Lx-Office"><link rel="next" href="ch02s11.html" title="2.11. Konfiguration zur Einnahmenüberschussrechnung/Bilanzierung: EUR"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">2.10. OpenDocument-Vorlagen</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch02s09.html">Zurück</a> </td><th width="60%" align="center">Kapitel 2. Installation und Grundkonfiguration</th><td width="20%" align="right"> <a accesskey="n" href="ch02s11.html">Weiter</a></td></tr></table><hr></div><div class="sect1" title="2.10. OpenDocument-Vorlagen"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="OpenDocument-Vorlagen"></a>2.10. OpenDocument-Vorlagen</h2></div></div></div><p>Lx-Office unterstützt die Verwendung von Vorlagen im
- OpenDocument-Format, wie es OpenOffice.org ab Version 2 erzeugt.
- Lx-Office kann dabei sowohl neue OpenDocument-Dokumente als auch aus
- diesen direkt PDF-Dateien erzeugen. Um die Unterstützung von
- OpenDocument-Vorlagen zu aktivieren muss in der Datei
- <code class="filename">config/lx_office.conf</code> die Variable
- <code class="literal">opendocument</code> im Abschnitt
- <code class="literal">print_templates</code> auf ‘<code class="literal">1</code>’ stehen.
- Dieses ist die Standardeinstellung.</p><p>Weiterhin muss in der Datei
- <code class="filename">config/lx_office.conf</code> die Variable
- <code class="literal">dbcharset</code> im Abschnitt <code class="literal">system</code> auf
- die Zeichenkodierung gesetzt werden, die auch bei der Speicherung der
- Daten in der Datenbank verwendet wird. Diese ist in den meisten Fällen
- "UTF-8".</p><p>Während die Erzeugung von reinen OpenDocument-Dateien keinerlei
- weitere Software benötigt, wird zur Umwandlung dieser Dateien in PDF
- OpenOffice.org benötigt. Soll dieses Feature genutzt werden, so muss
- neben OpenOffice.org ab Version 2 auch der “X virtual frame buffer”
- (xvfb) installiert werden. Bei Debian ist er im Paket “xvfb” enthalten.
- Andere Distributionen enthalten ihn in anderen Paketen.</p><p>Nach der Installation müssen in der Datei
- <code class="filename">config/lx_config.conf</code> zwei weitere Variablen
- angepasst werden: <code class="literal">openofficeorg_writer</code> muss den
- vollständigen Pfad zur OpenOffice.org Writer-Anwendung enthalten.
- <code class="literal">xvfb</code> muss den Pfad zum “X virtual frame buffer”
- enthalten. Beide stehen im Abschnitt
- <code class="literal">applications</code>.</p><p>Zusätzlich gibt es zwei verschiedene Arten, wie Lx-Office mit
- OpenOffice kommuniziert. Die erste Variante, die benutzt wird, wenn die
- Variable <code class="literal">$openofficeorg_daemon</code> gesetzt ist, startet
- ein OpenOffice, das auch nach der Umwandlung des Dokumentes gestartet
- bleibt. Bei weiteren Umwandlungen wird dann diese laufende Instanz
- benutzt. Der Vorteil ist, dass die Zeit zur Umwandlung deutlich
- reduziert wird, weil nicht für jedes Dokument ein OpenOffice gestartet
- werden muss. Der Nachteil ist, dass diese Methode Python und die
- Python-UNO-Bindings benötigt, die Bestandteil von OpenOffice 2
- sind.</p><p>Ist <code class="literal">$openofficeorg_daemon</code> nicht gesetzt, so
- wird für jedes Dokument OpenOffice neu gestartet und die Konvertierung
- mit Hilfe eines Makros durchgeführt. Dieses Makro muss in der
- Dokumentenvorlage enthalten sein und
- “Standard.Conversion.ConvertSelfToPDF()” heißen. Die Beispielvorlage
- ‘<code class="literal">templates/mastertemplates/German/invoice.odt</code>’
- enthält ein solches Makro, das in jeder anderen Dokumentenvorlage
- ebenfalls enthalten sein muss.</p><p>Als letztes muss herausgefunden werden, welchen Namen
- OpenOffice.org Writer dem Verzeichnis mit den Benutzereinstellungen
- gibt. Unter Debian ist dies momentan
- <code class="literal">~/.openoffice.org2</code>. Sollte der Name bei Ihrer
- OpenOffice.org-Installation anders sein, so muss das Verzeichnis
- <code class="literal">users/.openoffice.org2</code> entsprechend umbenannt werden.
- Ist der Name z.B. einfach nur <code class="literal">.openoffice</code>, so wäre
- folgender Befehl auszuführen:</p><p>
- <code class="literal">mv users/.openoffice.org2
- users/.openoffice</code>
- </p><p>Dieses Verzeichnis, wie auch das komplette
- <code class="literal">users</code>-Verzeichnis, muss vom Webserver beschreibbar
- sein. Dieses wurde bereits erledigt (siehe <a class="xref" href="ch02s02.html" title="2.2. Manuelle Installation des Programmpaketes">Manuelle Installation des Programmpaketes</a>), kann aber
- erneut überprüft werden, wenn die Konvertierung nach PDF
- fehlschlägt.</p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch02s09.html">Zurück</a> </td><td width="20%" align="center"><a accesskey="u" href="ch02.html">Nach oben</a></td><td width="40%" align="right"> <a accesskey="n" href="ch02s11.html">Weiter</a></td></tr><tr><td width="40%" align="left" valign="top">2.9. Drucken mit Lx-Office </td><td width="20%" align="center"><a accesskey="h" href="index.html">Zum Anfang</a></td><td width="40%" align="right" valign="top"> 2.11. Konfiguration zur Einnahmenüberschussrechnung/Bilanzierung:
- EUR</td></tr></table></div></body></html>
\ No newline at end of file
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+ <title>2.10. Benutzerauthentifizierung und Administratorpasswort</title><link rel="stylesheet" type="text/css" href="style.css"><meta name="generator" content="DocBook XSL Stylesheets V1.76.1-RC2"><link rel="home" href="index.html" title="kivitendo 3.9.2: Installation, Konfiguration, Entwicklung"><link rel="up" href="ch02.html" title="Kapitel 2. Installation und Grundkonfiguration"><link rel="prev" href="ch02s09.html" title="2.9. Konfiguration der Hintergrund-Jobs"><link rel="next" href="ch02s11.html" title="2.11. Mandanten-, Benutzer- und Gruppenverwaltung"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">2.10. Benutzerauthentifizierung und Administratorpasswort</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch02s09.html">Zurück</a> </td><th width="60%" align="center">Kapitel 2. Installation und Grundkonfiguration</th><td width="20%" align="right"> <a accesskey="n" href="ch02s11.html">Weiter</a></td></tr></table><hr></div><div class="sect1" title="2.10. Benutzerauthentifizierung und Administratorpasswort"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="Benutzerauthentifizierung-und-Administratorpasswort"></a>2.10. Benutzerauthentifizierung und Administratorpasswort</h2></div></div></div><p>Informationen über die Einrichtung der Benutzerauthentifizierung,
+ über die Verwaltung von Gruppen und weitere Einstellungen</p><div class="sect2" title="2.10.1. Grundlagen zur Benutzerauthentifizierung"><div class="titlepage"><div><div><h3 class="title"><a name="Grundlagen-zur-Benutzerauthentifizierung"></a>2.10.1. Grundlagen zur Benutzerauthentifizierung</h3></div></div></div><p>kivitendo verwaltet die Benutzerinformationen in einer
+ Datenbank, die im folgenden “Authentifizierungsdatenbank” genannt
+ wird. Für jeden Benutzer kann dort eine eigene Datenbank für die
+ eigentlichen Finanzdaten hinterlegt sein. Diese beiden Datenbanken
+ können, müssen aber nicht unterschiedlich sein.</p><p>Im einfachsten Fall gibt es für kivitendo nur eine einzige
+ Datenbank, in der sowohl die Benutzerinformationen als auch die Daten
+ abgelegt werden.</p><p>Zusätzlich ermöglicht es kivitendo, dass die Benutzerpasswörter gegen verschiedene Authentifizierungsmethoden geprüft
+ werden. Dazu zählen die Authentifizierungsdatenbank, LDAP-Server sowie verschiedene Arten von HTTP-Header-basierten Methoden.</p><p>Welche Art der Passwortüberprüfung kivitendo benutzt und wie
+ kivitendo die Authentifizierungsdatenbank erreichen kann, wird in der
+ Konfigurationsdatei <code class="filename">config/kivitendo.conf</code>
+ festgelegt. Diese muss bei der Installation und bei einem Upgrade von
+ einer Version vor v2.6.0 angelegt werden. Eine
+ Beispielkonfigurationsdatei
+ <code class="filename">config/kivitendo.conf.default</code> existiert, die als
+ Vorlage benutzt werden kann.</p></div><div class="sect2" title="2.10.2. Administratorpasswort"><div class="titlepage"><div><div><h3 class="title"><a name="Administratorpasswort"></a>2.10.2. Administratorpasswort</h3></div></div></div><p>Das Passwort, das zum Zugriff auf das Administrationsinterface
+ von kivitendo benutzt wird, wird ebenfalls in dieser Datei
+ gespeichert. Es kann auch nur dort und nicht mehr im
+ Administrationsinterface selber geändert werden. Der Parameter dazu
+ heißt <code class="varname">admin_password</code> im Abschnitt
+ <code class="varname">[authentication]</code>.</p></div><div class="sect2" title="2.10.3. Authentifizierungsdatenbank"><div class="titlepage"><div><div><h3 class="title"><a name="Authentifizierungsdatenbank"></a>2.10.3. Authentifizierungsdatenbank</h3></div></div></div><p>Die Verbindung zur Authentifizierungsdatenbank wird mit den
+ Parametern in <code class="varname">[authentication/database]</code>
+ konfiguriert. Hier sind die folgenden Parameter anzugeben:</p><div class="variablelist"><dl><dt><span class="term">
+ <code class="literal">host</code>
+ </span></dt><dd><p>Der Rechnername oder die IP-Adresse des
+ Datenbankservers</p></dd><dt><span class="term">
+ <code class="literal">port</code>
+ </span></dt><dd><p>Die Portnummer des Datenbankservers, meist 5432</p></dd><dt><span class="term">
+ <code class="literal">db</code>
+ </span></dt><dd><p>Der Name der Authentifizierungsdatenbank</p></dd><dt><span class="term">
+ <code class="literal">user</code>
+ </span></dt><dd><p>Der Benutzername, mit dem sich kivitendo beim
+ Datenbankserver anmeldet (z.B.
+ "<code class="literal">postgres</code>")</p></dd><dt><span class="term">
+ <code class="literal">password</code>
+ </span></dt><dd><p>Das Passwort für den Datenbankbenutzer</p></dd></dl></div><p>Die Datenbank muss noch nicht existieren. kivitendo kann sie
+ automatisch anlegen (mehr dazu siehe unten).</p></div><div class="sect2" title="2.10.4. Passwortüberprüfung"><div class="titlepage"><div><div><h3 class="title"><a name="Passwort%C3%BCberpr%C3%BCfung"></a>2.10.4. Passwortüberprüfung</h3></div></div></div><p>kivitendo unterstützt verschiedene Module für die Passwortüberprüfung. Welche benutzt wird, regelt der Parameter
+ <code class="varname">module</code> im Abschnitt <code class="varname">[authentication]</code>.</p><p>Dieser Parameter listet die zu verwendenden Authentifizierungsmodule auf. Es muss mindestens ein Modul angegeben werden, es
+ können aber auch mehrere angegeben werden. Weiterhin ist es möglich, das LDAP-Modul mehrfach zu verwenden und für jede Verwendung
+ eine unterschiedliche Konfiguration zu nutzen, z.B. um einen Fallback-Server anzugeben, der benutzt wird, sofern der Hauptserver
+ nicht erreichbar ist.</p><p>Verfügbare Module sind:</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>
+ <code class="literal">DB</code>: in Authentifizierungsdatenbank integrierte Benutzerverwaltung</p></li><li class="listitem"><p>
+ <code class="literal">ldap</code>: Bind mit User-Objekten gegen einen oder mehrere LDAP-Server</p></li><li class="listitem"><p>
+ <code class="literal">http_headers</code>: überlässt Authenfizierung vorgelagerten Proxy-Servern übernimmt Usernamen
+ aus mitgeschickten HTTP-Headern</p></li></ul></div><div class="sect3" title="2.10.4.1. Authentifizierungsdatenbank"><div class="titlepage"><div><div><h4 class="title"><a name="Passwort%C3%BCberpr%C3%BCfung_DB"></a>2.10.4.1. Authentifizierungsdatenbank</h4></div></div></div><p>Sollen die Benutzerpasswörter in der Authentifizierungsdatenbank geprüft werden, so muss der Parameter
+ <code class="varname">module</code> das Modul <code class="literal">DB</code> enthalten. Sofern das Modul in der Liste enthalten ist, egal an welcher
+ Position, können sowohl der Administrator als auch die Benutzer selber ihre Passwörter in kivitendo ändern.</p></div><div class="sect3" title="2.10.4.2. LDAP-Server"><div class="titlepage"><div><div><h4 class="title"><a name="Passwort%C3%BCberpr%C3%BCfung_LDAP"></a>2.10.4.2. LDAP-Server</h4></div></div></div><p>Wenn Passwörter gegen einen oder mehrere externe LDAP- oder Active-Directory-Server geprüft werden, so muss der Parameter
+ <code class="varname">module</code> den Wert <code class="literal">LDAP</code> enthalten. In diesem Fall müssen zusätzliche Informationen über den
+ LDAP-Server im Abschnitt <code class="literal">[authentication/ldap]</code> angegeben werden. Das Modul kann auch mehrfach angegeben werden,
+ wobei jedes Modul eine eigene Konfiguration bekommen sollte. Der Name der Konfiguration wird dabei mit einem Doppelpunkt getrennt an
+ den Modulnamen angehängt (<code class="literal">LDAP:Name-der-Konfiguration</code>). Der entsprechende Abschnitt in der Konfigurationsdatei
+ lautet dann <code class="literal">[authentication/Name-der-Konfiguration]</code>.</p><p>Die verfügbaren Parameter für die LDAP-Konfiguration lauten:</p><div class="variablelist"><dl><dt><span class="term">
+ <code class="literal">host</code>
+ </span></dt><dd><p>Der Rechnername oder die IP-Adresse des LDAP- oder
+ Active-Directory-Servers. Diese Angabe ist zwingend
+ erforderlich.</p></dd><dt><span class="term">
+ <code class="literal">port</code>
+ </span></dt><dd><p>Die Portnummer des LDAP-Servers; meist 389.</p></dd><dt><span class="term">
+ <code class="literal">tls</code>
+ </span></dt><dd><p>Wenn Verbindungsverschlüsselung gewünscht ist, so diesen
+ Wert auf ‘<code class="literal">1</code>’ setzen, andernfalls auf
+ ‘<code class="literal">0</code>’ belassen</p></dd><dt><span class="term">
+ <code class="literal">verify</code>
+ </span></dt><dd><p>Wenn Verbindungsverschlüsselung gewünscht und der Parameter <em class="parameter"><code>tls</code></em> gesetzt ist, so gibt dieser
+ Parameter an, ob das Serverzertifikat auf Gültigkeit geprüft wird. Mögliche Werte sind <code class="literal">require</code> (Zertifikat
+ wird überprüft und muss gültig sei; dies ist der Standard) und <code class="literal">none</code> (Zertifikat wird nicht
+ überpfüft).</p></dd><dt><span class="term">
+ <code class="literal">attribute</code>
+ </span></dt><dd><p>Das LDAP-Attribut, in dem der Benutzername steht, den der
+ Benutzer eingegeben hat. Für Active-Directory-Server ist dies
+ meist ‘<code class="literal">sAMAccountName</code>’, für andere
+ LDAP-Server hingegen ‘<code class="literal">uid</code>’. Diese Angabe ist
+ zwingend erforderlich.</p></dd><dt><span class="term">
+ <code class="literal">base_dn</code>
+ </span></dt><dd><p>Der Abschnitt des LDAP-Baumes, der durchsucht werden soll.
+ Diese Angabe ist zwingend erforderlich.</p></dd><dt><span class="term">
+ <code class="literal">filter</code>
+ </span></dt><dd><p>Ein optionaler LDAP-Filter. Enthält dieser Filter das Wort
+ <code class="literal"><%login%></code>, so wird dieses durch den vom
+ Benutzer eingegebenen Benutzernamen ersetzt. Andernfalls wird
+ der LDAP-Baum nach einem Element durchsucht, bei dem das oben
+ angegebene Attribut mit dem Benutzernamen identisch ist.</p></dd><dt><span class="term">
+ <code class="literal">bind_dn</code> und
+ <code class="literal">bind_password</code>
+ </span></dt><dd><p>Wenn der LDAP-Server eine Anmeldung erfordert, bevor er
+ durchsucht werden kann (z.B. ist dies bei
+ Active-Directory-Servern der Fall), so kann diese hier angegeben
+ werden. Für Active-Directory-Server kann als
+ ‘<code class="literal">bind_dn</code>’ entweder eine komplette LDAP-DN wie
+ z.B. ‘<code class="literal">cn=Martin
+ Mustermann,cn=Users,dc=firmendomain</code>’ auch nur der
+ volle Name des Benutzers eingegeben werden; in diesem Beispiel
+ also ‘<code class="literal">Martin Mustermann</code>’.</p></dd><dt><span class="term">
+ <code class="literal">timeout</code>
+ </span></dt><dd><p>Timeout beim Verbindungsversuch, bevor der Server als nicht erreichbar gilt; Standardwert: 10</p></dd></dl></div></div><div class="sect3" title="2.10.4.3. HTTP-Header: Username in Header"><div class="titlepage"><div><div><h4 class="title"><a name="Passwort%C3%BCberpr%C3%BCfung_HTTPHeaders"></a>2.10.4.3. HTTP-Header: Username in Header</h4></div></div></div><p>
+ Diese Methode der Authentifizierung überlässt einem vorgelagerten Webserver oder Proxyserver die Authentifizierung. Dazu können
+ SSO-Systeme wie z.B. Authelia oder Authentik zum Einsatz kommen. Die vorgelagerten Server übermitteln dann den Usernamen der
+ authentifizierten Person in einem speziellen HTTP-Header, der an kivitendo durchgereicht wird. Damit kivitendo nicht von
+ beliebigen Quellen aus mit so einem Usernamen aufgerufen werden kann, verlangt kivitendo weiterhin, dass in einem weiteren
+ Header ein Shared Secret übertragen wird. Dieses Secret wird vom Administrator vergeben und sollte nicht weitergegeben werden.
+ </p><p>
+ Über einen weiteren Header wird wiederum gesteuert, an welchem Mandanten die Anmeldung erfolgt. Dies geschieht über die
+ Datenbank-ID des Mandanten.
+ </p><p>
+ Um diese Methode zu aktivieren, muss das Authentifizierungsmodul auf <code class="literal">HTTPHeaders</code> gestellt werden. Zusätzlich
+ muss im Abschnitt <code class="literal">authentication/http_headers</code> der Parameter <code class="literal">enabled=1</code> und im Abschnitt
+ <code class="literal">authentication/http_basic</code> der Parameter <code class="literal">enabled=0</code> gesetzt werden. Die folgenden Parameter
+ müssen anschließend im Abschnitt <code class="literal">authentication/http_headers</code> konfiguriert werden:
+ </p><div class="variablelist"><dl><dt><span class="term">
+ <code class="literal">client_id_header</code>
+ </span></dt><dd><p>Name des Headers, in dem das vorgelagerte System die Datenbank-ID des Mandanten überträgt.</p></dd><dt><span class="term">
+ <code class="literal">user_header</code>
+ </span></dt><dd><p>Name des Headers, in dem das vorgelagerte System den Namen des authentifizierten Users überträgt.</p></dd><dt><span class="term">
+ <code class="literal">secret_header</code>
+ </span></dt><dd><p>Name des Headers, in dem das vorgelagerte System das Shared Secret.</p></dd><dt><span class="term">
+ <code class="literal">secret</code>
+ </span></dt><dd><p>Wert des Shared Secrets selber, der vom vorgelagerten System übertragen werden muss, damit die Werte als gültig
+ angesehen werden.</p></dd></dl></div></div><div class="sect3" title="2.10.4.4. HTTP-Header: Basic Authorization"><div class="titlepage"><div><div><h4 class="title"><a name="Passwort%C3%BCberpr%C3%BCfung_HTTPBasic"></a>2.10.4.4. HTTP-Header: Basic Authorization</h4></div></div></div><p>
+ Diese Methode der Authentifizierung überlässt dem Webserver (meist Apache) die Authentifizierung mittels der standardisierten
+ HTTP Basic Authentication (RFC 7617). Dazu muss der Webserver so konfiguriert werden, dass er für alle kivitendo-Requests vom
+ Webbrowser Authentifizierung verlangt. Zusätzlich muss er veranlasst werden, den angegebenen Usernamen auch an kivitendo zu
+ übermitteln. Dies könnte beispielhaft wie folgt aussehen:
+ </p><pre class="programlisting"><Directory /path/to/kivitendo-erp>
+ AllowOverride All
+ Options ExecCGI Includes FollowSymlinks
+
+ # Require authentication from local user file:
+ AuthType Basic
+ AuthName "kivitendo"
+ AuthUserFile /etc/apache2/htpasswd.kivitendo
+ Require valid-user
+
+ # Pass name of authorized user to kivitendo:
+ SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1
+</Directory></pre><p>
+ Um diese Methode zu aktivieren, muss das Authentifizierungsmodul auf <code class="literal">HTTPHeaders</code> gestellt werden. Zusätzlich
+ muss im Abschnitt <code class="literal">authentication/http_basic</code> der Parameter <code class="literal">enabled=1</code> und im Abschnitt
+ <code class="literal">authentication/http_headers</code> der Parameter <code class="literal">enabled=0</code> gesetzt werden.
+ </p></div></div><div class="sect2" title="2.10.5. Name des Session-Cookies"><div class="titlepage"><div><div><h3 class="title"><a name="Name-des-Session-Cookies"></a>2.10.5. Name des Session-Cookies</h3></div></div></div><p>Sollen auf einem Server mehrere kivitendo-Installationen
+ aufgesetzt werden, so müssen die Namen der Session-Cookies für alle
+ Installationen unterschiedlich sein. Der Name des Cookies wird mit dem
+ Parameter <code class="varname">cookie_name</code> im Abschnitt
+ <code class="varname">[authentication]</code>gesetzt.</p><p>Diese Angabe ist optional, wenn nur eine Installation auf dem
+ Server existiert.</p></div><div class="sect2" title="2.10.6. Anlegen der Authentifizierungsdatenbank"><div class="titlepage"><div><div><h3 class="title"><a name="Anlegen-der-Authentifizierungsdatenbank"></a>2.10.6. Anlegen der Authentifizierungsdatenbank</h3></div></div></div><p>Nachdem alle Einstellungen in
+ <code class="filename">config/kivitendo.conf</code> vorgenommen wurden, muss
+ kivitendo die Authentifizierungsdatenbank anlegen. Dieses geschieht
+ automatisch, wenn Sie sich im Administrationsmodul anmelden, das unter
+ der folgenden URL erreichbar sein sollte:</p><p>
+ <a class="ulink" href="http://localhost/kivitendo-erp/controller.pl?action=Admin/login" target="_top">http://localhost/kivitendo-erp/controller.pl?action=Admin/login</a>
+ </p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch02s09.html">Zurück</a> </td><td width="20%" align="center"><a accesskey="u" href="ch02.html">Nach oben</a></td><td width="40%" align="right"> <a accesskey="n" href="ch02s11.html">Weiter</a></td></tr><tr><td width="40%" align="left" valign="top">2.9. Konfiguration der Hintergrund-Jobs </td><td width="20%" align="center"><a accesskey="h" href="index.html">Zum Anfang</a></td><td width="40%" align="right" valign="top"> 2.11. Mandanten-, Benutzer- und Gruppenverwaltung</td></tr></table></div></body></html>
\ No newline at end of file