Loading presentation...

Present Remotely

Send the link below via email or IM

Copy

Present to your audience

Start remote presentation

  • Invited audience members will follow you as you navigate and present
  • People invited to a presentation do not need a Prezi account
  • This link expires 10 minutes after you close the presentation
  • A maximum of 30 users can follow your presentation
  • Learn more about this feature in our knowledge base article

Do you really want to delete this prezi?

Neither you, nor the coeditors you shared it with will be able to recover it again.

DeleteCancel

Make your likes visible on Facebook?

Connect your Facebook account to Prezi and let your likes appear on your timeline.
You can change this under Settings & Account at any time.

No, thanks

Pensando en SOA en el Banco Bolivariano

No description
by

Andres Hevia

on 28 February 2013

Comments (0)

Please log in to add your comment.

Report abuse

Transcript of Pensando en SOA en el Banco Bolivariano

SOA es una nueva forma de
pensar y diseñar el software Situación de T.I. Imperativos de negocio Qué es SOA? Multicanalidad Por fin, es posible, lograr la reutilización.
Desarrollamos una vez y lo usamos en todas las soluciones de negocio
Podremos crear servicios de más alto valor añadido combinando servicios ya existentes Cuál es la situación actual de T.I.?
Cual es la percepción que tiene negocio de nosotros? 1.- Conectar los activos que ya tenemos
2.- Extraer más valor de lo que ya tenemos
3.- Extender y evolucionar lo que ya tenemos 1.- SOA es una forma de ver y diseñar el software de una empresa.
2.- Está basada en la definición de pequeños programas de utilidad para el negocio (servicio) que se pueden combinar fácilmente para construir nuevos servicios con más funcionalidad.
3.- Ofrece a la compañía una gran flexibilidad, una reducción del time to market y una reducción de costes. El negocio nos reclama que podamos hacer llegar la funcionalidad de la empresa a través de todo tipo de canales
Las apliaciones tradicionales no son multicanal
La multicanalidad está en la esencia misma de SOA.
Una misma lógica de negocio (se hace sólo una vez) podremos reaprovecharla para todo tipo de canales, clientes y partners Reutilización Pensando en SOA Para incrementar la calidad de las aplicaciones
- Midiendo un mayor beneficio, menor coste y mayor satisfacción
- Conseguimos retener al cliente y productividad del empleado Para reducir el time to market
- Midiendo un mayor beneficio
- Conseguimos ventaja competitiva reduciendo el tiempo de puesta en marcha de una iniciativa de negocio Para incrementar la facilidad de implementar nuevos negocios
- Midiendo un mayor beneficio
- Conseguimos nuevos clientes y nuevos productos Para incrementar la consistencia en los sistemas
- Midiendo un menor riesgo y menor coste
- Conseguimos confianza, reutilización y economía de escala 1.- Reducir los costes de desarrollo y mantenimiento de las aplicaciones, a través de la reutilización de servicios en tiempo de ejecución en múltiples aplicaciones.
2.- Incrementar la agilidad del negocio gestionando de manera efectiva el ciclo de vida del servicio (descubrimiento, definición, diseño, implementación, pruebas, despliegue, gestión, mantenimiento y retiro). 7 prácticas que
proporcionan valor 1.- Integración de múltiples canales
2.- Componer aplicaciones
3.- Como base para la automatización de procesos
4.- Uso del portfolio de servicios para priorizar los servicios
5.- Desarrollar el gobierno SOA lo antes posible
6.- Usar SOA para obtener un mejor conocimiento del negocio
7.- Usar SOA para facilitar la adopción de la “nube” Tipos de aplicaciones silos
Conectadas
SOA Principios de SOA 1.- Contratos de servicio estandarizados
2.- Bajo acoplamiento
3.- Abstracción
4.- Reutilización
5.- Autonomía
6.- Sin estado
7.- Capacidad de descubrimiento
8.- Composición
9.-Interoperabilidad Exposición de procedimientos almacenados como servicios Arquitectura Pensando en SOA Gracias por su atención 1.- Somos lentos 2.- Somos caros 3.- Nos cuesta mucho conectar las cosas 4.- Nos perdemos oportunidades de negocio WS-Security
WS-SecurityPolicy
WS-Trust
WS-SecureConversation
WS-Federation
Extensible Access Control Markup Language (XACML)
Extensible Rights Markup Language (XrML)
XML Key Management (XKMS)
Security Assertion Markup Language (SAML)
WS-I Basic Security Profile Estándares implicados en la seguridad WS Servicio seguro A nivel de Transporte
Se aplica la seguridad el protocolo mediante el que viajan los datos por la red (no los datos en sí)
Normalmente se hace sobre HTTP, añadiendo Secure Sockets Layer (SSL) o Transport Layer Security (TLS)
Proporciona
Autenticación
Integridad
Confidencialidad
A nivel de XML
Se aplica la seguridad al mensaje en sí
El protocolo puede ser inseguro
No importa el protocolo empleado ni por cuantos nodos pase: siempre tiene la seguridad aplicada
Se puede aplicar la seguridad sólo a las partes del XML que nos interese (no a todo el documento) Tipos de seguridad - En una arquitectura típica de tres capas
Únicamente el frontal está expuesto a los ataques
Se accede a través de una DMZ con firewalls al servidor web y de ahí al servidor de aplicaciones que presenta las pantallas al usuario
El resto de recursos de la empresa no están accesibles desde fuera
- En un arquitectura SOA
a) Podemos tener servicios de backend o de núcleo expuestos directamente al consumidor (Incluso fuera de la empresa)
b) El área expuesta a un ataque se amplia
Desde el frontend al backend, pasando por el ESB
c) En algunas empresas se opta por no publicar los servicios del ESB y de backend hacia fuera directamente
d) Es recomendable usar un gateway de XML que “controle la frontera” de la empresa
Mediante otro servidor de aplicaciones
Mediante una solución hardware: firewall XML El problema de la excesiva exposición de los servicios - Por qué es necesaria la seguridad en SOA?
Respuesta obvia: para evitar ataques a la empresa
También sirve para monitorear el uso de los servicios en SOA
- Características básicas
Identificación
Quién eres tú?
Autenticación
Puedes probar que eres quien dices ser?
Autorización
Qué puedes hacer
- Otras características necesarias
Confidencialidad
Lo que estamos diciendo queda entre nosotros?
Integridad
El mensaje que he recibido es el mismo que has enviado o alguien lo ha manipulado en el camino? Seguridad en SOA 1.- Que la identidad del usuario se propague por todos los servicios implicados
Debemos ser capaces de validar la identidad del usuario, transmitida como cabecera en la invocación del servicio.
2.- Para la autorización, saber si el usuario puede hacer o no lo que pide, también seria relativamente fácil si todos los sistemas soportan LDAP y los usuarios están dados de alta en este repositorio con unos roles que describen un conjunto de permisos sobre operaciones concretas en los servicios.
Si no se usa LDAP es posible extender el comportamiento del servidor de aplicaciones para que lea del repositorio que tengamos.
3.- Por otra parte, también hay que tener en cuenta, que se suele tener el requisito, derivado de la Ley de Protección de Datos de cada país, de mantener una auditoría sobre qué usuario accede o modifica qué recurso. El problema de la integración con sistemas de seguridad heterogéneos 1.- Para firmar mensajes para asegurar su origen y su integridad.
Igual que sabemos quién ha firmado contrato mirando la firma manuscrita, podemos saber en este caso quien envía una petición a un servicio web o de quién es la respuesta con WS-Signature.
También sirve para asegurarnos de que alguien no ha modificado el mensaje (Integridad)

2.- Para encriptar el mensaje y asegurarnos de que nadie puede leer el contenido con XML-Encryption
3.- Asegurarnos de la identidad del que envía el mensaje ¿Para qué sirve WS-Security? XML-Security
Es un estándar de 2004: permite el procesado de firmas, autenticación y encriptación
Engloba a XML-Encription y XML-Signature
Se aplica a mensajes SOAP
Es interoperable (Java, .NET) Seguridad en SOA: identidad
Full transcript