Op mijn werk hebben we een Extranet omgeving dat draait op Lotus Domino 6.5 en Websphere Application Server (WAS) 5.1. Deze omgeving maakt gebruik van SSO (Single Sign On) op basis van een LTPA token. In dit LTPA token zit versleuteld de gebruikersnaam en het wachtwoord en voorkomt dat de gebruiker zich meerdere keren moet authenticeren. Naast het gebruik van de gebruikersnaam/wachtwoord authenticatie methode willen we ook het gebruik van client certifcaten (X.509, bijvoorbeeld het Digitaal Paspoort van ADP Business Services) ondersteunen.
Het gebruik van X.509 certificaten (= SSL client certificaat) vergt enkele kleine configuratie wijzigingen. Echter het achterhalen van de juiste instellingen heeft mij de nodige tijd gekost omdat de documentatie hierover vrij summier is. Ik zal hieronder kort aangeven wat waar geconfigureerd diende te worden in onze situatie (bestaande SSO situatie: Domino - Websphere).
Lotus Domino
Binnen onze omgeving is de Domino server in gebruik als LDAP directory en maken we gebruik van de 'Internet Sites' configuratie documenten. Op het web site document van ons Extranet (Domino Directory, Configuration -> Web -> Internet Sites) dient de volgende configuratie instelling gewijzigd te worden. Op het Security tabblad dient onder het kopje 'SSL Authentication' de optie 'Client certificate' op 'Yes' gezet te worden. Vervolgens dient de aanpassing opgeslagen te worden en zal de HTTP taak herstart dienen te worden ('tell HTTP Restart
' op de server console).
Om straks te kunnen testen dient op een van de persoonsdocumenten (in de Domino Directory) het publieke gedeelte van het X.509 certificaat geplaatst te worden. Om dit te doen open (in read modus) je het persoonsdocument van de gebruiker waar het certificaat aan toegevoegd dient te worden. Vervolgens selecteer je uit het menu Actions de optie 'Import Internet Certificates'. Je zal dan gevraagd worden het certificaat te selecteren (standaard het PKCS12, *.p12 of *.pfx, formaat). De wizard zal je het wachtwoord laten invoeren, de gegevens van het certificaat tonen en je vragen het certificaat te accepteren middels de knop 'Accept All'. Als je vervolgens het persoonsdocument sluit en weer opent zal je op het tabblad 'Certificates -> Internet Certificate(s)' zien dat het certificaat is toegevoegd.
Wat belangrijk is om te controleren is dat het Common Name (CN) gedeelte van het X.509 certificaat aanwezig is op het persoonsdocument, in het User Name veld (technische veldnaam: FullName), en dat het veld waarin deze staat gebruikt kan worden om te authenticeren. In onze situatie maken we gebruik van hetDigitaal Paspoort van ADP Business Services en ontbrak de naam uit het certificaat op het persoonsdocument. Ik heb dit handmatig toegevoegd zodat er een match is tussen het certificaat en een document in de Domino Directory.
Realiseer je wel dat een certificaat maar een keer (op een persoonsdocument) kan voorkomen in de Domino Directory. De server zal bij een authenticatie poging gaan zoeken aan de hand van de Common Name van het certificaat. Als bij de naam waarop gezocht wordt een persoonsdocument gevonden wordt zal vervolgens gekeken worden of de publieke sleutel van het certificaat overeenkomt. Als dit zo is dan wordt de gebruiker geauthenticeerd en anders wordt deze de toegang geweigerd. Behalve als gebruikersnaam/wachtwoord authenticatie nog aanstaat, in dit geval zal de gebruiker gevraagd worden op deze manier te authenticeren. Wat gebeurd er als de server meerdere documenten terug krijgt bij zijn zoekactie? In dit geval zal het eerste document gecontroleerd worden. Als er een match is stopt het proces (gebruiker geauthenticeerd), anders zal iedere keer het volgende document gecontroleerd totdat er uiteindelijk een match is (of niet, er zal dan geen toegang verleend worden).
Websphere
In onze omgeving maakt WAS gebruik van de Domino LDAP taak. Binnen WAS dienen we een configuratie aanpassing te maken bij de LDAP instellingen. Open hiervoor de Administrative Console. Ga naar de LDAP instellingen ('Security -> User Registries -> LDAP) en open daar onder 'Additional Properties' de optie 'Advanced LDAP Settings'. In ons geval (Digitaal Paspoort) moesten we bij 'Certificate Map Mode' kiezen voor de instelling 'CERTIFICATE_FILTER
'. Vervolgens moesten we bij 'Certificate Filter' het volgende instellen: 'cn=${SubjectCN}
'. Hiermee geven we aan dat bij certificaten gekeken dient te worden naar de Common Name van het certificaat en dat we deze moeten koppelen aan de Common Name binnen LDAP. Nadat we de instellingen hebben opgeslagen dient wel de WAS server herstart te worden voordat de instellingen actief worden.
Applicatie
Als laatste moesten we nog een kleine configuratie aanpassing plegen aan onze Java applicatie. In het EAR bestand moesten we in het 'web.xml.auth
' configuratie bestand het volgende toevoegen bij de authenticatie instellingen.
<login-config>
<auth-method>CLIENT-CERT</auth-method>
<realm-name>User Auth</realm-name>
</login-config>
Zie het artikel 'Compare and contrast the authentication types (BASIC, DIGEST, FORM, and CLIENT-CERT); describe how the type works; and given a scenario, select an appropriate type.' voor meer informatie hier over.
Nadat we de aangepaste applicatie geinstalleerd hadden en de servers geprepareerd hadden konden we succesvol inloggen met een client certificaat.
Ik heb de E-tech ADWG02 nu bijna een week in gebruik. Dit is de vervangende modem voor de buggy Linksys WAG54G die ik eerder gekocht had. Mijn bevindingen over de E-tech tot nu toe: Geen crashes tot nu toe. De firmware lijkt op dat punt stabiel. Het apparaat is niet door middel van een knop aan of uit te zetten. Erg vervelend omdat ik het apparaat alleen uit kan zetten door de stekker uit het stopcontact te halen. De reden dat ik hem graag uit wil kunnen zetten is dat het apparaat in de woonkamer staat (in het zicht) en de lampjes nogal fel schijnen. Dat vind ik niet erg prettig. Daarnaast wil ik niet dat de verbinding de gehele dag open staat uit beveiligingsoverwegingen en vanwege het stroomverbruik. WIFI is middels een setting uit te zetten. Als je de setting uitvinkt en bevestigd door middel van een 'apply' zie je het lampje uitgaan op de ADSL modem. Er is op dat moment ook geen WIFI verbinding actief. Sla je de setting definitief op dan reboot de modem automat...
Reacties