next up previous contents
Next: Linux-Zugangs-Klient Up: dacs-tec-doc Previous: Komponenten und Softwarepaket   Contents

Subsections

Hintergrundsystem

Beschreibung der Mechanismen

Image /afs/tu-chemnitz.de/project/dacs/docs/documentation//datenfluss.jpg

Dienste

Alle Dienste, welche sich aktiv im System befinden, sind ortsunabhängig und werden durch eine Liste von Fähigkeiten und Eigenschaften beschrieben bzw. lokalisiert.

Update-Dienst updated

Beschreibung

Der Update-Dienst findet aus den Zugangsdaten alle geänderten oder gelöschten Datensätze heraus und bildet daraus Transaktionen für jeden Kontroller.

Darüber hinaus kann man mit diesem Dienst veranlassen, dass eine bestimmte Proxy-Datenbank vollständig abgeglichen wird. (siehe Funktion dump

Spezifikation

Eigenschaft Wert
class updated
description Update-daemon
syntax dump[table object]

exportiere Funktionen

Funktionsname Parameter
dump string:table string:object
  table Datenbankname
  object zu synchronisierende Objekt

Beispiel

[frame=single,framesep=5mm,fontsize=\small]
dacs -s '(''class'' ''updated'')' -a ''acl 1/B202'' -c dump

TODO

Derzeit ist die Datenbank und die Spezifikation der zu überwachenden Tabellen in dem File update.c fest einprogrammiert. Dies sollte konfigurierbar gemacht werden.

[frame=single,framesep=5mm,fontsize=\small]
key["berechtigung"]=string("person_nr");
query["berechtigung"]=string("concat('subject:',person_nr)");
dstdb["berechtigung"]="acl";

query["acl"]=string("chains_name");
join["acl"]=string("chains");

query["person_benutzerklasse"]=
    string("concat('subject:',person_nr)");
dstdb["person_benutzerklasse"]="acl";

query["mcard"]=string("mcard_hash");

dump_query["mcard"]=string("select mcard_hash from mcard");
dump_query["acl"]=string("\
   select concat('subject:',person_nr) from berechtigung\
   where berechtigung_sdatum='0000-00-00 00:00'");
dump_query2["acl"]=string("\
   select chains_name from chains");

MAP-Name Funktion
key  
query  
dstdb  
join  
dump_query  
dump_query2  

Magnetkarten-Datenbank-Dienst mcardd

Beschreibung

Der Dienst mcardd beantwortet alle Anfragen, welche für die Umrechnung von Magnetkarten-ID und Person dienen. Weiterhin updated er bestimmte Controller anhand der Aufträge, welche in der Transaktion-Tabelle stehen.

Anhand eines Keys wird der entsprechende Datensatz aus der Tabelle mcard gelesen. Als Antwort auf ein query wird ein value geausgeliefert, welcher als String die Personen-Nummer enthält.

Spezifikation

Eigenschaft Wert
class db
description Database-Service
flag orginal ... für primären DB-Dienst
provide mcard

exportiere Funktionen

Funktionsname Parameter
query string:beliebiger Schlüssel

Beispiel

[frame=single,framesep=5mm,fontsize=\tiny]
dacs -s '(''class'' ''db'')(''provide'' ''mcard')' -a '' '8976787657' '' -c query

Rechte-Datenbank-Dienst alcd

Beschreibung

Der Dienst acld beantwortet alle Anfragen, welche für die Berechnung der Berechtigung einer Person dienen.

Bei einem query werden alle Einträge aus der Tabelle acl gelesen, bei welchen der chains_name mit dem übergebenen Key übereinstimmen.

Steht vor dem eigentlichen Key ein ''subject:'', so werden alle Sätze aus der Tabelle person_berechtigung gelesen, bei dem die Person_id übereinstimmt.

Alle gefundenen Datensätze zu einem bestimmten Key werden als eine Antwort nach dem Format (datensatz)(datensatz)... verpackt.

Spezifikation

Eigenschaft Wert
class db
description Database-Service
flag orginal ... für primären DB-Dienst
provide acl

exportierte Funktionen

Funktionsname Parameter
query string:beliebiger Schlüssel

Beispiel

[frame=single,framesep=5mm,fontsize=\tiny]
dacs -s '(''class'' ''db'')(''provide'' ''acl')' -a '' 'subject:9310' '' -c query

Datensammel-Dienst logd

Beschreibung

Dieser Dienst sammelt alle Event-Meldungen der Klienten und speichert diese nach /var/log/dacs.log. Durch diesen Dienst und die Log-Spooler-Dienste auf den Klienten wird sichergestellt, dass keine Log-Einträge verloren gehen.

Spezifikation

Eigenschaft Wert
class db
description Log-Daemon
flag orginal
provide logdata

exportierte Funktionen

Funktionsname Parameter
log string:host string:tag string:datetime string:msg
  host: Hostname oder Kontrollername+Dienstname
  tag: Klasse des Events (msg, warning, event, error,...)
  datetime: Datum und Zeit (2002-07-12 12:23)
  msg: Text

Installation

RPM-Paekete

Für eine Gruppe von Diensten wird jeweils ein RPM-Paket für RedHat bereitgestellt. Diese Dienste können auf mehrere Server verteilt werden um Ausfallsicherheit und Lastverteilung zu erreichen. Dies ist jedoch nicht zwingend nötig. Folgende Pakete stehen zur Verfügung:

benötigte Dienste

DHCP

TFTP

NFS

RSYNC

Konfigurationsmöglichkeiten

/etc/dacs/log.cfg

/etc/dacs/services.cfg

/etc/dacs/sns.cfg


next up previous contents
Next: Linux-Zugangs-Klient Up: dacs-tec-doc Previous: Komponenten und Softwarepaket   Contents
Ronald Schmidt 2003-05-12