Generischer Zugriff auf Lotus Notes Datenbanken mit mobilen

Transcrição

Generischer Zugriff auf Lotus Notes Datenbanken mit mobilen
Generischer Zugriff
auf Lotus Notes Datenbanken
mit mobilen Endgeräten
unter Verwendung von Portaltechnologien
Walter Niess, Thomas Flor, Gabriel Vögler
DaimlerChrysler AG
Forschung Information und Kommunikation
Software-Architekturen (RIC/SA)
Wilhelm-Runge-Straße 11
Postfach 23 60
D-89013 Ulm
[email protected]
Zusammenfassung: Im Folgenden soll dargestellt werden, wie mit mobilen Endgeräten, wie z.B. PDAs oder WAP-Mobiltelefonen auf beliebige Lotus-NotesDatenbanken zugegriffen werden kann. Durch Verwendung des IBM WebSphere
Everyplace Access Servers ist sowohl Online- als auch ein Offlinezugriff möglich.
Ein generisches Portlet stellt einen allgemeinen Zugriffsmechanismus auf NotesDatenbanken zur Verfügung. Hierbei kann die Darstellung speziell an die Anforderungen kleiner Displays von mobilen Endgeräten angepasst werden. Da unternehmenskritische Daten verarbeitet werden sollen, spielt Sicherheit eine wichtige
Rolle.
1
Einsatz von PDAs in Unternehmen
Personal Digital Assistants (PDAs) finden immer größere Verbreitung. Wurden sie
anfangs nur als elektronische Alternative eines papierbasierten Zeitplansystems zum
Speichern persönlicher Daten, wie Kalender, Kontakte und Notizen verwendet, also
sogenannter PIM(Personal Information Management)-Daten, so sind sie heute aufgrund
der zunehmenden Leistungsfähigkeit immer flexibler einsetzbar. Auf heutigen Geräten
finden sich neben Textverarbeitung und Tabellenkalkulation oder einem Anzeigeprogramm für elektronische Bücher (eBooks) auch Anwendungen, die von möglichen Internetverbindungen Gebrauch machen, wie z.B. ein E-Mail-Client oder ein Internet-Browser. Selbst Telefonanwendungen existieren, mit denen PDAs als Mobiltelefon verwendet
werden können.
Auch in Unternehmen finden PDAs immer breitere Anwendungsbereiche. Aufgrund
ihrer Leistungsfähigkeit und der zunehmenden Bandbreite von Mobilfunknetzwerken
sind sie nicht nur stand-alone oder offline einsetzbar, sondern können als Clients im
verteilten Unternehmensnetzwerk eingesetzt werden. Es ist möglich, größere Anwen-
30
dungen auf ihnen auszuführen und auf Ressourcen im Unternehmensnetzwerk zuzugreifen. So sind nicht nur die klassischen PIM-Daten auf mobilen Endgeräten verfügbar,
sondern alle im Unternehmen bereitgestellten Informationen, wie z.B. Dateien auf Dateiservern, Datenbankinhalte von Datenbankservern und auch dynamische von Applikationsservern bereitgestellte Daten.
Lotus Domino [Ibm03a], [Ibm03d] und Lotus Notes [Ibm03e] werden in vielen Unternehmen als Groupware-Lösung eingesetzt. Neben PIM- und E-Mail-Datenbanken wurden häufig weitere Anwendungen unter Lotus Notes implementiert. Diese sind zwar am
Arbeitsplatzrechner verfügbar, jedoch nicht von mobilen Endgeräten aus. Eine Möglichkeit, diese Datenbanken auch für mobile Endgeräte zur Verfügung zu stellen, soll im
Folgenden beschrieben werden.
2
Anforderungen an den PDA-Zugriff auf Lotus Notes Datenbanken
Im Unternehmensnetzwerk verfügbare Lotus-Notes-Datenbanken sollen mit PDAs
erreichbar sein. Dies soll weltweit möglich sein. Hierzu können Verbindungen zum
Unternehmensnetzwerk durch vorhandene Mobilfunknetzwerke aufgebaut werden.
Es sollen keine Änderungen an den vorhandenen Notes-Applikationen nötig sein. Weitere Notes-Datenbanken verfügbar zu machen, muss mit möglichst geringem Aufwand
und ohne Programmierkenntnisse möglich sein.
Die Darstellung der Daten muss für die kleinen Displays der PDAs angepaßt werden.
Für Desktop-Rechner erstellte Ansichten würden bei PDAs dazu führen, dass häufig
horizontal und vertikal gescrollt werden müsste. Deshalb sollten Daten, die im mobilen
Einsatz nicht benötigt werden, nicht angezeigt werden. Hierbei ist zu berücksichtigen,
dass es evtl. mehrere Benutzergruppen einer Notes-Anwendung gibt, die unterschiedliche Daten benötigen.
Der Zugriff auf die Notes-Datenbank muss personalisiert erfolgen. Jeder Anwender
muss mit seiner eigenen Benutzer-ID auf die Notes-Datenbank zugreifen, nicht über eine
zentrale Benutzer-ID, die von allen Anwendern für den Zugriff verwendet wird. Somit
ist sichergestellt, dass die in der Notes-Umgebung festgelegten Sicherheits-Maßnahmen
nicht umgangen werden können.
Der Dominoserver bietet zwei Möglichkeiten zur Authentifizierung: Entweder per
Notes-Passwort unter Verwendung der Notes-ID-Datei oder unter Verwendung des
Internet-Passworts. Da die Notes-ID-Datei typischerweise auf dem Arbeitsplatzrechner
des Anwenders liegt und nicht für das mobile Endgerät oder für einen Serverprozeß zur
Verfügung steht, sollte die Authentifizierung mittels Internet-Passwort erfolgen. Hierfür
wird die Notes-ID-Datei nicht benötigt.
Auf dem mobilen Endgerät dürfen aus Sicherheitsgründen keine unternehmenskritischen
Daten zwischengespeichert werden. Dadurch besteht keine Gefahr, dass Daten in falsche
31
Hände gelangen, falls das Gerät verloren geht. Im Gegensatz dazu stellt das Zwischenspeichern nicht unternehmenskritischer Daten kein Sicherheitsrisiko dar.
3
Technologien und Schnittstellen für den Noteszugriff
Für die Realisierung des Noteszugriffs stehen die im Folgenden betrachteten Technologien zur Verfügung. Durch ihre Verwendung ist eine relativ schnelle und einfache
Umsetzung möglich, da hierfür Werkzeuge existieren.
3.1
IBM WebSphere Portal Server
Beim IBM WebSphere Portal Server [Ibm03c], [Ibm03g] handelt es sich um einen Internet-Portalserver. Er stellt Portalinhalte auf mehreren Seiten bereit. Die Seiten können zu
Seitengruppen zusammengefaßt werden. Jede Seite kann mehrere rechteckige Bereiche
zur Darstellung von Informationen enthalten. Diese sogenannten Portlets sind also Teil
einer Webseite, die Informationen in rechteckigen Bereichen auf der Seite darstellen
können.
Abbildung 1: IBM WebSphere Portal Server
Der IBM WebSphere Portal Server kann personalisiert werden. Seiten und Seitengruppen können benutzerabhängig definiert werden. Auch Konfigurationen von Portlets
können benutzerabhängig gespeichert werden.
32
Durch den Portalserver werden Inhalte durch Authentifizierung geschützt. Nur berechtigte Anwender erhalten Zugang zum Portal.
Der Portalserver bietet für Portlets die Möglichkeit, Daten persistent abzulegen. So wird
z.B. die Konfiguration von Portlets persistent im Portal gespeichert.
3.2
IBM WebSphere Everyplace Access
IBM WebSphere Everyplace Access [Ibm03b], [Ibm03f] ist eine Erweiterung des IBM
WebSphere Portal Servers. Im Gegensatz zum Portal Server, der Portalinhalte für Desktop-Rechner zur Verfügung stellt, kann der Everyplace Access Server Webseiten geräteabhängig auch für WAP-Geräte, iMode-Geräte und PDAs darstellen. Portlets können
ihre Inhalte nicht nur als HTML darstellen, sondern auch als WML oder cHTML. Für
PDAs können Inhalte speziell angepasst werden, also z.B. weniger Informationen dargestellt oder auf mehrere Seiten verteilt werden.
Der IBM WebSphere Everyplace Access Server bietet
neben der Möglichkeit des Onlinezugriffs auch die
Möglichkeit, Portalinhalte auf PDAs für einen Offlinezugriff zu synchronisieren. Dadurch ist es ohne
Programmieraufwand möglich, ein Portlet, das für
Online-Zugriff entwickelt wurde, offline verfügbar zu
machen.
Außerdem stehen viele weitere Features zur Verfügung, wie e-Mail- und PIM-Synchronisation, Datenbank-Synchronisation oder Intelligent Notification, die
aber in diesem Zusammenhang nicht benötigt werden.
3.3
Java Server Pages (JSP)
Abbildung 2: WebSphere
Die Technologie der Java Server Pages [Sun03], Everyplace Access, Zugriff von
[RR00] wird verwendet, um dynamische Webinhalte
PocketPC
anzuzeigen. Hierbei können statische Teile von
Webseiten in HTML definiert werden. Die dynamischen Teile werden durch Java-Befehlssequenzen beschrieben. Vor der Ausführung von
JSPs werden diese in Java-Klassen übersetzt und können so zur Laufzeit aufgerufen
werden. Sie liefern dann die gesamte Webseite, also statische und dynamische Inhalte,
zurück. Bei der Entwicklung von Portlets kann JSP verwendet werden, um die dynamischen Informationen als HTML-, cHTML- oder WML-Seiten auszugeben.
3.4
Notes-API
Zum Zugriff auf die Notes-Datenbank stellt Lotus die Notes-API zur Verfügung. Hierüber kann eine Verbindung zu einem Domino-Server aufgebaut und auf eine Datenbank
33
zugegriffen werden. Von der Datenbank können die zur Verfügung gestellten Ansichten
sowie die darin enthaltenen Datensätze abgefragt werden. Zu jedem Datensatz kann das
zugehörige Dokument mit den enthaltenen Feldern ermittelt werden.
Für den Zugriff aus einer IBM WebSphere Anwendungsumgebung muss die JavaBibliothek NCSOW.jar verwendet werden. Diese stellt die Klassen
lotus.domino.* zur Verfügung.
3.5
IBM WebSphere Everyplace Access Notes Portlets
IBM liefet mit dem Everyplace Access Server bereits Portlets für den Notes-Zugriff aus.
Allerdings ist bei diesen keine Anpassung der Inhalte an die kleinen Displays von PDAs
möglich, da nur die vorhandenen Notes-Ansichten dargestellt werden können. Es müssten also spezielle Notes-Ansichten für die PDA-Ausgabe angelegt werden. Damit wäre
eine Änderung an der Notes-Datenbank unumgänglich.
Da ein generischer Datenbank-Zugriff auf alle Notes-Datenbanken ohne Anpassungen
innerhalb der Notes-Umgebung möglich sein soll, wurde ein eigenes Portlet entwickelt.
Mit diesem ist es möglich, ohne Programmierung, also nur durch Konfiguration, beliebige Notes-Datenbanken für PDAs verfügbar zu machen und dabei die Inhalte für kleine
Displays anzupassen.
4
Webbrowser
Architektur
Das NotesViewer-Portlet läuft im IBM
WebSphere Portal Server. Der Webbrowser des
PDAs greift mittels HTTP auf den Portal Server zu. Dieser liefert die angefragten Seiten als
HTML-, cHTML- oder WML-Seiten an den
Browser zurück, abhängig von den Fähigkeiten
des Browsers. Um die Datenbankinhalte anzuzeigen, greift er auf das NotesViewer-Portlet
zu.
IBM WebSphere Portal Server
NotesViewerPortlet
JSP
Notes-API
Lotus Domino
DB
Das NotesViewer-Portlet ermittelt die angeforderten Daten, indem per Notes-API unter Verwendung des Domino-Internet-Inter-ORBProtokolls (DIIOP) eine Verbindung zum Domino-Server aufgebaut und auf die Datenbank zugegriffen wird. Die Ergebnisse der Anfrage werden mittels Java ServerPages
dargestellt.
Abbildung 3: Architektur
34
5
Generisches Lotus-Notes-Zugriffsportlet
Eine Notes-Datenbank besteht typischerweise aus mehreren sogenannten Views. Für
jede dieser Ansichten von Datenbanktabellen sind die darzustellenden Spalten, Selektions- und Sortierkriterien in der Notes-Datenbank definiert. Das NotesViewer-Portlet
kann die vordefinierten Ansichten auf Dektop-PCs und auf PDAs bzw. WAP-Mobiltelefonen darstellen. Wird eines der angezeigten Dokumente ausgewählt, so werden weitere
Details zu diesem Dokument angezeigt.
Abbildung 4: Darstellung einer Mail-Datenbank mit
dem NotesViewer-Portlet auf Desktop-PC
Bei der Konfiguration des Portlets wird zunächst die darzustellende Datenbank angegeben:
Abbildung 5: Konfiguration der anzuzeigenden
Domino-Datenbank
Hierfür wird der DNS-Name bzw. die IP-Adresse, der Name des Domino-Servers sowie
der Pfad unter dem die Datenbank auf dem Domino-Server erreichbar ist, eingetragen.
Für den Zugriff wird der Benutzername sowie ein Passwort benötigt.
Anschließend wird aus der Liste aller in der Datenbank verfügbaren Ansichten die
gewünschte ausgewählt. Zusätzlich kann eine Einschränkung der darzustellenden Spalten getroffen werden, um den Anforderungen einer sinnvollen Darstellung auf kleinen
Displays von PDAs gerecht zu werden. Es sollte darauf geachtet werden, dass nur so
35
viele Spalten angezeigt werden, dass nicht horizontal, sondern nur vertikal gescrollt
werden muss.
Abbildung 6: Auswahl der anzuzeigenden Ansicht und der Spalten
Wird eines der angezeigten Dokumente ausgewählt, so werden Details zu diesem
Dokument angezeigt. Auch hierfür kann definiert werden, welche Felder angezeigt werden sollen.
Abbildung 7: Auswahl der in der Dokumentenansicht darzustellenden
Felder
Da die Labels der Felder für die Darstellung eines Dokumentes nicht über die Notes-API
aus der Notes-Datenbank auszulesen sind, können diese im NotesViewer-Portlet definiert
werden. Dadurch können sinnvolle Bezeichner statt kryptischer Feldnamen angezeigt
werden.
36
6
6.1
Anforderungen an die Datensicherheit
Sicherheit der Portlet-Umgebung
Da mit dem NotesViewer-Portlet auf PDAs auch
sicherheitsrelevante Daten verarbeitet werden sollen,
ist der Sicherheitsaspekt bei der Realisierung des
Portlets sehr wichtig. Folgende Sicherheitsmaßnahmen
wurden getroffen bzw. sollten bei der Anwendung des
Portlets beachtet werden:
Der PDA sollte so konfiguriert werden, dass bei jedem
Einschalten eine Authentifizierung mittels Passwort
durchgeführt werden muss. Der Cache des Browsers
sollte ausgeschaltet werden, um zu vermeiden, dass
sicherheitsrelevante Daten bei Verlust oder Diebstahl
eines Gerätes in falsche Hände geraten. Hierfür stehen
evtl. separate Tools zur Verfügung, wie z.B. die
Microsoft Internet Explorer Tools for Pocket PC
[Ms03].
Abbildung 8: Darstellung einer
Mail-Datenbank mit dem
NotesViewer-Portlet auf PDA
Die Einwahl der PDAs ins Unternehmensnetzwerk sollte über vertrauenswürdige Netzwerkbetreiber ggf. unter Verwendung eines Virtual Private Networks (VPN) und über
eine Firewall erfolgen.
Die Authentifizierung am Portal stellt sicher, dass ein Anwender nur die für ihn freigegebenen Seiten und die für ihn freigegebenen Portlets verwenden kann. Die Benutzerverwaltung des Portals erfolgt auf Basis von Benutzergruppen.
Der Zugriff auf den Domino-Server erfolgt durch Authentifizierung mit dem NotesBenutzernamen des Anwenders, so dass alle im Domino-Server bzw. in der NotesDatenbank getroffenen Sicherheitsmaßnahmen Verwendung finden. Dadurch ist u.a.
sichergestellt, dass der Anwender nur auf die für ihn freigegebenen Daten Zugriff erhält.
6.2
Sicherheitsvorkehrungen des Portlets
Im NotesViewer-Portlet kann der Administrator Einstellungen bzgl. der zu verwendenden Datenbank oder der anzuzeigenden Ansicht vornehmen. Er kann festlegen, ob die
von ihm vorgegebenen Einstellungen vom Anwender geändert werden können oder ob
dieser sich an die Vorgaben halten muss.
37
Abbildung 9: Security-Einstellungen
Erhält der Anwender nicht alle Rechte, so werden die Menüpunkte zur Konfiguration der
entsprechenden Einstellungen ausgeblendet. Der Anwender erhält also keine Möglichkeit, die Einstellungen zu ändern.
7
Zusammenfassung
Mit dem neu entwickelten Portlet ist es möglich, auf beliebige Lotus Notes Datenbanken
von mobilen Endgeräten aus zuzugreifen. Durch die Synchronisationsmöglichkeiten von
IBM WebSphere Everyplace Access ist neben dem Online- auch ein Offlinezugriff
möglich. Durch die Möglichkeiten der Personalisierung des IBM Portal Servers erfolgt
der Zugriff benutzerabhängig. Dadurch kommen alle Notes-Sicherheitsmaßnahmen zur
Anwendung.
Für die klassischen Groupware-Anwendungen, wie PIM und e-Mail existieren andere
Synchronisationslösungen für PDAs. Für alle weiteren Applikationsdatenbanken kann
das NotesViewer-Portlet eingesetzt werden. Somit sind aktuelle Auswertungen, Berichte,
etc. ständig für den Anwender verfügbar.
8
Referenzen
[CB02]
Jeff Calow, Roy W. Bowen: AD101 Building a J2EE Application for Domino and
WebSphere, Lotusphere 2002
http://www.ibsi-us.com/IBSYS/LOTUS/LS2002PR.nsf/main
[Ibm03a]
IBM Deutschland GmbH: Lotus Produkte (Stand 24.07.2003)
http://www.lotus.com/world/germany.nsf/va_second/Produkte
[Ibm03b]
IBM Deutschland GmbH: WebSphere Everyplace Suite (Stand 24.07.2003)
http://www.ibm.com/de/software/websphere/webserver/everyplace.html
[Ibm03c]
IBM Deutschland GmbH: WebSphere Portal Server (Stand 24.07.2003)
http://www.ibm.com/de/software/websphere/webserver/portal.html
38
[Ibm03d]
International Business Machines Corporation: Lotus Domino (Stand 24.07.2003)
http://www.lotus.com/domino
[Ibm03e]
International Business Machines Corporation: Lotus Notes (Stand 24.07.2003)
http://www.lotus.com/notes
[Ibm03f]
International Business Machines Corporation: WebSphere Everyplace Access (Stand
24.07.2003)
http://www.ibm.com/software/pervasive/products/mobile_apps/
ws_everyplace_access.shtml
[Ibm03g]
International Business Machines Corporation: WebSphere Portal for Multiplatforms
(Stand 24.07.2003)
http://www.ibm.com/software/webservers/portal
[Ms03]
Microsoft Corporation: Power Toys for the Pocket PC, (Stand 24.07.2003)
http://www.microsoft.com/windowsmobile/resources/downloads/pocketpc/
powertoys.mspx
[RR00]
Lars Röwekamp, Peter Roßbach: Quattro Stagioni. JSP-Tutorial, Teil 1: Grundlagen
der JavaServer Pages, iX 7/2000, S. 152: Webprogrammierung
http://www.heise.de/ix/artikel/2000/07/152
[Sun03]
Sun Microsystems, Inc.: JavaServer Pages™ Technology (Stand 24.07.2003)
http://java.sun.com/products/jsp
39