ulc connect-nachlese, 06.03.2014 dresden

39
Jens Ribbeck IBM Connections: funktionale Erweiterungen mit vorhandenen Notes-Anwendungen Jens Ribbeck, ULC Business Solutions GmbH

Upload: jribbeck

Post on 05-Dec-2014

182 views

Category:

Technology


2 download

DESCRIPTION

 

TRANSCRIPT

Page 1: ULC Connect-Nachlese, 06.03.2014 Dresden

Jens Ribbeck

IBM Connections:

funktionale Erweiterungen mit

vorhandenen Notes-Anwendungen

Jens Ribbeck, ULC Business Solutions GmbH

Page 2: ULC Connect-Nachlese, 06.03.2014 Dresden

Jens Ribbeck

Der Referent:

Jens Ribbeck

IBM Notes / Domino seit 1999

Anwender, Entwickler und Administrator

Schwerpunkte:

Prozessmanagement, Integration, Schnittstellen

www.ulc.de

ULC Business Solutions GmbH

IBM Premier Business Partner

Full Service Provider,

IBM Collaboration Software

Page 3: ULC Connect-Nachlese, 06.03.2014 Dresden

Jens Ribbeck

• kommen traditionell aus der Lotus Notes/Domino-Umgebung (inkl. Entwicklung),

• haben eine Vielzahl und Vielfalt von Domino-Anwendungen im Einsatz,

• sind üblicher Weise stark E-Mail-orientiert,

• betrachten neue Systeme i.d.R. aus aktueller Praxissicht

• sind (noch) nicht bei Notes 9.x angekommen

• sind (aktuell) wenig investitionsbereit bei Domino

Unsere (IBM-) Kunden:

Page 4: ULC Connect-Nachlese, 06.03.2014 Dresden

Jens Ribbeck

• Betrachtung von IBM Connections aus der Praxis-Sichtweise unserer Kunden

• Schaffung von Mehrwerten für die Benutzer bei der Integration bei der Nutzung von Domino-Anwendungen in IBM Connections

• IBM ist der Reiseanbieter aber wir sind die Reiseleiter und dürfen unseren Kunden nicht wegfahren !

Unsere (Reise-) Ziele

Page 5: ULC Connect-Nachlese, 06.03.2014 Dresden

Jens Ribbeck

• Teilweise sehr lange Lebenszyklen (bedingt durch hohe Abwärtskompatibilität)

• Masken, Ansichten, Formeln, Lotusscript

• Aktuelle Technologien nur bei Neuentwicklungen

• Notes Client steht (noch) im Vordergrund

• regelmäßig hohe Sicherheitsanforderungen (z.B. Banken)

Domino-Anwendungen (Merkmale)

Page 6: ULC Connect-Nachlese, 06.03.2014 Dresden

Jens Ribbeck

• Workflow-getriebene Anwendungen

– Einfache Organisationsprozesse

– Komplexe Kern-Anwendungen (z.B. CRM)

• Klassische Dokumentensammlungen

• Content-Management-Systeme

• …

Domino-Anwendungen heute (Cluster)

Page 7: ULC Connect-Nachlese, 06.03.2014 Dresden

Jens Ribbeck

• Workflows immer Bedarf an Informationsübermittlung haben und

• bei Workflows immer die Menschen und ihre Aufgaben im Zentrum stehen.

Workflowanwendungen bieten sich für Integration an, da

= DAS entspricht der Philosophie der Social Networks / IBM Connections

Page 8: ULC Connect-Nachlese, 06.03.2014 Dresden

Jens Ribbeck

• Workflow-Anwendung

• In verschiedenen Kundenszenarien im Einsatz

• Browser-Schnittstelle vorhanden

• Flexibel anpassbar

ULC.Formular- & Prozessmanager als Beispiel für die Betrachtungen:

Page 9: ULC Connect-Nachlese, 06.03.2014 Dresden

Jens Ribbeck In

tegr

atio

nst

iefe

Agenda

Page 10: ULC Connect-Nachlese, 06.03.2014 Dresden

Jens Ribbeck

Page 11: ULC Connect-Nachlese, 06.03.2014 Dresden

www.dnug.de

Jens Ribbeck Nachbarn Portal Activitystream Embedded Experience

IBM Connections und IBM Domino in der Nachbarschaft Grundlagen

