Tags:
create new tag
, view all tags

nethz Service Module

Übersicht

Ein einzelner nethz Service besteht aus folgenden Komponenten:

  • Eintrag in der Tabelle SERVICE
  • Service-Modul: <Servicename>_SM.pm
  • Validations-Modul: <Servicename>.pm
  • User-CGI: <servicename>.cgi
  • Admin-CGI: <servicename>_admin.cgi

Der Tabelleneintrag ist obligatorisch, alle übrigen Komponenten sind optional. Das Service-Modul ist für bestimmte Service-Optionen verantwortlich, beispielsweise ein Email-Alias für den Mailbox-Service. Das Validations-Modul stellt die eigentliche Verbindung zum externen Server her, richtet dort das Konto ein, setzt das Passwort und löscht das Konto wieder. Das User-CGI ist im Admin-Tool unter "Meine Services" zu finden und ermöglicht es dem User, gewisse Service-Einstellungen selbst vorzunehmen. Das Admin-CGI schliesslich findet der zuständige Administrator unter "Admin-Tasks" und ermöglicht die Einstellung weiterer Service-Parameter.

Standard-Services

Im nethz Admin-Tool wird zwischen Standard-Services und den übrigen Services unterschieden. Ein Standard-Service ist mit einer einfachen Authorisierung zu vergleichen, welche nach Wahl mit einem eigenen Passwort ausgestattet ist. Typische Beispiele für Standard-Services sind:

  • Dialup844
  • VPN
  • Message-Tree

Die allermeisten nethz Services sind Standard-Services. Sie bestehen lediglich aus einem einfachen Tabelleneintrag in der Tabelle SERVICE.

Tabelle SERVICE

NSID Laufnummer
NAME Name des Services
IKON Kurzname des Services
DESCRIPTION Beschreibung
URL Url mit einer weiteren Details
NEEDS_UUID Service benötigt eine Unix-UID (Bsp: AFS, MAC)
USER_CGI Programm für Normalbenutzer zur Einstellung von Service-Parametern
ADMIN_CGI Programm für Administratoren zur Einstellung von Service-Parametern
SERVICE_MODULE Perl-Modul ohne .pm Angabe, Bsp.: Mailbox_SM
VALIDATION_MODULE Perl-Modul ohne .pm Angabe, Bsp.: Mailbox
MAILWARNING 0/1 Soll für diesen Service eine Mailwarnung vor dem Sperren versandt werden?
DAYS_BEFORE_LOCK Anz. Tage nach Anstellungsablauf, bevor der Service gesperrt wird
DAYS_BEFORE_DELETE Anz. Tage nach Anstellungsablauf, bevor der Service gelöscht wird
CAN_CHANGE_PASSWORD 0/1 (kann das Passwort geändert werden?)
CONTAINS_DATA 0/1 Service enthält Daten (Bsp. AFS) und wird erst am Ende der ETH-Beziehung nicht gelöscht
LDAP_AUTH 0/1 Service schreibt zusätzliche LDAP(s)-Parameter (Bsp. AFS)
ENCRYPTION_METHOD Verschlüsselungsmethode für RADIUS-Services
MAILWARNING_TEXT Spezialtext für Mailwarnung, die beim Service-Ablauf verschickt wird
MAILWARNING_TEXT_EN wie oben, auf Englisch
NOTIFY Beim Sperren des Services wird eine entsprechende Notiz an die angegebene Emailadresse gesendet
CRE_DATE Datum, wann der Tabelleneintrag erstellt wurde
MOD_DATE Datum, wann der Tabelleneintrag modifiziert wurde
MOD_BY von wem wurde der Tabelleneintrag modifiziert?

Ein neuer Eintrag in der Tabelle SERVICE löst den Trigger TR_SERVICE_ADD aus, welcher in den Tabellen SERVICE_POLICIES und SERVICE_PRIVILEGE gewisse Standard-Einträge macht.

Tabelle POLICIES

Enthält verschiedene Username- und Passwortvorschriften, welche einzelnen Services zugeordnet werden können. Die Tabelle besitzt kein eigenes GUI, kann aber mit einem Frontend-Werkzeug wie MS-ACCESS problemlos gefüttert werden.

POLID Primärschlüssel
POLICY_DESCRIPTION Kurzbeschreibung für diese Policy (Bsp. "Standard", "Verschärft")
PASSWORD_LENGTH_MIN Minimallänge für Passwörter
PASSWORD_LENGTH_MAX Maximallänge für Passwörter
PASSWORD_SYNTAX ein Regex-Ausdruck, welcher die Passwort-Gültigkeit prüft
USERNAME_LENGTH_MIN Minimallänge für Usernamen
USERNAME_LENGTH_MAX Maximallänge für Usernamen
USERNAME_SYNTAX ein Regex-Ausdruck, welcher die Username-Gültigkeit prüft
PASSWORD_SYNTAX_DESCRIPTION Beschreibung der Passwort-Vorschriften (wird unter Passwort ändern angezeigt)
USERNAME_SYNTAX_DESCRIPTION Beschreibung der Username-Vorschriften

Tabelle SERVICE_POLICIES

Enthält die Zuweisung von Passwort- und Username-Vorschriften zu einzelnen Services. Diese Vorschriften können sowohl Usergruppen als auch einzelnen Usern auferlegt werden. Bei einem neuen Tabelleneintrag in der Tabelle SERVICE wird hier automatisch ein Eintrag gemacht (Minimal-Vorschriften).

POLID Verweis zur entsprechenden Vorschrift (Policy)
NUID nethz User-ID (Vorschrift gilt nur für gewisse nethz-User)
NSID Service-ID
UGID Usergruppen-ID (Vorschrift gilt nur für gewisse nethz-Usergruppen)

Tabelle PRIVILEGE

Enthält eine Auflistung aller möglichen Privilegien.

PRIVID Privileg-ID (Primärschlüssel)
PRIVILEGE Name des Privilegs
DESCRIPTION Beschreibung des Privilegs
TYPE Typ: admin, service, role

Tabelle SERVICE_PRIVILEGE

Enthält die Zuweisung von Services zu Privilegien. Ein Service erhält standardmässig die admin-Privilegien "admin_service", "show_service", "grant_service" und "set_password" zugewiesen. Die Tabelle dient bestimmten Applikationen zur Vergabe von Privilegienrechte (Beispiel: Inventardatenbank).

NSID Service-ID
PRIVID Privileg-ID
NUID nethz User-ID

-- Main.vermeul - 09 May 2006

Topic revision: r2 - 2009-11-10 - vermeul
 
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2017 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback