web05 - db2 et datapower xi50 - €¦ · port série rs232 (1) webgui requêtes soap (soma) ligne...
TRANSCRIPT
WEB05 : DB2 et DataPower XI50>> exposez les données d'une base DB2 sous forme de Web-Services (SOAP/REST)
2© 2009 IBM Corporation
Présentateur
� Joel Gauci // IBM Software Group
>> IT Specialist - XML Technology & IBM DataPowerAppliances Certified
>> +33 6 21 01 00 39
3© 2009 IBM Corporation
Agenda
� Objectif de la présentation� Descriptif d’une appliance DataPower� DataPower XI50: l’appliance ESB� ESB Pattern: « Data as a Service »� Présentation du Use Case� Étapes d’implémentation (Demos)
� IBM Data Studio� IBM DataPower XI50
� Test de l’implémentation (Demos)� Sécurité� Résumé & Questions
4© 2009 IBM Corporation
Configuration(90%)
Administration
Interfaces Ethernet RJ45 (4)
Composant hardware
d’accélération XML
Composant hardware
d’accélération XML
Firmware
(3.7.3)
Composant hardware pour
traitementscryptographiques
Composant hardware pour
traitementscryptographiques
Port série RS232 (1)
WebG
UI
Requêtes
SO
AP
(SO
MA
)Ligne de
Com
mande (C
LI)
Unités Remplaçables:� Disque Dur (RAID-1/70Go)� Alimentations (2)� Ventilateurs (2)� Batterie
Unités Remplaçables:� Disque Dur (RAID-1/70Go)� Alimentations (2)� Ventilateurs (2)� Batterie
Descriptif d’une appliance DataPower
5© 2009 IBM Corporation
DataPower XI50: l’appliance ESB
� Moteur de transformation“Any-to-Any”: transformer des contenus XML et non-XML (binaire, texte)
� Routage dynamique sur contenu, header, URI,…� Patterns ESB: fan-in/fan-out (diffusion), appels de service (synchrone/asynchrone),
normalisation, enrichissement, routage, split, agrégation,…(cf. WEB08)� Rupture de protocole: HTTP(S), MQ (client), WebSphere JMS (client), Tibco EMS (client), FTP(S),
SFTP, IMS Connect, NFS� Connexions à une base de données: DB2, Oracle, SQL Server, Sybase / scripts SQL ou
procédures stockées� Traitements XML:
� Transformation de contenu, header � Data Validation (SOAP, XML)� Sécurisation de tout ou partie d’un contenu SOAP, XML: WS-Security, XML-Encryption, XML-Signature� Contrôles d’accès XML Web Services (authentification, autorisation, audit)
� Gestion des Web Services � SLM (Service Level Management), virtualisation de Web-Service, Policy Management
� Conception des médiations par configuration, à parti r d’une palette d’actions� Possibilité d’ajout de nouvelles actions réutilisables via des scripts XSLT
6© 2009 IBM Corporation
ESB Pattern : « Data as a Service »
� Objectif: exposer certaines données d’une base (DB2) sous forme de service
� Pré requis: � Réflexion sur les données qui doivent être exposées� Aspects sécurité à prendre en compte
Consommateurde Services
Base de Données
Exposition deServices
7© 2009 IBM Corporation
Présentation du Use Case
Windows
DB2 9
DB: DP_DEMOTABLE : EMPLOYEESProcédure StockéeGETEMPLOYEE(EMPLOYEE_ID)� NAME, AGE, JOB_TITLE
Web ServiceConsumer
SOAP/HTTP(S)
<soap:Envelope>…<soap:Body>
<ns:GETEMPLOYEE><EMPLOYEE_ID>1</EMPLOYEE_ID>
</ns:GETEMPLOYEE></soap:Body>…
…<soap:Body>
<ns:GETEMPLOYEEResponse><rowset>
<row><column name="NAME">GAUCI</column> <column name="AGE">36</column> <column name="JOB_TITLE">ITSpecialist</column>
</row></rowset>
</ ns:GETEMPLOYEEResponse></soap:Body>…
Exposition deServices
8© 2009 IBM Corporation
ServiceWS-Proxy
Windows
DB2 9
Procédure Stockée
Web ServiceConsumer
SOAP/HTTP(S)
IBM Data Studio Developer� Data Web Service artifacts pour IBM
WebSphere DataPower XI50 : WSDL, XSLT
TCP/IP
DRDA
génération
DataPower XI50
Data Web Serviceartifacts: WSDL, XSLT
connexion
9© 2009 IBM Corporation
Étapes d’implémentation
1. Création d’un « Data Web service » et des artifacts spécifiques au runtime DataPower (Data Studio Developer)� Artifacts:
� Feuilles de styles XSLT (appel de la procédure stockée)� Fichier WSDL pour l’exposition du service
2. Création d’un DataSource, à partir d’une appliance DataPower XI50 (DataPower)
3. Chargement des artifacts précédemment créés (DataPower)
4. Configuration d’un WS-Proxy pour le binding SOAP/HTTP� Bindings disponibles:
� SOAP� XML� HTTP GET et POST
10© 2009 IBM Corporation
Etapes d’implémentation
1. Création d’un « Data Web service » et des artifacts spécifiques au runtimeDataPower (Data Studio Developer)� Artifacts:
� Feuilles de styles XSLT� Fichier WSDL pour l’exposition du service
� ���� DEMO: FIRST.exe
1. Création d’un DataSource, à partir d’une appliance DataPower XI50 (DataPower)
2. Chargement des artifacts précédemment créés (DataPower)
3. Configuration d’un WS-Proxy pour le binding SOAP/HTTP� Bindings disponibles:
� SOAP� XML� HTTP GET et POST
19© 2009 IBM Corporation
Etapes d’implémentation
1. Création d’un « Data Web service » et des artifacts spécifiques au runtimeDataPower (Data Studio Developer)� Artifacts:
� Feuilles de styles XSLT� Fichier WSDL pour l’exposition du service
2. Création d’un DataSource, à partir d’une appliance DataPower XI50 (DataPower)
� ���� DEMO: SECOND.exe
1. Chargement des artifacts précédemment créés (DataPower)
2. Configuration d’un WS-Proxy pour le binding SOAP/HTTP� Bindings disponibles:
� SOAP� XML� HTTP GET et POST
21© 2009 IBM Corporation
Etapes d’implémentation
1. Création d’un « Data Web service » et des artifacts spécifiques au runtimeDataPower (Data Studio Developer)� Artifacts:
� Feuilles de styles XSLT� Fichier WSDL pour l’exposition du service
2. Création d’un DataSource, à partir d’une appliance DataPower XI50 (DataPower)
3. Chargement des artifacts précédemment créés (DataPower)� ���� DEMO: THIRD.exe
1. Configuration d’un WS-Proxy pour le binding SOAP/HTTP� Bindings disponibles:
� SOAP� XML� HTTP GET et POST
23© 2009 IBM Corporation
Etapes d’implémentation
1. Création d’un « Data Web service » et des artifacts spécifiques au runtimeDataPower (Data Studio Developer)� Artifacts:
� Feuilles de styles XSLT� Fichier WSDL pour l’exposition du service
2. Création d’un DataSource, à partir d’une appliance DataPower XI50 (DataPower)
3. Chargement des artifacts précédemment créés (DataPower)
4. Configuration d’un WS-Proxy pour le binding SOAP/HTTP� Bindings disponibles:
� SOAP� XML� HTTP GET et POST
� ���� DEMO: FOURTH.exe + PROBES.exe
29© 2009 IBM Corporation
Web-ServiceProxy
HTTP FrontSide Handler
DB2 9DB2 9
Windows
…
…
GETEMPLOYEE
STORED PROCEDURES
HTTP_FSH_DPDEMO wsp_MyCompEmployees
SOAPmessage
SOAP/HTTP
CALL STOREDPROCEDURERESPONSE
DataPower XI50
Web Service Consumer
DRDASEND SOAP RESPONSE BACK
« Loopback »
30© 2009 IBM Corporation
SOAP/HTTP
SOAPmessage DB2 9DB2 9
Windows
…
…
GETEMPLOYEE
STORED PROCEDURES
TCP/IP
MyEmployees_soap.xsl
MyEmployees_core.xsl
MyEmployees_dp.wsdl
IBM DataPower XI50Web Service Consumer
DB2 9
Data Web Service Artifacts
SQL DataSource
DRDA
« Loopback »
34© 2009 IBM Corporation
DB2 9
Stored ProceduresWeb ServiceConsumer
SOAP/HTTPS
TCP/IP
DRDA
DataPower XI50
WAS
WSRR
LDAPAuthentification Mutuelle
(2-way SSL)
WSRR Subscription
WSDL
Data Web-Serviceartifacts
Trusted Zone
SOAP/HTTPS
IP Firewall
Network
TCP/IP
Contrôle d’AccèsAU/AZ
Sécurité
35© 2009 IBM Corporation
Web-ServiceProxy
HTTP FrontSide Handler
DB2 9DB2 9
Windows
…
…
GETEMPLOYEE
STORED PROCEDURES
HTTP_FSH_DPDEMO wsp_MyCompEmployees
SOAPmessage
SOAP/HTTP
CALL STOREDPROCEDURERESPONSE
DataPower XI50
Web Service Consumer
DRDASEND SOAP RESPONSE BACK
« Loopback »
Résumé
36© 2009 IBM Corporation
Merci de votre participation !
Prochain PoT* DataPower:30 Sept. – 1er Oct. 2009
(*): Proof of Technology
37© 2009 IBM Corporation
Informations Utiles
� IBM Software Home Page� www.ibm.com/software
� WebSphere Software Platform� www.ibm.com/software/websphere
� WebSphere developerWorks� http://www-128.ibm.com/developerworks/websphere
� WebSphere DataPower SOA Appliances Home page� http://www-306.ibm.com/software/integration/datapower/index.html
� WebSphere DataPower SOA Appliances Forum� http://www.ibm.com/developerworks/forums/forum.jspa?forumID=1198
� DataPower Redbooks� http://www.redbooks.ibm.com/cgi-bin/searchsite.cgi?query=datapower
� >> DB2 9 for z/OS: Deploying SOA Solutions (SG24-7663)
� WebSphere DataPower Support Web Site� http://www-306.ibm.com/software/integration/datapower/support/
� XML Threats� http://www-128.ibm.com/developerworks/websphere/techjournal/0603_col_hines/0603_col_hines.html