Eine gute Nachbarschaft gelingt nur, wenn die Grundlagen dafür geschaffen werden. Der Nutzer und seine Anforderungen müssen im Fokus stehen!

Für eine erfolgreiche Einführung von IBM Connections sind Entwickler und Admins gleicher- maßen gefordert!

Entwickler Admin

Page 12: ULC Connect-Nachlese, 06.03.2014 Dresden

www.dnug.de

Jens Ribbeck Nachbarn Portal Activitystream Embedded Experience

IBM Connections und IBM Domino in der Nachbarschaft 1. Benutzerverwaltung

Voraussetzungen für „gute Nachbarschaft“: • Synchronisierte Benutzerprofile • Domino-Adressbuch möglichst Quelle für Connections Benutzer-

Verzeichnis (LDAP) • Domino-Benutzer müssen eine eingetragene E-Mail Adresse haben

(Key)

Admin

Page 13: ULC Connect-Nachlese, 06.03.2014 Dresden

www.dnug.de

Jens Ribbeck Nachbarn Portal Activitystream Embedded Experience

IBM Connections und IBM Domino in der Nachbarschaft 2. Infrastruktur

Infrastruktur: • Fehlerfreie Netzwerkkonfiguration (u.a. Routing, DNS) • Domino-Server und Connections müssen für Clients (Browser)

erreichbar sein • Bei Bedarf: Firewall-Konfiguration anpassen • Domino-Server „spricht“ HTTP(S) -> HTTP-Task muss laufen • Synchronisierte Zeiten (möglichst auch keine verschiedenen

Zeitzonen)

Admin

Page 14: ULC Connect-Nachlese, 06.03.2014 Dresden

www.dnug.de

Jens Ribbeck Nachbarn Portal Activitystream Embedded Experience

IBM Connections und IBM Domino in der Nachbarschaft 3. Single Sign On (SSO)

Benutzer wollen sich nicht mehrfach anmelden, daher: SSO • Standard IBM: LTPA (Lightweight Third-Party Authentication) • Alternative Systeme sind möglich (z.B. Kerberos + LTPA, 3rd-

party Lösungen) • LTPA ausgehend von IBM Connections (Websphere) einrichten

und in Domino integrieren • URL‘s von IBM Domino und IBM Connections (Websphere)

