CUG
  
CUG user management tool ht2html
Home
Beschrijving
Systeemeisen
Voorbeeld
Ontwerp
Heden/verleden
Download
sourceforge
 
Documentatie
On line
HTML
PDF
Javadoc
 
Licentie
GPL
 
email
Thijs Verhagen
 
  

Geschiedenis

CUG is in 1998 begonnen als een perl-package toen ik bij de Stoas APH werkzaam was. Het beheer van een NW3-server met een Pegasus SMTP-server werd nog voor het grootste gedeelte gedaan met behulp van tekst-files (UIMPORT, Pegasus alias-lijsten en distributie-lijsten) Vanaf een eenvoudig script om gebruikers-namen en mail-aliassen te genereren, groeide het uit tot een package om gebruikers en personen te groeperen. Bij een migratie(-sprong) naar NW5/Groupwise werd het package niet herzien om de NDS-directory intelligent te ondersteunen.

Het project verdween naar de achtergrond. Ondertussen was ik ook de prikkeldraad-versperringen in de perl-code moe. Nieuw projecten zette ik voortaan op in java. Ook het verder bekwamen in ontwikkelgereedschap (emacs, ant) nam nogal wat tijd in beslag.

Toen ik echter bij mijn huidige werkgever (hsbos.nl) terecht kwam, waren er kansen om CUG weer vlot te trekken. Vanwege het belang dat bij de Hogeschool 's-Hertogenbosch wordt gehecht aan het beheer van studenten-accounts op het Novell netwerk, kreeg ik alle ruimte om eea gestructureerd uit te werken.

Als eerste zijn toen de classes Names2ID/Name_NL aangemaakt: de classes die de naamgegevens van een Nederlander om zetten in gebruikersnaam (dit was inderdaad in perl eenvoudiger). Vervolgens is het plaatsen van gebruikers in nds-containers uitgewerkt. Vroege versies van CUG zijn vrijwel onmiddellijk ingezet.

De weerbarstige praktijk van registreren van studenten en het administreren van een systeem heeft geleid tot de structuur-objecten PTree en NDSMap zoals ze nu in CUG centraal staan.

In april 2002, na meer dan een half jaar gecontroleerd gebruik, is de documentatie bijgewerkt, een tutorial geschreven en het hele spul via sourceforge op het internet gezet.

Toekomst

De toekomst van het gebruikersbeheer in het algemeen is erg spannend. Meer en meer systemen maken gebruik van geautoriseerde toegang. Dat hierbij geavanceerde directory-systemen (zoals de NDS) een belangrijke rol zullen spelen staat wel vast.

Per leverancier zijn er echter nogal uiteenlopende technieken om de directory te koppelen aan een administratief systeem. Dat maakt dat de technieken nog wat ondoorzichtig zijn. Hoe je precies met een DirXML data-stroom, een paar xsl-stylesheets die via xsl processor-extensies weer java-classes gebruiken, gebruikers aanmaakt/update/verwijdert heb ik in ieder geval nog niet onder de knie. Een werkelijk modern administratief systeem, dat een xml-data stroom kan produceren, is hiervoor trouwens een eerste vereiste.

Er zullen ook nog wel enige jaren applicaties in gebruik zijn die niet naar een directory (kunnen) kijken voor hun authorisatie. Deze applicaties kunnen dan profiteren van CUG's flexibele rapporten.

Het integreren met de 'naming' kant van de jndi zou een interessante wijziging zijn. Nu worden container en afdelingsnamen zo goed als met de hand gegenereerd.

Als ik de java-code bekijk, die er kennelijk voor nodig is om een vergelijking die op het eerste oog zo overzichtelijk lijkt te maken, valt me op dat er erg veel 'infrastructuur' uitgeschreven moet worden. Er gaan geen 20 regels voorbij of er is weer een Iterator nodig. Om dit in de toekomst in te perken zou het kunnen dat er ooit nog een python-variant komt van CUG ;-)