8048a890fb5417156e6d88238be61b382d9e3eef
[kivitendo-erp.git] / doc / INSTALL.html
1 <html lang="en">
2 <head>
3 <title>Lx-Office Installationsanleitung</title>
4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
5 <meta name="description" content="Lx-Office Installationsanleitung">
6 <meta name="generator" content="makeinfo 4.13">
7 <link title="Top" rel="top" href="#Top">
8 <link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
9 <meta http-equiv="Content-Style-Type" content="text/css">
10 <style type="text/css"><!--
11   pre.display { font-family:inherit }
12   pre.format  { font-family:inherit }
13   pre.smalldisplay { font-family:inherit; font-size:smaller }
14   pre.smallformat  { font-family:inherit; font-size:smaller }
15   pre.smallexample { font-size:smaller }
16   pre.smalllisp    { font-size:smaller }
17   span.sc    { font-variant:small-caps }
18   span.roman { font-family:serif; font-weight:normal; } 
19   span.sansserif { font-family:sans-serif; font-weight:normal; } 
20 --></style>
21 </head>
22 <body>
23 <h1 class="settitle">Lx-Office Installationsanleitung</h1>
24    <div class="contents">
25 <h2>Inhaltsverzeichnis</h2>
26 <ul>
27 <li><a name="toc_Top" href="#Top">Inhalt der Anleitung</a>
28 <li><a name="toc_Aktuelle-Hinweise" href="#Aktuelle-Hinweise">1 Aktuelle Hinweise</a>
29 <li><a name="toc_Ben_00c3_00b6tigte-Software-und-Pakete" href="#Ben_00c3_00b6tigte-Software-und-Pakete">2 Benötigte Software und Pakete</a>
30 <ul>
31 <li><a href="#Betriebssystem">2.1 Betriebssystem</a>
32 <li><a href="#Pakete">2.2 Pakete</a>
33 </li></ul>
34 <li><a name="toc_Manuelle-Installation-des-Programmpaketes" href="#Manuelle-Installation-des-Programmpaketes">3 Manuelle Installation des Programmpaketes</a>
35 <li><a name="toc_Anpassung-der-PostgreSQL_002dKonfiguration" href="#Anpassung-der-PostgreSQL_002dKonfiguration">4 Anpassung der PostgreSQL-Konfiguration</a>
36 <ul>
37 <li><a href="#Zeichens_00c3_00a4tze_002fdie-Verwendung-von-UTF_002d8">4.1 Zeichensätze/die Verwendung von UTF-8</a>
38 <li><a href="#_00c3_0084nderungen-an-Konfigurationsdateien">4.2 Änderungen an Konfigurationsdateien</a>
39 <li><a href="#Erweiterung-f_00c3_00bcr-servergespeicherte-Prozeduren">4.3 Erweiterung für servergespeicherte Prozeduren</a>
40 <li><a href="#Datenbankbenutzer-anlegen">4.4 Datenbankbenutzer anlegen</a>
41 </li></ul>
42 <li><a name="toc_Apache_002dKonfiguration" href="#Apache_002dKonfiguration">5 Apache-Konfiguration</a>
43 <li><a name="toc_Benutzerauthentifizierung-und-Administratorpasswort" href="#Benutzerauthentifizierung-und-Administratorpasswort">6 Benutzerauthentifizierung und Administratorpasswort</a>
44 <ul>
45 <li><a href="#Grundlagen-zur-Benutzerauthentifizierung">6.1 Grundlagen zur Benutzerauthentifizierung</a>
46 <li><a href="#Administratorpasswort">6.2 Administratorpasswort</a>
47 <li><a href="#Authentifizierungsdatenbank">6.3 Authentifizierungsdatenbank</a>
48 <li><a href="#Passwort_00c3_00bcberpr_00c3_00bcfung">6.4 Passwortüberprüfung</a>
49 <li><a href="#Name-des-Session_002dCookies">6.5 Name des Session-Cookies</a>
50 <li><a href="#Anlegen-der-Authentifizierungsdatenbank">6.6 Anlegen der Authentifizierungsdatenbank</a>
51 </li></ul>
52 <li><a name="toc_Benutzer_002d-und-Gruppenverwaltung" href="#Benutzer_002d-und-Gruppenverwaltung">7 Benutzer- und Gruppenverwaltung</a>
53 <ul>
54 <li><a href="#Zusammenh_00c3_00a4nge">7.1 Zusammenhänge</a>
55 <li><a href="#Datenbanken-anlegen">7.2 Datenbanken anlegen</a>
56 <li><a href="#Gruppen-anlegen">7.3 Gruppen anlegen</a>
57 <li><a href="#Benutzer-anlegen">7.4 Benutzer anlegen</a>
58 <li><a href="#Gruppenmitgliedschaften-verwalten">7.5 Gruppenmitgliedschaften verwalten</a>
59 <li><a href="#Migration-alter-Installationen">7.6 Migration alter Installationen</a>
60 </li></ul>
61 <li><a name="toc_OpenDocument_002dVorlagen" href="#OpenDocument_002dVorlagen">8 OpenDocument-Vorlagen</a>
62 <li><a name="toc_Lx_002dOffice-ERP-verwenden" href="#Lx_002dOffice-ERP-verwenden">9 Lx-Office ERP verwenden</a>
63 </li></ul>
64 </div>
65
66
67
68 <div class="node">
69 <a name="Top"></a>
70 <p><hr>
71 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Aktuelle-Hinweise">Aktuelle Hinweise</a>,
72 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#dir">(dir)</a>
73
74 </div>
75
76 <h2 class="unnumbered">Inhalt der Anleitung</h2>
77
78 <ul class="menu">
79 <li><a accesskey="1" href="#Aktuelle-Hinweise">Aktuelle Hinweise</a>:  Andere Informationsquellen als diese Anleitung
80 <li><a accesskey="2" href="#Ben_00c3_00b6tigte-Software-und-Pakete">Benötigte Software und Pakete</a>:  Vorraussetzungen zum Betrieb von Lx-Office
81 <li><a accesskey="3" href="#Manuelle-Installation-des-Programmpaketes">Manuelle Installation des Programmpaketes</a>:  Installationsort, Berechtigungen
82 <li><a accesskey="4" href="#Anpassung-der-PostgreSQL_002dKonfiguration">Anpassung der PostgreSQL-Konfiguration</a>:  Verschiedene Aspekte der Datenbankkonfiguration
83 <li><a accesskey="5" href="#Apache_002dKonfiguration">Apache-Konfiguration</a>:  Einrichtung eines Aliases und Optionen für das Ausführen von CGI-Scripten
84 <li><a accesskey="6" href="#Benutzerauthentifizierung-und-Administratorpasswort">Benutzerauthentifizierung und Administratorpasswort</a>:  Einrichtung der Authentifizierungsdatenbank und der Passwortüberprüfung
85 <li><a accesskey="7" href="#Benutzer_002d-und-Gruppenverwaltung">Benutzer- und Gruppenverwaltung</a>:  Einrichten von Benutzern, Gruppen und Datenbanken
86 <li><a accesskey="8" href="#OpenDocument_002dVorlagen">OpenDocument-Vorlagen</a>:  Wichtige Hinweise zum Erstellen und zur Verwendung von Dokumentenvorlagen
87 <li><a accesskey="9" href="#Lx_002dOffice-ERP-verwenden">Lx-Office ERP verwenden</a>:  Die URLs zur Anmeldung und Administration
88 </ul>
89
90 <!--  -->
91 <div class="node">
92 <a name="Aktuelle-Hinweise"></a>
93 <p><hr>
94 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Ben_00c3_00b6tigte-Software-und-Pakete">Benötigte Software und Pakete</a>,
95 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Top">Top</a>,
96 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
97
98 </div>
99
100 <h2 class="chapter">1 Aktuelle Hinweise</h2>
101
102 <p>Aktuelle Installations- und Konfigurationshinweise gibt es:
103
104      <ul>
105 <li>auf der Lx-Office Homepage unter <a href="http://lx-office.org/index.php?id=dokumentation">http://lx-office.org/index.php?id=dokumentation</a>
106
107      <li>im Lx-Office-Wiki unter Dokumentation (<a href="http://wiki.lx-office.org/index.php/Lx-Office_ERP">http://wiki.lx-office.org/index.php/Lx-Office_ERP</a>)
108
109      <li>im Lx-Office-Forum: <a href="http://www.lx-office.org/forum/">http://www.lx-office.org/forum/</a>
110 </ul>
111
112 <!--  -->
113 <div class="node">
114 <a name="Ben%c3%b6tigte-Software-und-Pakete"></a>
115 <a name="Ben_00c3_00b6tigte-Software-und-Pakete"></a>
116 <p><hr>
117 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Manuelle-Installation-des-Programmpaketes">Manuelle Installation des Programmpaketes</a>,
118 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Aktuelle-Hinweise">Aktuelle Hinweise</a>,
119 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
120
121 </div>
122
123 <h2 class="chapter">2 Benötigte Software und Pakete</h2>
124
125 <ul class="menu">
126 <li><a accesskey="1" href="#Betriebssystem">Betriebssystem</a>:  Unterstützte Betriebsysteme und Hinweise für ältere Systeme
127 <li><a accesskey="2" href="#Pakete">Pakete</a>:  Benötigte Software und Perlpakete sowie deren Quellen
128 </ul>
129
130 <div class="node">
131 <a name="Betriebssystem"></a>
132 <p><hr>
133 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Pakete">Pakete</a>,
134 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Ben_00c3_00b6tigte-Software-und-Pakete">Benötigte Software und Pakete</a>
135
136 </div>
137
138 <h3 class="section">2.1 Betriebssystem</h3>
139
140 <p>Lx-Office ist für Linux konzipiert, und sollte auf jedem unixoiden
141 Betriebssystem zum Laufen zu kriegen sein. Getestet ist diese Version im
142 speziellen auf Debian und Ubuntu, grundsätzlich wurde bei der Auswahl der
143 Pakete aber darauf Rücksicht genommen, dass es ohne große Probleme auf den
144 derzeit aktuellen verbreiteten Distributionen läuft.
145
146    <p>Anfang 2011 sind das folgende Systeme:
147
148      <ul>
149 <li>Ubuntu 8.04 LTS Hardy Heron
150 <li>Ubuntu 9.10 Karmic Koala
151 <li>Ubuntu 10.04 Lucid Lynx
152 <li>Ubuntu 10.10 Maverick Meerkat
153 <li>Debian 5.0 Lenny
154 <li>Debian 6.0 Squeeze
155 <li>openSUSE 11.2
156 <li>openSUSE 11.3
157 <li>SuSE Linux Enterprice Server 11
158 <li>Fedora 13
159 <li>Fedora 14
160 </ul>
161
162    <p>Für die debianoiden Betriebssysteme existiert ein .deb, das deutlich einfacher
163 zu installieren ist.
164
165    <p>Ubuntu 8.04 LTS hat zusätzlich die Schwierigkeit, dass die Module im Archiv
166 recht alt sind, und das viele der benötigten Module nicht einfach zu
167 installieren sind. Dafür sollte es kurz nach dem Release ein eigenes .deb
168 geben.
169
170    <p>Alternativ dazu kann die normale Installation durchgeführt werden
171 (see <a href="#Manuelle-Installation-des-Programmpaketes">Manuelle Installation des Programmpaketes</a>), wenn vorher ein
172 Kompatibilitätspaket installiert wird, das die fehlenden Pakete bereitstellt. 
173 Das Paket ist auf <a href="https://sourceforge.net/projects/lx-office/files/Lx-Office%20ERP/2.6.2/">Sourceforge</a> unter dem Namen <code>lx-erp-perl-libs-compat-v2.tar.gz</code> hinterlegt.
174
175    <p>Zur Installation das Paket in das entpackte Lx-Office Verzeichnis entpacken:
176
177    <p><code>tar xzf lx-erp-perl-libs-compat-v2.tar.gz /path/to/lx-office/</code>
178
179    <p>Zusätzlich müssen dann noch die folgenden Pakete installiert weerden
180
181    <p><code>libbit-vector-perl libsub-exporter-perl libclone-perl libclass-factory-util-perl</code>
182
183    <p>Danach sollte der Installationscheck (see <a href="#Pakete">Pakete</a>) die enthaltenen Pakete erkennen.
184
185 <div class="node">
186 <a name="Pakete"></a>
187 <p><hr>
188 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Betriebssystem">Betriebssystem</a>,
189 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Ben_00c3_00b6tigte-Software-und-Pakete">Benötigte Software und Pakete</a>
190
191 </div>
192
193 <h3 class="section">2.2 Pakete</h3>
194
195 <p>Zum Betrieb von Lx-Office werden zwingend ein Webserver (meist Apache)
196 und ein Datenbankserver (PostgreSQL, mindestens v8.2) benötigt.
197
198    <p>Zusätzlich benötigt Lx-Office die folgenden Perl-Pakete, die nicht Bestandteil
199 einer Standard-Perl-Installation sind:
200
201      <ul>
202 <li>parent
203 <li>Archive::Zip
204 <li>Class::Accessor
205 <li>CGI::Ajax
206 <li>Config::Std
207 <li>DateTime
208 <li>DBI
209 <li>DBD::Pg
210 <li>Email::Address
211 <li>List::MoreUtils
212 <li>Params::Validate
213 <li>PDF::API2
214 <li>Rose::Object
215 <li>Rose::DB
216 <li>Rose::DB::Object
217 <li>Template
218 <li>Text::CSV_XS
219 <li>Text::Iconv
220 <li>URI
221 <li>XML::Writer
222 <li>YAML
223 </ul>
224
225    <p>Gegenüber Version 2.6.0 sind zu dieser Liste 2 Pakete hinzugekommen, <code>URI</code>
226 und <code>XML::Writer</code> sind notwendig. Ohne startet Lx-Office nicht.
227
228    <p>Gegenüber Version 2.6.1 sind <code>parent</code>, <code>DateTime</code>,
229 <code>Rose::Object</code>, <code>Rose::DB</code> und <code>Rose::DB::Object</code> neu
230 hinzugekommen. <code>IO::Wrap</code> wurde entfernt.
231
232    <p><code>Email::Address</code> und <code>List::MoreUtils</code> sind schon länger feste
233 Abhängigkeiten, wurden aber bisher mit Lx-Office mitgeliefert.  Beide sind auch
234 in 2.6.1 weiterhin mit ausgeliefert, wurden in einer zukünftigen Version aber
235 aus dem Paket entfernt werden. Es wird empfohlen diese Module zusammen mit den
236 anderen als Bibliotheken zu installieren.
237
238    <p><code>CGI::Ajax</code> ist nach wie vor in einer modifizierten Version mitgeliefert
239 und braucht nicht nachinstalliert werden.
240
241    <p>Die zu installierenden Pakete können in den verschiedenen Distributionen unterschiedlich heißen.
242
243    <p>Für Debian oder Ubuntu benötigen Sie diese Pakete:
244
245    <p><code>apache2 postgresql libparent-perl libarchive-zip-perl libclass-accessor-perl libdatetime-perl libdbi-perl libdbd-pg-perl libpg-perl libemail-address-perl liblist-moreutils-perl libpdf-api2-perl librose-object-perl librose-db-perl librose-db-object-perl libtemplate-perl libtext-csv-xs-perl libtext-iconv-perl liburi-perl libxml-writer-perl libyaml-perl libconfig-std-perl libparams-validate-perl</code>
246
247    <p>Für Fedora Core benötigen Sie diese Pakete:
248
249    <p><code>httpd postgresql-server perl-parent perl-Class-Accessor perl-DateTime perl-DBI perl-DBD-Pg perl-Email-Address perl-List-MoreUtils perl-PDF-API2 perl-Rose-Object perl-Rose-DB perl-Rose-DB-Object perl-Template-Toolkit perl-Text-CSV_XS perl-Text-Iconv perl-URI perl-XML-Writer perl-YAML</code>
250
251    <p>Für OpenSuSE benötigen Sie diese Pakete:
252
253    <p><code>apache2 postgresql-server perl-Archive-Zip perl-Class-Accessor perl-DateTime perl-DBI perl-DBD-Pg perl-MailTools perl-List-MoreUtils perl-PDF-API2 perl-Template-Toolkit perl-Text-CSV_XS perl-Text-Iconv perl-URI perl-XML-Writer perl-YAML</code>
254
255    <p>Bei openSuSE 11 ist <code>parent</code> bereits enthalten, und braucht nicht nachinstalliert werden. Die <code>Rose::*</code> Pakete sind derzeit nicht für SuSE gepackt, und müssen anderweitig nachinstalliert werden.
256
257    <p>Lx-Office enthält ein Script, mit dem überprüft werden kann, ob alle
258 benötigten Perl-Module installiert sind. Der Aufruf lautet wie folgt:
259
260    <p><code>./scripts/installation_check.pl</code>
261
262 <!--  -->
263 <div class="node">
264 <a name="Manuelle-Installation-des-Programmpaketes"></a>
265 <p><hr>
266 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Anpassung-der-PostgreSQL_002dKonfiguration">Anpassung der PostgreSQL-Konfiguration</a>,
267 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Ben_00c3_00b6tigte-Software-und-Pakete">Benötigte Software und Pakete</a>,
268 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
269
270 </div>
271
272 <h2 class="chapter">3 Manuelle Installation des Programmpaketes</h2>
273
274 <p>Die Lx-Office ERP Installationsdatei (lxoffice-erp-2.6.2.tgz) wird im
275 Dokumentenverzeichnis des Webservers (z.B. <code>/var/www/html/</code>,
276 <code>/srv/www/htdocs</code> oder <code>/var/www/</code>) entpackt:
277
278    <p><code>cd /var/www
279 <br>
280 tar xvzf lxoffice-erp-2.6.2.tgz</code>
281
282    <p>Verändern Sie evtl. noch den Namen des Verzeichnisses mit
283
284    <p><code>mv lxoffice-erp/ lx-erp/</code>
285
286    <p>Alternativ können Sie auch einen Alias in der Webserverkonfiguration
287 benutzen, um auf das tatsächliche Installationsverzeichnis zu
288 verweisen.
289
290    <p>Die Verzeichnisse <code>users</code>, <code>spool</code> und <code>webdav</code> müssen
291 für den Benutzer beschreibbar sein, unter dem der Webserver läuft. Die
292 restlichen Dateien müssen für diesen Benutzer lesbar sein. Der
293 Benutzername ist bei verschiedenen Distributionen unterschiedlich
294 (z.B. bei Debian/Ubuntu <code>www-data</code>, bei Fedora core <code>apache</code>
295 oder bei OpenSuSE <code>wwwrun</code>).
296
297    <p>Der folgende Befehl ändert den Besitzer für die oben genannten
298 Verzeichnisse auf einem Debian/Ubuntu-System:
299
300    <p><code>chown -R www-data lx-office-erp/users lx-office-erp/spool lx-office-erp/webdav</code>
301
302    <p>Weiterhin muss der Webserver-Benutzer im Verzeichnis <code>templates</code> Verzeichnisse für
303 jeden neuen Benutzer, der in lx-office angelegt wird, anlegen dürfen:
304
305    <p><code>chgrp www-data lx-office-erp/templates; chmod g+w lx-office-erp/templates</code>
306
307 <!--  -->
308 <div class="node">
309 <a name="Anpassung-der-PostgreSQL-Konfiguration"></a>
310 <a name="Anpassung-der-PostgreSQL_002dKonfiguration"></a>
311 <p><hr>
312 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Apache_002dKonfiguration">Apache-Konfiguration</a>,
313 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Manuelle-Installation-des-Programmpaketes">Manuelle Installation des Programmpaketes</a>,
314 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
315
316 </div>
317
318 <h2 class="chapter">4 Anpassung der PostgreSQL-Konfiguration</h2>
319
320 <p>PostgreSQL muss auf verschiedene Weisen angepasst werden.
321
322 <ul class="menu">
323 <li><a accesskey="1" href="#Zeichens_00c3_00a4tze_002fdie-Verwendung-von-UTF_002d8">Zeichensätze/die Verwendung von UTF-8</a>:  Was bei der Verwendung von UTF-8 zu beachten ist
324 <li><a accesskey="2" href="#g_t_00c3_0084nderungen-an-Konfigurationsdateien">Änderungen an Konfigurationsdateien</a>:  Anpassungen für Anmeldung am Server und Featureunterstützung
325 <li><a accesskey="3" href="#Erweiterung-f_00c3_00bcr-servergespeicherte-Prozeduren">Erweiterung für servergespeicherte Prozeduren</a>:  Lx-Office benutzt servergespeicherte Prozeduren
326 <li><a accesskey="4" href="#Datenbankbenutzer-anlegen">Datenbankbenutzer anlegen</a>:  Um den Zugriff besser zu reglementieren
327 </ul>
328
329 <div class="node">
330 <a name="Zeichens%c3%a4tze%2fdie-Verwendung-von-UTF-8"></a>
331 <a name="Zeichens_00c3_00a4tze_002fdie-Verwendung-von-UTF_002d8"></a>
332 <p><hr>
333 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#g_t_00c3_0084nderungen-an-Konfigurationsdateien">Änderungen an Konfigurationsdateien</a>,
334 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Anpassung-der-PostgreSQL_002dKonfiguration">Anpassung der PostgreSQL-Konfiguration</a>
335
336 </div>
337
338 <h3 class="section">4.1 Zeichensätze/die Verwendung von UTF-8</h3>
339
340 <p>Lx-Office kann komplett mit UTF-8 als Zeichensatz verwendet
341 werden. Dabei gibt es zwei Punkte zu beachten: PostgreSQL muss in
342 Version 8.0 oder neuer benutzt werden, und der
343 PostgreSQL-Datenbankcluster muss ebenfalls mit UTF-8 als Locale
344 angelegt worden sein.
345
346    <p>Dieses ist kann überprüft werden: ist das Encoding der Datenbank
347 &ldquo;template1&rdquo; &ldquo;UTF8&rdquo;, so kann auch Lx-Office mit UTF-8 betrieben
348 werden. Andernfalls ist es notwendig, einen neuen Datenbankcluster mit
349 UTF-8-Encoding anzulegen und diesen zu verwenden. Unter Debian und
350 Ubuntu kann dies z.B. mit dem folgenden Befehl getan werden:
351
352    <p><code>pg_createcluster --locale=de_DE.UTF-8 --encoding=UTF-8 8.2 clustername</code>
353
354    <p>Die Datenbankversionsnummer muss an die tatsächlich verwendete
355 Versionsnummer angepasst werden.
356
357    <p>Unter anderen Distributionen gibt es ähnliche Methoden.
358
359    <p>Wurde PostgreSQL nicht mit UTF-8 als Encoding initialisiert und ist
360 ein Neuanlegen eines weiteren Clusters nicht möglich, so kann
361 Lx-Office mit ISO-8859-15 als Encoding betrieben werden.
362
363    <p>Das Encoding einer Datenbank kann in <code>psql</code> mit <code>\l</code> geprüft werden.
364
365 <div class="node">
366 <a name="%c3%84nderungen-an-Konfigurationsdateien"></a>
367 <a name="g_t_00c3_0084nderungen-an-Konfigurationsdateien"></a>
368 <p><hr>
369 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Erweiterung-f_00c3_00bcr-servergespeicherte-Prozeduren">Erweiterung für servergespeicherte Prozeduren</a>,
370 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Zeichens_00c3_00a4tze_002fdie-Verwendung-von-UTF_002d8">Zeichensätze/die Verwendung von UTF-8</a>,
371 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Anpassung-der-PostgreSQL_002dKonfiguration">Anpassung der PostgreSQL-Konfiguration</a>
372
373 </div>
374
375 <h3 class="section">4.2 Änderungen an Konfigurationsdateien</h3>
376
377 <p>In der Datei <code>postgresql.conf</code>, die je nach Distribution in
378 verschiedenen Verzeichnissen liegen kann
379 (z.B. <code>/var/lib/pgsql/data/</code> oder <code>/etc/postgresql/</code>, muss
380 sichergestellt werden, dass TCP/IP-Verbindungen aktiviert sind. Das
381 Verhalten wird über den Parameter <code>listen_address</code>
382 gesteuert. Laufen PostgreSQL und Lx-Office auf demselben Rechner, so
383 kann dort der Wert <code>localhost</code> verwendet werden. Andernfalls
384 müssen Datenbankverbindungen auch von anderen Rechnern aus zugelassen
385 werden, was mit dem Wert \<code>*</code> geschieht.
386
387    <p>In der Datei <code>pg_hba.conf</code>, die im gleichen Verzeichnis wie die
388 <code>postgresql.conf</code> zu finden sein sollte, müssen die
389 Berichtigungen für den Zugriff geändert werden. Hier gibt es mehrere
390 Möglichkeiten. Eine besteht darin, lokale Verbindungen immer
391 zuzulassen
392
393    <p><code>local all all trust
394 <br>
395 host all all 127.0.0.1 255.0.0.0 trust</code>
396
397    <p>Besser ist es, für eine bestimmte Datenbank Zugriff nur per Passwort
398 zuzulassen. Beispielsweise:
399
400    <p><code>local   all         lxoffice                                           password
401 <br>
402 host    all         lxoffice      127.0.0.1         255.255.255.255    password</code>
403
404 <!--  -->
405 <div class="node">
406 <a name="Erweiterung-f%c3%bcr-servergespeicherte-Prozeduren"></a>
407 <a name="Erweiterung-f_00c3_00bcr-servergespeicherte-Prozeduren"></a>
408 <p><hr>
409 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Datenbankbenutzer-anlegen">Datenbankbenutzer anlegen</a>,
410 voriges:&nbsp;<a rel="previous" accesskey="p" href="#g_t_00c3_0084nderungen-an-Konfigurationsdateien">Änderungen an Konfigurationsdateien</a>,
411 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Anpassung-der-PostgreSQL_002dKonfiguration">Anpassung der PostgreSQL-Konfiguration</a>
412
413 </div>
414
415 <h3 class="section">4.3 Erweiterung für servergespeicherte Prozeduren</h3>
416
417 <p>In der Datenbank <code>template1</code> muss die Unterstützung für servergespeicherte
418 Prozeduren eingerichet werden. Melden Sie sich dafür als Benutzer &ldquo;postgres&rdquo;
419 an der Datenbank an, und führen Sie die folgenden Kommandos aus:
420
421    <p><code>create language 'plpgsql';</code>
422
423    <p>Achtung: In älteren Postgresversionen (vor 8.0) muss der Handler für die
424 Sprache manuell anlelegt werden, diese Versionen werden aber nicht mehr
425 offiziell von Lx-Office unterstützt. Dafür dann die folgenden Kommandos:
426
427    <p><code>create function plpgsql_call_handler () returns opaque as '/usr/lib/pgsql/plpgsql.so' language 'c';
428 <br>
429 create language 'plpgsql' handler plpgsql_call_handler lancompiler 'pl/pgsql';</code>
430
431    <p>Bitte beachten Sie, dass der Pfad zur Datei <code>plpgsql.so</code> von Distribution
432 zu Distribution verschiedlich sein kann. Bei Debian/Ubuntu befindet sie sich
433 unter <code>/usr/lib/postgresql/lib/plpgsql.so</code>.
434
435 <!--  -->
436 <div class="node">
437 <a name="Datenbankbenutzer-anlegen"></a>
438 <p><hr>
439 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Erweiterung-f_00c3_00bcr-servergespeicherte-Prozeduren">Erweiterung für servergespeicherte Prozeduren</a>,
440 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Anpassung-der-PostgreSQL_002dKonfiguration">Anpassung der PostgreSQL-Konfiguration</a>
441
442 </div>
443
444 <h3 class="section">4.4 Datenbankbenutzer anlegen</h3>
445
446 <p>Wenn Sie nicht den Datenbanksuperuser &ldquo;postgres&rdquo; zum Zugriff
447 benutzen wollen, so sollten Sie bei PostgreSQL einen neuen Benutzer
448 anlegen. Ein Beispiel, wie Sie einen neuen Benutzer anlegen können:
449
450    <p><code>su - postgres
451 <br>
452 createuser -d -P lxoffice</code>
453
454    <p>Wenn Sie später einen Datenbankzugriff konfigurieren, verändern Sie
455 den evtl. voreingestellten Benutzer &ldquo;postgres&rdquo; auf &ldquo;lxoffice&rdquo;
456 bzw. den hier gewählten Benutzernamen.
457
458 <!--  -->
459 <div class="node">
460 <a name="Apache-Konfiguration"></a>
461 <a name="Apache_002dKonfiguration"></a>
462 <p><hr>
463 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Benutzerauthentifizierung-und-Administratorpasswort">Benutzerauthentifizierung und Administratorpasswort</a>,
464 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Anpassung-der-PostgreSQL_002dKonfiguration">Anpassung der PostgreSQL-Konfiguration</a>,
465 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
466
467 </div>
468
469 <h2 class="chapter">5 Apache-Konfiguration</h2>
470
471 <p>Hinweis: Für einen deutlichen Performanceschub sorgt die Ausführung
472 mittels FCGI. Die Einrichtung wird ausführlich in der Datei
473 <code>INSTALL.fcgi</code> beschrieben.
474
475    <p>Der Zugriff auf das Programmverzeichnis muss in der Apache
476 Webserverkonfigurationsdatei <code>httpd.conf</code> eingestellt
477 werden. Fügen Sie den folgenden Abschnitt dieser Datei oder einer
478 anderen Datei hinzu, die beim Starten des Webservers eingelesen wird:
479
480    <p><code><br>
481 AddHandler cgi-script .pl
482 <br>
483 Alias /lx-erp/ /var/www/lx-erp/
484 <br>
485 &lt;Directory /var/www/lx-erp&gt;
486 <br>
487   Options ExecCGI Includes FollowSymlinks
488 <br>
489 &lt;/Directory&gt;
490 <br>
491 <br>
492 &lt;Directory /var/www/lx-erp/users&gt;
493 <br>
494   Order Deny,Allow
495 <br>
496   Deny from All
497 <br>
498 &lt;/Directory&gt;
499 <br>
500 </code>
501
502    <p>Ersetzen Sie dabei die Pfade durch diejenigen, in die Sie vorher das
503 Lx-Office-Archiv entpacket haben.
504
505    <p>Achtung: Vor den einzelnen Optionen muss bei einigen Distributionen ein
506 Plus &lsquo;<samp><span class="samp">+</span></samp>&rsquo; gesetzt werden.
507
508    <p>Auf einigen Webservern werden manchmal die Grafiken und Style-Sheets
509 nicht ausgeliefert. In solchen Fällen hat es oft geholfen, die
510 folgende Option in die Konfiguration aufzunehmen:
511
512    <p><code>EnableSendfile Off</code>
513
514 <!--  -->
515 <div class="node">
516 <a name="Benutzerauthentifizierung-und-Administratorpasswort"></a>
517 <p><hr>
518 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Benutzer_002d-und-Gruppenverwaltung">Benutzer- und Gruppenverwaltung</a>,
519 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Apache_002dKonfiguration">Apache-Konfiguration</a>,
520 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
521
522 </div>
523
524 <h2 class="chapter">6 Benutzerauthentifizierung und Administratorpasswort</h2>
525
526 <p>Informationen über die Einrichtung der Benutzerauthentifizierung, über
527 die Verwaltung von Gruppen und weitere Einstellungen
528
529 <ul class="menu">
530 <li><a accesskey="1" href="#Grundlagen-zur-Benutzerauthentifizierung">Grundlagen zur Benutzerauthentifizierung</a>:  Verfügbare Methoden, Name der Konfigurationsdatei
531 <li><a accesskey="2" href="#Administratorpasswort">Administratorpasswort</a>:  Wo das Administratorpasswort gesetzt werden kann
532 <li><a accesskey="3" href="#Authentifizierungsdatenbank">Authentifizierungsdatenbank</a>:  Verbindungseinstellungen zur Authentifizierungsdatenbank
533 <li><a accesskey="4" href="#Passwort_00c3_00bcberpr_00c3_00bcfung">Passwortüberprüfung</a>:  Einstellungen zur Überprüfung der Benutzerpasswörter
534 <li><a accesskey="5" href="#Name-des-Session_002dCookies">Name des Session-Cookies</a>:  Ändern des Cookie-Namens bei Verwendung mehrerer Lx-Office-Installationen auf einem Server
535 <li><a accesskey="6" href="#Anlegen-der-Authentifizierungsdatenbank">Anlegen der Authentifizierungsdatenbank</a>:  Wie die Authentifizierungsdatenbank angelegt wird
536 </ul>
537
538 <!--  -->
539 <div class="node">
540 <a name="Grundlagen-zur-Benutzerauthentifizierung"></a>
541 <p><hr>
542 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Administratorpasswort">Administratorpasswort</a>,
543 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Benutzerauthentifizierung-und-Administratorpasswort">Benutzerauthentifizierung und Administratorpasswort</a>
544
545 </div>
546
547 <h3 class="section">6.1 Grundlagen zur Benutzerauthentifizierung</h3>
548
549 <p>Lx-Office verwaltet die Benutzerinformationen in einer Datenbank, die
550 im folgenden &ldquo;Authentifizierungsdatenbank&rdquo; genannt wird. Für jeden
551 Benutzer kann dort eine eigene Datenbank für die eigentlichen
552 Finanzdaten hinterlegt sein. Diese beiden Datenbanken können, müssen
553 aber nicht unterschiedlich sein.
554
555    <p>Im einfachsten Fall gibt es für Lx-Office nur eine einzige Datenbank,
556 in der sowohl die Benutzerinformationen als auch die Daten abgelegt
557 werden.
558
559    <p>Zusätzlich ermöglicht es Lx-Office, dass die Benutzerpasswörter
560 entweder gegen die Authentifizierungsdatenbank oder gegen einen
561 LDAP-Server überprüft werden.
562
563    <p>Welche Art der Passwortüberprüfung Lx-Office benutzt und wie Lx-Office
564 die Authentifizierungsdatenbank erreichen kann, wird in der
565 Konfigurationsdatei <code>config/lx_office.conf</code> festgelegt. Diese
566 muss bei der Installation und bei einem Upgrade von einer Version vor
567 v2.6.0 angelegt werden. Eine Beispielkonfigurationsdatei
568 <code>config/lx_office.conf.default</code> existiert, die als Vorlage
569 benutzt werden kann.
570
571 <div class="node">
572 <a name="Administratorpasswort"></a>
573 <p><hr>
574 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Authentifizierungsdatenbank">Authentifizierungsdatenbank</a>,
575 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Grundlagen-zur-Benutzerauthentifizierung">Grundlagen zur Benutzerauthentifizierung</a>,
576 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Benutzerauthentifizierung-und-Administratorpasswort">Benutzerauthentifizierung und Administratorpasswort</a>
577
578 </div>
579
580 <h3 class="section">6.2 Administratorpasswort</h3>
581
582 <p>Das Passwort, das zum Zugriff auf das Aministrationsinterface benutzt wird,
583 wird ebenfalls in dieser Datei gespeichert. Es kann auch nur dort und nicht
584 mehr im Administrationsinterface selber geändert werden. Der Parameter dazu
585 heißt <code>$self-&gt;{admin_password}</code>.
586
587 <div class="node">
588 <a name="Authentifizierungsdatenbank"></a>
589 <p><hr>
590 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Passwort_00c3_00bcberpr_00c3_00bcfung">Passwortüberprüfung</a>,
591 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Administratorpasswort">Administratorpasswort</a>,
592 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Benutzerauthentifizierung-und-Administratorpasswort">Benutzerauthentifizierung und Administratorpasswort</a>
593
594 </div>
595
596 <h3 class="section">6.3 Authentifizierungsdatenbank</h3>
597
598 <p>Die Verbindung zur Authentifizierungsdatenbank wird mit den Parametern
599 in <code>$self-&gt;{DB_config}</code> konfiguriert. Hier sind die folgenden
600 Parameter anzugeben:
601
602      <ul>
603 <li>&lsquo;<samp><span class="samp">host</span></samp>&rsquo; &ndash; Der Rechnername oder die IP-Adresse des Datenbankservers
604 <li>&lsquo;<samp><span class="samp">port</span></samp>&rsquo; &ndash; Die Portnummer des Datenbankservers, meist 5432
605 <li>&lsquo;<samp><span class="samp">db</span></samp>&rsquo; &ndash; Der Name der Authentifizierungsdatenbank
606 <li>&lsquo;<samp><span class="samp">user</span></samp>&rsquo; &ndash; Der Benutzername, mit dem sich Lx-Office beim Datenbankserver anmeldet (z.B. &ldquo;postgres&rdquo;)
607 <li>&lsquo;<samp><span class="samp">password</span></samp>&rsquo; &ndash; Das Passwort für den Datenbankbenutzer
608 </ul>
609
610    <p>Die Datenbank muss noch nicht existieren. Lx-Office kann sie
611 automatisch anlegen (mehr dazu siehe unten).
612
613 <div class="node">
614 <a name="Passwort%c3%bcberpr%c3%bcfung"></a>
615 <a name="Passwort_00c3_00bcberpr_00c3_00bcfung"></a>
616 <p><hr>
617 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Name-des-Session_002dCookies">Name des Session-Cookies</a>,
618 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Authentifizierungsdatenbank">Authentifizierungsdatenbank</a>,
619 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Benutzerauthentifizierung-und-Administratorpasswort">Benutzerauthentifizierung und Administratorpasswort</a>
620
621 </div>
622
623 <h3 class="section">6.4 Passwortüberprüfung</h3>
624
625 <p>Lx-Office unterstützt Passwortüberprüfung auf zwei Arten: gegen die
626 Authentifizierungsdatenbank und gegen einen externen LDAP- oder
627 Active-Directory-Server. Welche davon benutzt wird, regelt der
628 Parameter <code>$self-&gt;{module}</code>.
629
630    <p>Sollen die Benutzerpasswörter in der Authentifizierungsdatenbank
631 gespeichert werden, so muss der Parameter <code>$self-&gt;{module}</code> den
632 Wert &lsquo;<samp><span class="samp">DB</span></samp>&rsquo; enthalten. In diesem Fall können sowohl der
633 Administrator als auch die Benutzer selber ihre Psaswörter in
634 Lx-Office ändern.
635
636    <p>Soll hingegen ein externer LDAP- oder Active-Directory-Server benutzt
637 werden, so muss der Parameter <code>$self-&gt;{module}</code> auf &lsquo;<samp><span class="samp">LDAP</span></samp>&rsquo;
638 gesetzt werden. In diesem Fall müssen zusätzliche Informationen über
639 den LDAP-Server in <code>$self-&gt;{LDAP_config}</code> angegeben werden:
640
641      <ul>
642 <li>&lsquo;<samp><span class="samp">host</span></samp>&rsquo; &ndash; Der Rechnername oder die IP-Adresse des LDAP- oder Active-Directory-Servers. Diese Angabe ist zwingend erforderlich. 
643 <li>&lsquo;<samp><span class="samp">port</span></samp>&rsquo; &ndash; Die Portnummer des LDAP-Servers; meist 389. 
644 <li>&lsquo;<samp><span class="samp">tls</span></samp>&rsquo; &ndash; Wenn Verbindungsverschlüsselung gewünscht ist, so diesen Wert auf &lsquo;<samp><span class="samp">1</span></samp>&rsquo; setzen, andernfalls auf &lsquo;<samp><span class="samp">0</span></samp>&rsquo; belassen
645 <li>&lsquo;<samp><span class="samp">attribute</span></samp>&rsquo; &ndash; Das LDAP-Attribut, in dem der Benutzername steht, den der Benutzer eingegeben hat. Für Active-Directory-Server
646   ist dies meist &lsquo;<samp><span class="samp">sAMAccountName</span></samp>&rsquo;, für andere LDAP-Server hingegen &lsquo;<samp><span class="samp">uid</span></samp>&rsquo;. Diese Angabe ist zwingend erforderlich. 
647 <li>&lsquo;<samp><span class="samp">base_dn</span></samp>&rsquo; &ndash; Der Abschnitt des LDAP-Baumes, der durchsucht werden soll. Diese Angabe ist zwingend erforderlich. 
648 <li>&lsquo;<samp><span class="samp">filter</span></samp>&rsquo; &ndash; Ein optionaler LDAP-Filter. Enthält dieser Filter das Wort <code>&lt;%login%&gt;</code>, so wird dieses durch den vom Benutzer
649   eingegebenen Benutzernamen ersetzt. Andernfalls wird der LDAP-Baum nach einem Element durchsucht, bei dem das oben angegebene Attribut
650   mit dem Benutzernamen identisch ist. 
651 <li>&lsquo;<samp><span class="samp">bind_dn</span></samp>&rsquo; und &lsquo;<samp><span class="samp">bind_password</span></samp>&rsquo; &ndash; Wenn der LDAP-Server eine Anmeldung erfordert, bevor er durchsucht werden kann (z.B. ist dies bei
652   Active-Directory-Servern der Fall), so kann diese hier angegeben werden. Für Active-Directory-Server kann als &lsquo;<samp><span class="samp">bind_dn</span></samp>&rsquo; entweder eine
653   komplette LDAP-DN wie z.B. &lsquo;<samp><span class="samp">cn=Martin Mustermann,cn=Users,dc=firmendomain</span></samp>&rsquo; auch nur der volle Name des Benutzers
654   eingegeben werden; in diesem Beispiel also &lsquo;<samp><span class="samp">Martin Mustermann</span></samp>&rsquo;. 
655 </ul>
656
657 <div class="node">
658 <a name="Name-des-Session-Cookies"></a>
659 <a name="Name-des-Session_002dCookies"></a>
660 <p><hr>
661 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Anlegen-der-Authentifizierungsdatenbank">Anlegen der Authentifizierungsdatenbank</a>,
662 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Passwort_00c3_00bcberpr_00c3_00bcfung">Passwortüberprüfung</a>,
663 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Benutzerauthentifizierung-und-Administratorpasswort">Benutzerauthentifizierung und Administratorpasswort</a>
664
665 </div>
666
667 <h3 class="section">6.5 Name des Session-Cookies</h3>
668
669 <p>Sollen auf einem Server mehrere Lx-Office-Installationen aufgesetzt
670 werden, so müssen die Namen der Session-Cookies für alle
671 Installationen unterschiedlich sein. Der Name des Cookies wird mit dem
672 Parameter <code>$self-&gt;{cookie_name}</code> gesetzt.
673
674    <p>Diese Angabe ist optional, wenn nur eine Installation auf dem Server
675 existiert.
676
677 <div class="node">
678 <a name="Anlegen-der-Authentifizierungsdatenbank"></a>
679 <p><hr>
680 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Name-des-Session_002dCookies">Name des Session-Cookies</a>,
681 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Benutzerauthentifizierung-und-Administratorpasswort">Benutzerauthentifizierung und Administratorpasswort</a>
682
683 </div>
684
685 <h3 class="section">6.6 Anlegen der Authentifizierungsdatenbank</h3>
686
687 <p>Nachdem alle Einstellungen in <code>config/lx_office.conf</code>
688 vorgenommen wurden, muss Lx-Office die Authentifizierungsdatenbank
689 anlegen. Dieses geschieht automatisch, wenn Sie sich im
690 Administrationsmodul anmelden, das unter der folgenden URL erreichbar
691 sein sollte:
692
693    <p><a href="http://localhost/lx-erp/admin.pl">http://localhost/lx-erp/admin.pl</a>
694
695 <!--  -->
696 <div class="node">
697 <a name="Benutzer--und-Gruppenverwaltung"></a>
698 <a name="Benutzer_002d-und-Gruppenverwaltung"></a>
699 <p><hr>
700 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#OpenDocument_002dVorlagen">OpenDocument-Vorlagen</a>,
701 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Benutzerauthentifizierung-und-Administratorpasswort">Benutzerauthentifizierung und Administratorpasswort</a>,
702 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
703
704 </div>
705
706 <h2 class="chapter">7 Benutzer- und Gruppenverwaltung</h2>
707
708 <p>Nach der Installation müssen Benutzer, Gruppen und Datenbanken
709 angelegt werden.  Dieses geschieht im Administrationsmenü, das Sie
710 unter folgender URL finden:
711
712    <p><a href="http://localhost/lx-erp/admin.pl">http://localhost/lx-erp/admin.pl</a>
713
714    <p>Verwenden Sie zur Anmeldung das Password, dass Sie in der Datei
715 <code>config/lx_office.conf</code> eingetragen haben.
716
717 <ul class="menu">
718 <li><a accesskey="1" href="#Zusammenh_00c3_00a4nge">Zusammenhänge</a>:  Übersicht über Benutzer, Gruppen, Berechtigungen und Datenbanken
719 <li><a accesskey="2" href="#Datenbanken-anlegen">Datenbanken anlegen</a>:  Hinweise zum Anlegen von Datenbanken
720 <li><a accesskey="3" href="#Gruppen-anlegen">Gruppen anlegen</a>:  Hinweise zum Anlegen von Gruppen
721 <li><a accesskey="4" href="#Benutzer-anlegen">Benutzer anlegen</a>:  Hinweise zum Anlegen von Benutzern
722 <li><a accesskey="5" href="#Gruppenmitgliedschaften-verwalten">Gruppenmitgliedschaften verwalten</a>:  Wie man Gruppen Benutzer zuordnet
723 <li><a accesskey="6" href="#Migration-alter-Installationen">Migration alter Installationen</a>:  Automatische Übernahme bei Update von einer älteren Version
724 </ul>
725
726 <div class="node">
727 <a name="Zusammenh%c3%a4nge"></a>
728 <a name="Zusammenh_00c3_00a4nge"></a>
729 <p><hr>
730 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Datenbanken-anlegen">Datenbanken anlegen</a>,
731 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Benutzer_002d-und-Gruppenverwaltung">Benutzer- und Gruppenverwaltung</a>
732
733 </div>
734
735 <h3 class="section">7.1 Zusammenhänge</h3>
736
737 <p>Lx-Office verwendet eine Datenbank zum Speichern all seiner
738 Informationen wie Kundendaten, Artikel, Angebote, Rechnungen etc. Um
739 mit Lx-Office arbeiten zu können, muss eine Person einen
740 Benutzeraccount haben. Jedem Benutzeraccount wiederum wird genau eine
741 Datenbank zugewiesen, mit der dieser Benutzer arbeiten kann. Es ist
742 möglich und normal, dass mehreren Benutzern die selbe Datenbank
743 zugewiesen wird, sodass sie alle mit den selben Daten arbeiten können.
744
745    <p>Die Basisdaten der Benutzer, die in der Administration eingegeben
746 werden können, werden in einer zweiten Datenbank gespeichert, der
747 bereits erwähnten Authentifizierungsdatenbank. Diese ist also den
748 Produktivdaten enthaltenden Datenbanken vorgeschaltet. Pro
749 Lx-Office-Installation gibt es nur eine Authentifizierungsdatenbank,
750 aber beliebig viele Datenbanken mit Firmendaten.
751
752    <p>Lx-Office kann seinen Benutzern Zugriff auf bestimmte
753 Funktionsbereiche erlauben oder verbieten. Wird der Zugriff nicht
754 gestattet, so werden der entsprechenden Menüpunkte auch nicht
755 angezeigt. Diese Rechte werden ebenfalls in der
756 Authentifizierungsdatenbank gespeichert.
757
758    <p>Um Rechte verteilen zu können, verwendet Lx-Office ein
759 Gruppen-Prinzip. Einer Gruppe kann der Zugriff auf bestimmte Bereiche
760 erlaubt werden. Ein Benutzer wiederum kann Mitglied in einer oder
761 mehrerer Gruppen sein. Der Benutzer hat Zugriff auf alle diejenigen
762 Funktionen, die mindestens einer Gruppe erlaubt sind, in der der
763 Benutzer Mitglied ist.
764
765    <p>Die allgemeine Reihenfolge, in der Datenbanken, Gruppen und Benutzer
766 angelegt werden sollten, lautet:
767
768      <ol type=1 start=1>
769 <li>Datenbank anlegen
770 <li>Gruppen anlegen
771 <li>Benutzer anlegen
772 <li>Benutzer den Gruppen zuordnen
773         </ol>
774
775 <div class="node">
776 <a name="Datenbanken-anlegen"></a>
777 <p><hr>
778 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Gruppen-anlegen">Gruppen anlegen</a>,
779 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Zusammenh_00c3_00a4nge">Zusammenhänge</a>,
780 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Benutzer_002d-und-Gruppenverwaltung">Benutzer- und Gruppenverwaltung</a>
781
782 </div>
783
784 <h3 class="section">7.2 Datenbanken anlegen</h3>
785
786 <p>Zuerst muss eine Datenbank angelegt werden. Verwenden Sie für den
787 Datenbankzugriff den vorhin angelegten Benutzer (in unseren Beispielen
788 ist dies &lsquo;<samp><span class="samp">lxoffice</span></samp>&rsquo;).
789
790    <p>Wenn Sie für die Lx-Office-Installation nicht den europäischen
791 Schriftsatz ISO-8859-15 sondern UTF-8 (Unicode) benutzen wollen, so
792 müssen Sie vor dem Anlegen der Datenbank in der Datei
793 <code>config/lx_office.conf</code> die Variable <code>dbcharset</code> im
794 Abschnitt <code>system</code> auf den Wert &lsquo;<samp><span class="samp">UTF-8</span></samp>&rsquo; setzen. Zusätzlich
795 muss beim Anlegen der Datenbank &lsquo;<samp><span class="samp">UTF-8 Unicode</span></samp>&rsquo; als Schriftsatz
796 ausgewählt werden.
797
798    <p>Bitte beachten Sie, dass alle Datenbanken den selben Zeichensatz
799 verwenden müssen, da diese Einstellungen momentan global in Lx-Office
800 vorgenommen wird und nicht nach Datenbank unterschieden werden
801 kann. Auch die Authentifizierungsdatenbank muss mit diesem Zeichensatz
802 angelegt worden sein.
803
804 <div class="node">
805 <a name="Gruppen-anlegen"></a>
806 <p><hr>
807 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Benutzer-anlegen">Benutzer anlegen</a>,
808 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Datenbanken-anlegen">Datenbanken anlegen</a>,
809 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Benutzer_002d-und-Gruppenverwaltung">Benutzer- und Gruppenverwaltung</a>
810
811 </div>
812
813 <h3 class="section">7.3 Gruppen anlegen</h3>
814
815 <p>Eine Gruppe wird in der Gruppenverwaltung angelegt. Ihr muss ein Name
816 gegeben werden, eine Beschreibung ist hingegen optional. Nach dem
817 Anlegen können Sie die verschiedenen Bereiche wählen, auf die
818 Mitglieder dieser Gruppe Zugriff haben sollen.
819
820    <p>Benutzergruppen sind unabhängig von Datenbanken, da sie in der
821 Authentifizierungsdatenbank gespeichert werden. Sie gelten für alle
822 Datenbanken, die in dieser Installation verwaltet werden.
823
824 <div class="node">
825 <a name="Benutzer-anlegen"></a>
826 <p><hr>
827 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Gruppenmitgliedschaften-verwalten">Gruppenmitgliedschaften verwalten</a>,
828 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Gruppen-anlegen">Gruppen anlegen</a>,
829 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Benutzer_002d-und-Gruppenverwaltung">Benutzer- und Gruppenverwaltung</a>
830
831 </div>
832
833 <h3 class="section">7.4 Benutzer anlegen</h3>
834
835 <p>Beim Anlegen von Benutzern werden für viele Parameter
836 Standardeinstellungen vorgenommen, die den Gepflogenheiten des
837 deutschen Raumes entsprechen.
838
839    <p>Zwingend anzugeben sind der Loginname sowie die komplette
840 Datenbankkonfiguration. Wenn die Passwortauthentifizierung über die
841 Datenbank eingestellt ist, so kann hier auch das Benutzerpasswort
842 gesetzt bzw. geändert werden. Ist hingegen die LDAP-Authentifizierung
843 aktiv, so ist das Passwort-Feld deaktiviert.
844
845    <p>In der Datenbankkonfiguration müssen die Zugriffsdaten einer der eben
846 angelegten Datenbanken eingetragen werden.
847
848 <div class="node">
849 <a name="Gruppenmitgliedschaften-verwalten"></a>
850 <p><hr>
851 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Migration-alter-Installationen">Migration alter Installationen</a>,
852 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Benutzer-anlegen">Benutzer anlegen</a>,
853 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Benutzer_002d-und-Gruppenverwaltung">Benutzer- und Gruppenverwaltung</a>
854
855 </div>
856
857 <h3 class="section">7.5 Gruppenmitgliedschaften verwalten</h3>
858
859 <p>Nach dem Anlegen von Benutzern und Gruppen müssen Benutzer den Gruppen
860 zugewiesen werden. Dazu gibt es zwei Möglichkeiten:
861
862      <ol type=1 start=1>
863 <li>In der Gruppenverwaltung wählt man eine Gruppe aus. Im folgenden
864 Dialog kann man dann einzeln die Benutzer der Gruppe hinzufügen. 
865 <li>In der Gruppenverwaltung wählt man das Tool zur Verwaltung der
866 Gruppenmitgliedschaft. Hier wird eine Matrix angezeigt, die alle im
867 System angelegten Gruppen und Benutzer enthält. Durch Setzen der
868 Häkchen wird der Benutzer in der ausgewählten Zeile der Gruppe in der
869 ausgewählten Spalte hinzugefügt.
870         </ol>
871
872 <div class="node">
873 <a name="Migration-alter-Installationen"></a>
874 <p><hr>
875 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Gruppenmitgliedschaften-verwalten">Gruppenmitgliedschaften verwalten</a>,
876 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Benutzer_002d-und-Gruppenverwaltung">Benutzer- und Gruppenverwaltung</a>
877
878 </div>
879
880 <h3 class="section">7.6 Migration alter Installationen</h3>
881
882 <p>Wenn Lx-Office 2.6.2 über eine ältere Version installiert wird, in der
883 die Benutzerdaten noch im Dateisystem im Verzeichnis <code>users</code>
884 verwaltet wurden, so bietet Lx-Office die Möglichkeit, diese
885 Benutzerdaten automatisch in die Authentifizierungsdatenbank zu
886 übernehmen. Dies geschieht, wenn man sich nach dem Update der
887 Installation das erste Mal im Administrationsbereich anmeldet. Findet
888 Lx-Office die Datei <code>users/members</code>, so wird der
889 Migrationsprozess gestartet.
890
891    <p>Der Migrationsprozess ist nahezu vollautomatisch. Alle Benutzerdaten
892 können übernommen werden. Nach den Benutzerdaten bietet Lx-Office noch
893 die Möglichkeit an, dass automatisch eine Benutzergruppe angelegt
894 wird. Dieser Gruppe wird Zugriff auf alle Funktionen von Lx-Office
895 gewährt. Alle migrierten Benutzern werden Mitglied in dieser
896 Gruppe. Damit wird das Verhalten von Lx-Office bis Version 2.4.3
897 inklusive wiederhergestellt, und die Benutzer können sich sofort
898 wieder anmelden und mit dem System arbeiten.
899
900 <!--  -->
901 <div class="node">
902 <a name="OpenDocument-Vorlagen"></a>
903 <a name="OpenDocument_002dVorlagen"></a>
904 <p><hr>
905 n&auml;chstes:&nbsp;<a rel="next" accesskey="n" href="#Lx_002dOffice-ERP-verwenden">Lx-Office ERP verwenden</a>,
906 voriges:&nbsp;<a rel="previous" accesskey="p" href="#Benutzer_002d-und-Gruppenverwaltung">Benutzer- und Gruppenverwaltung</a>,
907 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
908
909 </div>
910
911 <h2 class="chapter">8 OpenDocument-Vorlagen</h2>
912
913 <p>Lx-Office unterstützt die Verwendung von Vorlagen im
914 OpenDocument-Format, wie es OpenOffice.org ab Version 2
915 erzeugt. Lx-Office kann dabei sowohl neue OpenDocument-Dokumente als
916 auch aus diesen direkt PDF-Dateien erzeugen.  Um die Unterstützung von
917 OpenDocument-Vorlagen zu aktivieren muss in der Datei
918 <code>config/lx_office.conf</code> die Variable <code>opendocument</code> im
919 Abschnitt <code>print_templates</code> auf &lsquo;<samp><span class="samp">1</span></samp>&rsquo; stehen.  Dieses ist die
920 Standardeinstellung.
921
922    <p>Weiterhin muss in der Datei <code>config/lx_office.conf</code> die Variable
923 <code>dbcharset</code> im Abschnitt <code>system</code> auf die Zeichenkodierung
924 gesetzt werden, die auch bei der Speicherung der Daten in der
925 Datenbank verwendet wird. Diese ist in den meisten Fällen "UTF-8".
926
927    <p>Während die Erzeugung von reinen OpenDocument-Dateien keinerlei
928 weitere Software benötigt, wird zur Umwandlung dieser Dateien in PDF
929 OpenOffice.org benötigt. Soll dieses Feature genutzt werden, so muss
930 neben OpenOffice.org ab Version 2 auch der &ldquo;X virtual frame buffer&rdquo;
931 (xvfb) installiert werden.  Bei Debian ist er im Paket &ldquo;xvfb&rdquo;
932 enthalten. Andere Distributionen enthalten ihn in anderen Paketen.
933
934    <p>Nach der Installation müssen in der Datei <code>config/lx_config.conf</code>
935 zwei weitere Variablen angepasst werden: <code>openofficeorg_writer</code>
936 muss den vollständigen Pfad zur OpenOffice.org Writer-Anwendung
937 enthalten. <code>xvfb</code> muss den Pfad zum &ldquo;X virtual frame buffer&rdquo;
938 enthalten. Beide stehen im Abschnitt <code>applications</code>.
939
940    <p>Zusätzlich gibt es zwei verschiedene Arten, wie Lx-Office mit
941 OpenOffice kommuniziert. Die erste Variante, die benutzt wird, wenn
942 die Variable <code>$openofficeorg_daemon</code> gesetzt ist, startet ein
943 OpenOffice, das auch nach der Umwandlung des Dokumentes gestartet
944 bleibt. Bei weiteren Umwandlungen wird dann diese laufende Instanz
945 benutzt. Der Vorteil ist, dass die Zeit zur Umwandlung deutlich
946 reduziert wird, weil nicht für jedes Dokument ein OpenOffice gestartet
947 werden muss. Der Nachteil ist, dass diese Methode Python und die
948 Python-UNO-Bindings benötigt, die Bestandteil von OpenOffice 2 sind.
949
950    <p>Ist <code>$openofficeorg_daemon</code> nicht gesetzt, so wird für jedes
951 Dokument OpenOffice neu gestartet und die Konvertierung mit Hilfe
952 eines Makros durchgeführt. Dieses Makro muss in der Dokumentenvorlage
953 enthalten sein und &ldquo;Standard.Conversion.ConvertSelfToPDF()&rdquo;
954 heißen. Die Beispielvorlage &lsquo;<samp><span class="samp">templates/German-invoice.odt</span></samp>&rsquo;
955 enthält ein solches Makro, das in jeder anderen Dokumentenvorlage
956 ebenfalls enthalten sein muss.
957
958    <p>Als letztes muss herausgefunden werden, welchen Namen OpenOffice.org
959 Writer dem Verzeichnis mit den Benutzereinstellungen gibt. Unter
960 Debian ist dies momentan <code>~/.openoffice.org2</code>. Sollte der Name
961 bei Ihrer OpenOffice.org-Installation anders sein, so muss das
962 Verzeichnis <code>users/.openoffice.org2</code> entsprechend umbenannt
963 werden. Ist der Name z.B. einfach nur <code>.openoffice</code>, so wäre
964 folgender Befehl auszuführen:
965
966    <p><code>mv users/.openoffice.org2 users/.openoffice</code>
967
968    <p>Dieses Verzeichnis, wie auch das komplette <code>users</code>-Verzeichnis, muss vom
969 Webserver beschreibbar sein. Dieses wurde bereits erledigt
970 (see <a href="#Manuelle-Installation-des-Programmpaketes">Manuelle Installation des Programmpaketes</a>), kann aber erneut überprüft
971 werden, wenn die Konvertierung nach PDF fehlschlägt.
972
973 <!--  -->
974 <div class="node">
975 <a name="Lx-Office-ERP-verwenden"></a>
976 <a name="Lx_002dOffice-ERP-verwenden"></a>
977 <p><hr>
978 voriges:&nbsp;<a rel="previous" accesskey="p" href="#OpenDocument_002dVorlagen">OpenDocument-Vorlagen</a>,
979 aufw&auml;rts:&nbsp;<a rel="up" accesskey="u" href="#Top">Top</a>
980
981 </div>
982
983 <h2 class="chapter">9 Lx-Office ERP verwenden</h2>
984
985 <p>Nach erfolgreicher Installation ist der Loginbildschirm unter
986 folgender URL erreichbar:
987
988    <p><a href="http://localhost/lx-office-erp/login.pl">http://localhost/lx-office-erp/login.pl</a>
989
990    <p>Die Administrationsseite erreichen Sie unter:
991
992    <p><a href="http://localhost/lx-office-erp/admin.pl">http://localhost/lx-office-erp/admin.pl</a>
993
994 </body></html>
995
996 <!--
997 \1f
998 Local Variables:
999 coding: utf-8
1000 End:
1001
1002 -->