müssen der gleichen Domain angehören (domino.ulc.de und connections.ulc.de

Siehe auch: http://public.dhe.ibm.com/software/dw/websphere/SSOPortal-DominoFinal.pdf

Admin

Page 15: ULC Connect-Nachlese, 06.03.2014 Dresden

www.dnug.de

Jens Ribbeck Nachbarn Portal Activitystream Embedded Experience

IBM Connections und IBM Domino in der Nachbarschaft 3. Single Sign On (SSO), Probleme

Sicherheitsbetrachtungen: • Logout nicht vollständig möglich (LTPA-Token bleibt

erhalten), problematisch in Multiuser-Umgebungen • Benutzer-Sperre bei Fehlversuchen nicht eindeutig • Passwortwechsel muss möglich sein (Synchronisation von

Profiles mit LDAP)

Entwickler

Admin

Page 16: ULC Connect-Nachlese, 06.03.2014 Dresden

www.dnug.de

Jens Ribbeck Nachbarn Portal Activitystream Embedded Experience

IBM Connections und IBM Domino in der Nachbarschaft 4. Vertrauensstellung

Zugriff über SSL-geschützte Verbindung (HTTPS) • Sensible Daten werden übertragen • Authentifizierung auf den API‘s erfolgt oft über Basic-

Authentifizierung • Qualifizierte Zertifikate verwenden (Trust-Center oder eigene

sichere CA)

Bei Installation von Domino und WS auf einer gemeinsamen Plattform: • Zertifikatsrequest erst auf Websphere erstellen und Zertifikat

importieren • Dann über IKeyMan das komplette Zertifikat in eine *.kyr – Datei

vom Domino importieren

Entwickler

Admin

Page 17: ULC Connect-Nachlese, 06.03.2014 Dresden

Jens Ribbeck

Page 18: ULC Connect-Nachlese, 06.03.2014 Dresden

www.dnug.de

Jens Ribbeck Nachbarn Activitystream Embedded Experience Portal

www.ulc.de

IBM Connections als Portal für IBM Domino Anwendungen 1. Domino im Fenster

Page 19: ULC Connect-Nachlese, 06.03.2014 Dresden

www.dnug.de

Jens Ribbeck Nachbarn Activitystream Embedded Experience Portal

www.ulc.de

IBM Connections als Portal für IBM Domino Anwendungen 1. Domino im Fenster

Darstellung der Domino-Anwendung im IFrame (LotusMain) • Integration muss über Customization von IBM Connections

erfolgen • Anwendungsmenüpunkt in der Navigationsleiste sinnvoll • Methode zum Laden muss global verfügbar sein

DEMO

Entwickler

Admin

Page 20: ULC Connect-Nachlese, 06.03.2014 Dresden

www.dnug.de

Jens Ribbeck Nachbarn Activitystream Embedded Experience Portal

www.ulc.de

IBM Connections als Portal für IBM Domino Anwendungen 2. Domino im Fenster, so geht‘s

1. Vorlagen finden: <Installationspfad WebSphere>/AppServer/profiles/<AppServer_Name>/ installedApps/<cell_Name>/ <AppName>.ear/<AppName>.war/nav/templates

2. Notwendige Vorlagen kopieren: • header.jsp • beliebige Vorlage aus /menu/

Navigation anpassen

Entwickler

Page 21: ULC Connect-Nachlese, 06.03.2014 Dresden

www.dnug.de

Jens Ribbeck Nachbarn Activitystream Embedded Experience Portal

www.ulc.de

IBM Connections als Portal für IBM Domino Anwendungen 2. Domino im Fenster, so geht‘s

Vorlagen und Code anpassen: … sehr tiefgreifende Anpassungen im Basis-System notwendig … globale Auswirkungen im Gesamtsystem

Vorlagen individuell anpassen: • Hauptmenus ein- und ausblenden • Eigene Menus erstellen • Globale Javascript-Methoden einbauen (z.B. zum Laden der Anwendungen)

Navigation anpassen

Entwickler

Page 22: ULC Connect-Nachlese, 06.03.2014 Dresden

www.dnug.de

Jens Ribbeck Nachbarn Activitystream Embedded Experience Portal

www.ulc.de

IBM Connections als Portal für IBM Domino Anwendungen 2. Domino im Fenster, so geht‘s

Anwendungen neu starten: ALLE (!) betroffenen Anwendungen müssen mit den angepassten Vorlagen neu gestartet werden, damit das globale Menu aktiviert wird.

Navigation anpassen

Entwickler

Admin

Page 23: ULC Connect-Nachlese, 06.03.2014 Dresden

www.dnug.de

Jens Ribbeck Nachbarn Activitystream Embedded Experience Portal

www.ulc.de

IBM Connections als Portal für IBM Domino Anwendungen 3. Domino im Fenster, Pro‘s & and Con‘s

Vor- und Nachteile dieser Integrationsart + Einstieg in die Anwendung von „überall“ (Portal) + Benutzer findet gewohnte Umgebung vor und navigiert intuitiver + Zugang zu IBM Connections wird über das Angebot geschaffen + SSO zur Anwendung - Domino-Anwendung braucht zwingend ein Browser-Interface - Die Anwendung kann nicht direkt auf Connections zugreifen - Integration bedingt umfangreiche Administrative Eingriffe - Keine „schnellen“ Änderungen möglich - „Starre“ Integration

Page 24: ULC Connect-Nachlese, 06.03.2014 Dresden

www.dnug.de

Jens Ribbeck Nachbarn Activitystream Embedded Experience Portal

www.ulc.de

IBM Connections als Portal für IBM Domino Anwendungen 4. Domino im iWidget, individuell nutzbar

Domino Daten

Domino-Anwendung ist die Quelle (z.B. Agent, XPage etc.), Rendering erfolgt im IBM Connections

Page 25: ULC Connect-Nachlese, 06.03.2014 Dresden

www.dnug.de

Jens Ribbeck Nachbarn Activitystream Embedded Experience Portal

www.ulc.de

IBM Connections als Portal für IBM Domino Anwendungen 5. Domino im iWidget, so gehts

iWidget entwickeln/bereitstellen

Entwickler

Admin Datenintegration • Erfolgt über ajax-Requests vom Domino (z.B. dojo.xhrGet) • Bereitstellung über geeignete Mittel (z.B. Agent) • Bereitstellung in geeignetem Format (z.B. Json)

Bereitstellung • iWidget und Ressourcen auf dem HTTP-Server bereitstellen

Proxy-Konfiguration anpassen • Ajax-Requests über Proxy wegen Cross-Domain-Scripting Einschränkungen

Aktivierung • Durch Homepage-Administrator (Rolle) Beispiele…

Page 26: ULC Connect-Nachlese, 06.03.2014 Dresden

www.dnug.de

Jens Ribbeck Nachbarn Activitystream Embedded Experience Portal

www.ulc.de

IBM Connections als Portal für IBM Domino Anwendungen 6. Domino im iWidget, Domino „Widget-Proxy“

Generisches Interface:

Beliebige Domino Anwendungen

z.B. Xpage-Anwendung, muss einmalig entwickelt werden

wird durch die Proxy- Anwendung bereitgestellt und muss nur eingebunden werden

Entwickler

Admin

Page 27: ULC Connect-Nachlese, 06.03.2014 Dresden

www.dnug.de

Jens Ribbeck Nachbarn Activitystream Embedded Experience Portal

www.ulc.de

IBM Connections als Portal für IBM Domino Anwendungen 7. Domino im iWidget, Pro‘s und Con‘s

Vor- und Nachteile dieser Integrationsart

+ Ohne großen Admin-Aufwand integrierbar + Benutzer kann sich seinen Arbeitsplatz individuell einrichten + Nutzung nach Bedarf, universell erweiterbar + Domino Anwendung muss nur wenig erweitert werden (kein Browser-Interface nötig) + iWidget wird in <div> gerendert, damit Zugriff auf Umgebung möglich - Platz für Darstellung eingeschränkt (Widget) - Proxy-Einstellungen sind komplex

Page 28: ULC Connect-Nachlese, 06.03.2014 Dresden

Jens Ribbeck

Page 29: ULC Connect-Nachlese, 06.03.2014 Dresden

Portal

www.dnug.de

Jens Ribbeck Nachbarn Activitystream Embedded Experience

Die IBM Domino Anwendung im Activitystream 1. Domino stellt Informationen bereit: Beispiel

DEMO

Urlaubsantrag:

Informationen klassisch per E-Mail, Neu: Eintrag im Activity Stream

Page 30: ULC Connect-Nachlese, 06.03.2014 Dresden

Portal

www.dnug.de

Jens Ribbeck Nachbarn Activitystream Embedded Experience

Die IBM Domino Anwendung im Activitystream 2. Domino stellt Informationen bereit: wie geht‘s

Activitystream beschreiben:

API‘s benutzen • IBM Connections API (REST / ATOM) • IBM Connections OpenSocial API (Json)

Brücken bauen (im Beispiel) • Domino kann mit Bordmitteln keine HTTP-Requests senden • Einbindung des Java Apache-HTTP-Clients + minimale Methoden als Interface

in der Domino-Applikation • Nutzung aus LotusScript-Kontext heraus über LS2J, Vorteil: an vorhandenen

Code „andocken“, vorhandenes Know How beim Kunden nutzen • Interface als Klasse im LotusScript abgebildet

Entwickler

Page 31: ULC Connect-Nachlese, 06.03.2014 Dresden

Portal

www.dnug.de

Jens Ribbeck Nachbarn Activitystream Embedded Experience

Die IBM Domino Anwendung im Activitystream 2. Domino stellt Informationen bereit: wie geht‘s

Kommunikationswege

Domino-Server mit Domino Anwendung WSA-Server

mit IBM Connections

Quelle der Information

Konsument der Information

Page 32: ULC Connect-Nachlese, 06.03.2014 Dresden

Portal

www.dnug.de

Jens Ribbeck Nachbarn Activitystream Embedded Experience

Die IBM Domino Anwendung im Activitystream 2. Domino stellt Informationen bereit: wie geht‘s

Umgebung anpassen:

System-Benutzer für Domino-Interface • Rolle „admin“ in den IBM Connections-Anwendungen • Rolle „trustedExternalApplication“ in der Anwendung „WidgetContainer“ • Credentials in der Domino-Welt „sicher“ verwalten!

Java-Sicherheitseinstellungen • SSL-Zertifikate in cacerts importieren • java.security und java.policy anpassen

-> WICHTIG: keine Sicherheitslücken einbauen

Entwickler

Admin

Page 33: ULC Connect-Nachlese, 06.03.2014 Dresden

Jens Ribbeck

Page 34: ULC Connect-Nachlese, 06.03.2014 Dresden

Portal

www.dnug.de

Jens Ribbeck Nachbarn Activitystream Embedded Experience

Embedded Experience: IBM Domino in Connections funktional integriert 1. Domino stellt Aufgaben im Activitystrem bereit

DEMO

Urlaubsantrag:

Öffnen der Anwendung klassisch per Link, Neu: Genehmigung direkt im Activity

Stream

Page 35: ULC Connect-Nachlese, 06.03.2014 Dresden

Portal

www.dnug.de

Jens Ribbeck Nachbarn Activitystream Embedded Experience

Embedded Experience: IBM Domino in Connections funktional integriert 2. Domino stellt Aufgaben im Activitystrem bereit, wie geht‘s

Activitystream mit EE beschreiben:

Entwickler

API‘s benutzen • IBM Connections OpenSocial API (Json)

Brücken bauen (im Beispiel) • Zusätzliche „Embeded Experience“-Daten im Interface • SocialGadget zur Darstellung und Bearbeitung im IBM Connections notwendig • Zu nutzendes Gadget wird über die API referenziert

Page 36: ULC Connect-Nachlese, 06.03.2014 Dresden

Portal

www.dnug.de

Jens Ribbeck Nachbarn Activitystream Embedded Experience

Embedded Experience: IBM Domino in Connections funktional integriert 2. Domino stellt Aufgaben im Activitystrem bereit, wie geht‘s

Gadget entwickeln/bereitstellen

Entwickler

Admin Datenintegration • Daten werden über Content bereitgestellt, zusätzlich ajax-Requests vom

Domino (z.B. spezielle Methoden: Klasse „gadgets.io“) • Aktionsinterface über geeignete Mittel (z.B. Agent zum

Genehmigen/Ablehnen)

Bereitstellung • Gadget und Ressourcen auf dem HTTP-Server bereitstellen

Proxy-Konfiguration anpassen • Ajax-Requests über Proxy wegen Cross-Domain-Scripting Einschränkungen, ggf.

zusätzlich Regeln in /opensocial-proxy-rules/proxy-policy.dynamic

Aktivierung • Durch Homepage-Administrator (Rolle) Beispiele…

Page 37: ULC Connect-Nachlese, 06.03.2014 Dresden

Portal

www.dnug.de

Jens Ribbeck Nachbarn Activitystream Embedded Experience

Embedded Experience: IBM Domino in Connections funktional integriert 3. Vergleich der API‘s

Welche API ist geeignet

Beide API‘s • Werden über den gleichen Weg angesprochen (URL/REST) • Nutzerauthentifizierung identisch (Basic / OAuth) • Sicherheitsfragen identisch

IBM Connections API • Mächtiger Funktionsumfang, aufwändig für „kleine“ Integrationsaufgaben • Geeignet für spezielle Anwendungen (z.B. Projektmanagement: Tasks und Aktivitys in

der Anwendung „Aktivitäten“) • Keine (dokumentierte) Möglichkeit für Embedded Experience

IBM Connections Opensocial API • Eingeschränkter Umfang, aber Embedded Experience • Offener Standard • Derzeit kein Löschen von Einträgen und kein nachträgliches Anpassen fremder Einträge

Page 38: ULC Connect-Nachlese, 06.03.2014 Dresden

Fazit

• Auch Organisationen mit Domino < 9.x können heute bereits Anwendungen in IBM Connections integrieren = wichtiges Argument.

• Sicherheitsbetrachtungen sind wichtig, die Anwender müssen hier gehört werden.

• An vorhandene Erfahrungen und Know How beim Anwender kann mit den beschriebenen Methoden angeknüpft werden.

• Innovativ ≠ Intuitiv, Integration in kleinen Schritten mit großer Wirkung ist manchmal sinnvoller als „der große Wurf“

Page 39: ULC Connect-Nachlese, 06.03.2014 Dresden

Jens Ribbeck

Herzlichen Dank für Ihre Aufmerksamkeit !