26 Jun

Computación en la Nube

Abstracción y Virtualización: Las aplicaciones se ejecutan en sistemas físicos no especificados a través de subcontratación ubicua.

Modelos de Computación en la Nube

  • SAAS: Servicio cloud para distribuir aplicaciones en la nube.
  • PAAS: Ofrece un entorno para escribir y ejecutar código.
  • IAAS: Provee y gestiona recursos de computación, almacenamiento, redes y virtualización por internet.

Tipos de Servicios de Computación en la Nube

  • Pública: Uso abierto, uso en universidades, corporaciones, ONGs.
  • Privada: Comprende consumidores como las unidades de negocio.
  • Híbrida: Se ejecutan en combinación de servicios de computación y almacenamiento de nubes públicas y privadas.
  • Comunitaria: Compartido por varias ONGs con un interés en común como la política, misión, metas o seguridad.

Características del Cómputo en la Nube

Escalabilidad y servicios bajo demanda, UX, Garantía de servicio QoS, sistema autónomo, precios cómodos.

Ventajas del Cómputo en la Nube

Reducción de costes, uso fácil, calidad de servicio, fiabilidad, gestión externa de TI, mantenimiento sencillo, baja barrera de entrada.

Retos del Cómputo en la Nube

Rendimiento, seguridad y privacidad, control limitado de usuarios, costos de banda ancha, confiabilidad.

Seguridad

Conjunto de medidas de proceso, lógicas y físicas orientadas a la prevención, detección y corrección de casos de mal uso. Se debe considerar aspectos como integridad, confidencialidad, disponibilidad, vinculación o no repudio.

Ataques a la Seguridad

  • Interrupción: Parte del sistema destruida o no disponible ya sea por daño del hardware o de la línea de comunicación.
  • Intercepción: Entidad no autorizada ingresa a la información, puede ser por vía radio de comunicación o la copia ilícita de archivos o programas que se transmiten en la red.
  • Modificación: Entidad no autorizada modifica información.
  • Fabricación: Entidad no autorizada envía mensajes.
  • Pasivo: No altera la comunicación o información, solo escucha y monitorea la red para obtener información.
  • Activo: Altera comunicaciones y puede ser por suplantación de identidad, re-actuación, modificación de mensajes, degradación fraudulenta del servicio.

Mecanismos de Seguridad

Intercambio de autenticación, encriptado, integridad de datos, firma digital, control de acceso, tráfico de relleno, control de enrutamiento.

Sistemas Criptográficos

  • Encriptado Asimétrico: Cada usuario tiene una pareja de claves, pública y privada, ejem: autenticar mensajes o firma.
  • Encriptado Simétrico: Emisor y Receptor usan la misma clave.
  • Autenticación: Establecer o confirmar algo como auténtico.

Arquitectura Orientada a Servicios (SOA)

SOA es un marco de trabajo conceptual que establece una estructura de diseño para la integración de aplicaciones que permite unir objetivos de negocio y flexibilidad de integrar.

Beneficios de SOA

  • Reducción de costos.
  • Innovación de servicios.
  • Adaptación ágil.

V.C:

  • Mejora toma de decisiones.
  • Mejora productividad.
  • Potencia relaciones entre clientes y proveedores.

V.T.I:

  • Aplicaciones más productivas y flexibles.
  • Desarrollo rápido y económico.
  • Aplicaciones seguras y manejables.
  • Minimiza riesgo de inactividad o pérdida de datos.
  • Mejora innovación.

¿Qué es WCF?

Con WCF es posible enviar mensajes asincrónicos de un extremo de servicio a otro. Los mensajes pueden ser un carácter o palabra en XML o tan complejos como binarios. La base de WCF es ABC: Address (Ubicación del servicio), Binding (Forma de Conexión), y Contract (Funcionalidad).

Características de WCF

Orientado a servicios, mensajes duraderos, interoperable, transacciones, patrones de mensaje, compatible con AJAX y REST, metadatos de servicios, extensibilidad, seguridad.

Arquitectura WCF

  • Contratos y Descripciones: Definen aspectos de mensajes.
  • Tiempo de Ejecución de Servicios: Comportamientos de ejecución.
  • Mensajería: Compuesto por canales que procesan mensajes.
  • Alojamiento y Activación: Aloja los servicios IIS o WAS.

Implementación de Servicios SOAP con WCF

¿Qué es un contrato?

WCF usa el concepto de contrato para clientes y servicios, en donde se define operaciones soportadas, parámetros y tipos de datos, estructura de datos complejos, errores de ejecución. Estos contienen metadatos que incluye tipos de datos, operaciones, patrones de intercambio y protocolo de transacción.

Tipos de Contrato en WCF

  • Service Contract: Define operaciones de servicio para invocar por un request, identificando operaciones [Operation Contract].
  • Data Contract: Define estructura de datos del intercambio de mensajes, se coloca el atributo [DataMember] para serializar.
  • Message Contract: Habilita el control de header y su uso.

Endpoint

  • Un servicio WCF expone una colección de Endpoints.
  • Cada endpoint es un punto de entrada con el exterior.
  • Un cliente es un programa que puede intercambiar mensajes con uno o más Endpoints.
  • Un endpoint está compuesto por Address, Binding, Contract.

A: La dirección de red donde reside el endpoint.

B: Especifica la forma de conexión con el exterior ya sea el protocolo de transporte (TCP, HTTP), tipo de codificación (texto, binario), requerimiento de seguridad (SSL).

C: Colección de operaciones que especifica qué comunica el endpoint al exterior.

DOMAIN LAYER

  • ContratoRepositorio (IClienteRepositorio – ICreditoRepositorio)
    Referencias: dominio

  • Dominio (Cliente – Credito)
    Referencias: System.Runtime.Serialization

  • Fachada (ClienteFachada – CreditoFachada)
    Referencias: ContratoRepositorio, dominio, sqlrepositorio

INFRAESTRUCTURE LAYER

  • sqlrepositorio (ClienteRepositorio – ConexionRepositorio – CreditoRepositorio)
    Referencias: ContratoRepositorio, dominio, System.Config, Dapper, System.Data, System.Data.SqlClient

SERVICE LAYER

  • Contrato (IClienteService – ICreditoService)
    Referencias: dominio, System.ServiceModel, System.ServiceModel.Web

  • Implementación (ClienteService – CreditoService)
    Referencias: contrato, dominio, fachada

  • WCFService (ClienteService – CreditoService)
    Referencias: contrato, contratoRepositorio, dominio, implementación

Deja un comentario