soluciÓn tecnolÓgica facturaciÓn electrÓnica dian
Post on 10-Jul-2022
10 Views
Preview:
TRANSCRIPT
MODELO DE DISEÑO Arquitectura
Solución tecnológica de Facturación
Electrónica
Proceso: Servicios Informáticos Versión 01 Página 1 de 16
http://www.dian.gov.co
SOLUCIÓN TECNOLÓGICA FACTURACIÓN ELECTRÓNICA DIAN
Arquitectura de Software
Versión 01
MODELO DE DISEÑO Arquitectura
Solución tecnológica de Facturación
Electrónica
Proceso: Servicios Informáticos Versión 01 Página 2 de 16
http://www.dian.gov.co
Contenido
1. Introducción ................................................................................................................... 4
2. Alcance .......................................................................................................................... 4
Diagrama de contexto sin PA ......................................................................................... 5
Diagrama de contexto con PA ........................................................................................ 6
Modelo de domino .......................................................................................................... 7
3. Representación Arquitectónica ...................................................................................... 7
4. Metas y Restricciones .................................................................................................... 8
5. Vista de Procesos .......................................................................................................... 8
Diagrama BPMN Proceso de Autenticación .................................................................... 9
Diagrama BPMN Proceso Emisión y recepción de documentos electrónicos ............... 10
6. Vista de Despliegue ..................................................................................................... 10
Diagrama de despliegue ............................................................................................... 11
7. Vista de Implementación .............................................................................................. 12
Diagrama de componentes Microsoft Azure ................................................................. 13
8. Vista de Datos ............................................................................................................. 14
Diagrama de Base de datos SQL ................................................................................. 15
9. Tamaño y Desempeño (opcional) ................................................................................ 16
10. Calidad ...................................................................................................................... 16
Confiabilidad ................................................................................................................. 16
Usabilidad ..................................................................................................................... 16
Eficiencia ...................................................................................................................... 16
Mantenibilidad .............................................................................................................. 16
11. Documentos Relacionados ........................................................................................ 16
MODELO DE DISEÑO Arquitectura
Solución tecnológica de Facturación
Electrónica
Proceso: Servicios Informáticos Versión 01 Página 3 de 16
http://www.dian.gov.co
Ilustraciones
Ilustración 1. Diagrama de contexto sin PA ........................................................................ 5
Ilustración 2. Diagrama de contexto con PA ...................................................................... 6
Ilustración 3. Modelo de dominio ....................................................................................... 7
Ilustración 4. Estilos arquitecturales ................................................................................... 8
Ilustración 5. BPMN Autenticación ..................................................................................... 9
Ilustración 6. BPMN emisión y recepción de documentos electrónicos ............................ 10
Ilustración 7. Diagrama de despliegue. ............................................................................ 11
Ilustración 8. Relaciones entre componentes de Microsoft Azure .................................... 14
Ilustración 9. Base de datos SQL ..................................................................................... 16
MODELO DE DISEÑO Arquitectura
Solución tecnológica de Facturación
Electrónica
Proceso: Servicios Informáticos Versión 01 Página 4 de 16
http://www.dian.gov.co
1. Introducción
El diseño de la arquitectura de un sistema es el proceso por el cual se define una
solución para los requisitos técnicos y operacionales del mismo. Este proceso define
qué componentes forman el sistema, cómo se relacionan entre ellos, y cómo mediante
su interacción llevan a cabo la funcionalidad especificada, cumpliendo con los criterios
de calidad indicados como eficiencia, confiabilidad, mantenibilidad, usabilidad entre otros.
Durante el diseño de la arquitectura se tratan los temas que pueden tener un impacto
importante en el éxito o fracaso del sistema. Es importante tener en cuenta los intereses
de los usuarios del sistema, el propio sistema y los objetivos del negocio.
Para la Solución tecnológica de facturación electrónica para la Dian, se define una
arquitectura N-Capas con orientación al dominio. El objetivo de una arquitectura basada
en Domain Driven Design (DDD) es conseguir un modelo orientado a objetos que refleje
el conocimiento de un dominio dado y que sea completamente independiente de cualquier
concepto de comunicación, ya sea con elementos de infraestructura como de interfaz
gráfica. Buscamos construir un modelo a través del cual podamos resolver problemas
expresados como la colaboración de un conjunto de objetos.
2. Alcance
Se propone una Solución Tecnológica de Facturación Electrónica, con fines de control
fiscal que incorpore funciones de validación de facturas electrónicas y gestión de
Proveedores Autorizados y Tecnológicos para realizar estas validaciones en tiempo real.
Con este documento se da a entender en detalles cómo opera el sistema a desarrollar.
Los usuarios del sistema son aquellas empresas asociadas a representantes legales que
independientemente pueden ser proveedores autorizados, proveedores tecnológicos o
facturadores.
Para operar como facturador este tiene tres opciones; un facturador puede operar a
través de un proveedor tecnológico o proveedor autorizado, un software propio o el
MODELO DE DISEÑO Arquitectura
Solución tecnológica de Facturación
Electrónica
Proceso: Servicios Informáticos Versión 01 Página 5 de 16
http://www.dian.gov.co
Facturador gratuito. Una vez que el facturador decida la forma en la que va a facturar
este podrá emitir los documentos electrónicos.
Diagrama de contexto sin PA
Ilustración 1. Diagrama de contexto sin PA
En el caso de que un facturador decida operar a través de un proveedor autorizado el flujo
de datos sería de la siguiente forma.
MODELO DE DISEÑO Arquitectura
Solución tecnológica de Facturación
Electrónica
Proceso: Servicios Informáticos Versión 01 Página 6 de 16
http://www.dian.gov.co
Diagrama de contexto con PA
Ilustración 2. Diagrama de contexto con PA
Un proveedor autorizado o tecnológico tiene un software a través del cual debe operar
para emitir documentos electrónicos. Este software debe ser aprobado, por lo que para
hacerlo debe cumplir con las restricciones que se le imponen en un set de pruebas
especificado por el administrador Dian.
Para mayor comprensión de la solución se realizó un modelo de dominio, que está
compuesto por los conceptos fundamentales de la misma. Representándose cada
concepto como clase del sistema y las relaciones asociadas entre ellas.
MODELO DE DISEÑO Arquitectura
Solución tecnológica de Facturación
Electrónica
Proceso: Servicios Informáticos Versión 01 Página 7 de 16
http://www.dian.gov.co
Modelo de domino
Ilustración 3. Modelo de dominio
3. Representación Arquitectónica
Una aplicación puede usar varios estilos arquitecturales para dar forma al sistema
dependiendo del aspecto que tenga la misma (Ver Ilustración 4). Por tanto, una aplicación
será una combinación de muchos de ellos y de soluciones propias. La arquitectura N-
Capas basada en DDD no es la excepción.
Aspecto Estilos
Comunicaciones SOA, Message Bus, Tuberías y filtros.
Despliegue Cliente/Servidor, 3-Niveles, N-Niveles.
MODELO DE DISEÑO Arquitectura
Solución tecnológica de Facturación
Electrónica
Proceso: Servicios Informáticos Versión 01 Página 8 de 16
http://www.dian.gov.co
Dominio Modelo de dominio, Repositorio.
Interacción Presentación separada.
Estructura Componentes, Orientada a objetos,
Arquitectura en capas.
Ilustración 4. Estilos arquitecturales
El sistema está desarrollado siguiendo varios de estos estilos, por lo que es un sistema
implementado por capas, orientado al dominio, usando repositorios y servicios.
4. Metas y Restricciones
[Para el diseño tipo arquitectura: Esta sección describe los requerimientos y objetivos del software que tienen un impacto significativo sobre la arquitectura; por ejemplo, protección, seguridad, privacidad, uso de software comercial, portabilidad, distribución y reutilización.] [Para todos los tipos de diseño: También se incluyen restricciones especiales relacionadas con: estrategias de diseño e implementación, herramientas de desarrollo, estructura del equipo, tiempos del proyecto, código legado, etc.]
[Para todos los tipos de diseño: Enuncie y describa las metas y restricciones del diseño respectivo]
5. Vista de Procesos
La solución cuenta con dos componentes fundamentales Solución web y Servicios web.
En esta sección se describirán dos procesos importantes Autenticación y Envío y
recepción de documentos electrónicos.
El proceso de autenticación para ambos componentes varía. Para ingresar vía web
tendríamos dos formas de hacerlo: Autenticación por un certificado digital y Autenticación
por usuario y contraseña con información proveniente del sistema Muisca. Mientras que
para ingresar vía web service se usaría Autenticación por un certificado digital.
En la siguiente imagen se muestra un diagrama BPMN (Business Process Model and
Notation, Modelo y Notación de Procesos de Negocio) que modela ambas opciones de
autenticación.
MODELO DE DISEÑO Arquitectura
Solución tecnológica de Facturación
Electrónica
Proceso: Servicios Informáticos Versión 01 Página 9 de 16
http://www.dian.gov.co
Diagrama BPMN Proceso de Autenticación
Ilustración 5. BPMN Autenticación
Se utilizó la misma notación para modelar los procesos de Emisión y recepción de
documentos electrónicos, así como también Validación y Consulta del estado de estos
documentos electrónicos. En este caso se refiere al flujo que sigue de forma asíncrona el
envío de un documento electrónico a través de un Proveedor autorizado o tecnológico
(PA/PT), recepción y validación del mismo.
MODELO DE DISEÑO Arquitectura
Solución tecnológica de Facturación
Electrónica
Proceso: Servicios Informáticos Versión 01 Página 10 de 16
http://www.dian.gov.co
Diagrama BPMN Proceso Emisión y recepción de documentos electrónicos
Ilustración 6. BPMN emisión y recepción de documentos electrónicos
Para ver el resto de los procesos Ver diagramas adjuntos a la documentación generada
por Enterprise Architect.
6. Vista de Despliegue
La comunicación ente los clientes y el sistema se realiza a través del protocolo HTTPS
(Hyper-Text Transfer Protocol Secure, Protocolo de transferencia de hipertexto). Este
MODELO DE DISEÑO Arquitectura
Solución tecnológica de Facturación
Electrónica
Proceso: Servicios Informáticos Versión 01 Página 11 de 16
http://www.dian.gov.co
protocolo permite establecer una conexión segura entre el servidor y el cliente,
brindándole integridad y confidencialidad de los datos manejados entre sus ordenadores y
los sitios web. Para la comunicación por medio de intercambio de datos XML se utiliza el
protocolo SOAP (Simple Object Access Protocol, Protocolo estándar de comunicación entre
objetos) utilizado para el envío de documentos electrónicos por facturadores.
Se desarrolló un sitio web y varios servicios cada uno de ellos con objetivos a fines para
gestión y control de la solución propuesta. Ambos implementan Azure Functions.
Diagrama de despliegue
Ilustración 7. Diagrama de despliegue.
La comunicación entre el servidor y las bases de datos se establece mediante los
protocolos TCP / IP (Transmission Control Protocol / Internet Protocol), (Protocolo de
Control de Transmisión / Protocolo de Internet). El uso de estos protocolos permite el
transporte de datos fiable entre bases de datos y servidores web, así como también para
los servicios que se han desarrollado.
El sistema utiliza tres tipos de bases de datos para almacenar y gestionar la información.
Ver la sección Vista de datos para mayor detalle sobre este tema.
MODELO DE DISEÑO Arquitectura
Solución tecnológica de Facturación
Electrónica
Proceso: Servicios Informáticos Versión 01 Página 12 de 16
http://www.dian.gov.co
7. Vista de Implementación
La solución Gosocket.Dian está estructurada en 6 capas: L0 Infrastructure, L1 Data, L2
Domain, L3 Application, L4 Presentation y L6 Functions.
L0 Infrastructure: Esta capa está directamente ligada a tareas de persistencia de los
datos, específicamente a los componentes de Azure tales como: Tables, Storages,
Queue, Event hub y Certificados.
L1 Data: Esta capa define el uso de tecnologías de acceso a datos con las clases
Cosmos DB Manager y SQL DB Context.
L2 Domain: Esta capa debe representar conceptos de negocio, información
sobre la situación de los procesos de negocio e implementación de las reglas del
dominio. Las clases del dominio implementadas están agrupadas de la siguiente forma:
Cosmos, Domain, Entity y Utils.
L3 Application: Esta capa define las tareas que debe hacer el
software, como tal, lo cual normalmente está ligado finalmente a realizar llamadas a la
Capa de Dominio e Infraestructura. Se realiza coordinación de transacciones y
persistencia de datos, validaciones de datos y aspectos de seguridad como
requerimientos de autenticación y autorización para ejecutar componentes concretos. Los
Servicios de aplicación son los elementos más comunes en esta capa.
L4 Presentation: En esta capa se presentan aspectos lógicos de diseño (patrones) y
posteriormente la implementación de estos con diferentes tecnologías. En esta capa se
encuentra la aplicación web que se implementó siguiendo un patrón MVC y el Servicio
web.
L6 Functions: Esta capa contiene la implementación de las Azure Functions que no es
más que tareas de alta demanda desplegadas en un ambiente serverless.
La siguiente ilustración muestra la relación entre cada componente de la solución con los
componentes de Microsoft Azure.
MODELO DE DISEÑO Arquitectura
Solución tecnológica de Facturación
Electrónica
Proceso: Servicios Informáticos Versión 01 Página 13 de 16
http://www.dian.gov.co
Diagrama de componentes Microsoft Azure
MODELO DE DISEÑO Arquitectura
Solución tecnológica de Facturación
Electrónica
Proceso: Servicios Informáticos Versión 01 Página 14 de 16
http://www.dian.gov.co
Ilustración 8. Relaciones entre componentes de Microsoft Azure
8. Vista de Datos
Los datos del sistema se almacenan en tres tipos de bases de datos: SQL Server, Azure
Table y Cosmos DB.
En SQL Server se almacenan los datos de las empresas, proveedores, facturadores,
representantes legales, softwares y las relaciones entre estos.
En Azure Table se almacenan las reglas, esquemas, categorías, los resultados de
validación de reglas, los números secuencial único (NSU), la relación entre
representantes legales y empresas con permisos, las referencias y estadísticas de
documentos entre otros, ya que el flujo de datos es mayor y no es conveniente
almacenarlos en SQL.
En Cosmos DB se almacenan los documentos electrónicos.
Para mayor detalles sobre este tema, puede ver además el documento Descripción del
modelo de datos.
MODELO DE DISEÑO Arquitectura
Solución tecnológica de Facturación
Electrónica
Proceso: Servicios Informáticos Versión 01 Página 15 de 16
http://www.dian.gov.co
Diagrama de Base de datos SQL
MODELO DE DISEÑO Arquitectura
Solución tecnológica de Facturación
Electrónica
Proceso: Servicios Informáticos Versión 01 Página 16 de 16
http://www.dian.gov.co
Ilustración 9. Base de datos SQL
9. Tamaño y Desempeño (opcional) [Una descripción de las principales características de dimensionamiento del software que afectan a la arquitectura, así como las restricciones de rendimiento objetivo.]
[Verifique que las especificaciones suplementarias relacionadas con tamaño y desempeño se satisfacen con la solución propuesta]
10. Calidad
La arquitectura responde a Atributos de calidad
Confiabilidad
El sistema cumple con los requerimientos funcionales y no funcionales que se
especificaron para la realización de la Solución tecnológica de Facturación electrónica.
Usabilidad
El sistema cuenta con una interfaz intuitiva y fácil de usar. Solo se necesita que el
usuario conozca el proceso de facturación de la Dian para tener una experiencia positiva
con el software.
Eficiencia
Para lograr este atributo de calidad se utilizaron varios recursos de Microsoft Azure
además de que los tiempos de respuesta son los recomendados.
Mantenibilidad
El sistema se implementó siguiendo una arquitectura en capas permitiendo que cada
fallo o error pudiera ser solucionado sin afectar otro componente del mismo.
11. Documentos Relacionados
Documento Descripción /Razón por la cual se relaciona
Descripción del modelo de datos
Este documento contiene las descripciones y detalles del modelo de datos del sistema.
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
Componentes de Azure
Solución Tecnológica
Facturación
Electrónica
Versión del documento: 01 - 1 -Página 1 de 28
Facturación Electrónica DIAN
Arquitectura de Seguridad
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
Componentes de Azure
Solución Tecnológica
Facturación
Electrónica
Versión del documento: 01 - 2 -Página 2 de 28
Page 2
Arquitectura de Seguridad, Facturación Electrónica DIAN, Versión 0.1
Preparado por Sonia Bravo
"DIAN - Arquitectura de Seguridad en Azure.docx", Template Version 4
Tabla de Contenido
1 ........................................................................................................................................................................... 4
2 Objetivos .................................................................................................................................................. 4
2.1 Audiencia ......................................................................................................................................................... 4
3 Arquitectura y Consideraciones de Seguridad ........................................................................... 5
3.1 Arquitectura de la solucion ....................................................................................................................... 5
3.2 Seguridad de la Plataforma Microsoft Azure ..................................................................................... 6
4 Seguridad en los modulos de la solucion .................................................................................. 11
4.1.1 Interfaces Web aseguradas con ASP.NET Identity ...................................................... 11
4.1.2 Webservices asegurados con WS-Security ................................................................... 12
4.1.3 Validador de documentos y comunicación de facturas auditable .......................... 13
5 Seguridad en los modulos de la solucion .................................................................................. 14
5.1.1 Azure Traffic Manager ....................................................................................................... 14
5.1.2 Azure App Service .............................................................................................................. 14
5.1.3 Azure App Service .............................................................................................................. 15
5.1.4 Azure Monitor ..................................................................................................................... 16
5.2 Almacenamiento de Datos ..................................................................................................................... 16
5.2.1 Azure App Service .............................................................................................................. 16
5.2.2 Azure Key Vault ................................................................................................................... 17
5.2.3 Azure SQL Database ........................................................................................................... 17
5.2.4 Azure Cosmos DB ............................................................................................................... 19
6 Seguridad a nivel de administración............................................................................................ 22
6.1 Seguridad a nivel administrativo de Microsoft Azure .................................................................. 22
6.2 Control de acceso basado en rol ......................................................................................................... 24
6.3 Directivas y Auditoría ............................................................................................................................... 26
6.4 Lineamientos generales de seguridad en los despliegues que se realicen en Microsoft
Azure ........................................................................................................................................................................ 27
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
Componentes de Azure
Solución Tecnológica
Facturación
Electrónica
Versión del documento: 01 - 3 -Página 3 de 28
Page 3
Arquitectura de Seguridad, Facturación Electrónica DIAN, Versión 0.1
Preparado por Sonia Bravo
"DIAN - Arquitectura de Seguridad en Azure.docx", Template Version 4
6.4.1 Capacidades de seguridad para la administración y monitoreo de la operación. 27
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
Componentes de Azure
Solución Tecnológica
Facturación
Electrónica
Versión del documento: 01 - 4 -Página 4 de 28
Page 4
Arquitectura de Seguridad, Facturación Electrónica DIAN, Versión 0.1
Preparado por Sonia Bravo
"DIAN - Arquitectura de Seguridad en Azure.docx", Template Version 4
1 Objetivos
El presente documento tiene como objetivo entregar información detallada de seguridad sobre
los componentes Azure que conforman la solución tecnológica de Facturación Electrónica para
la DIAN.
A lo largo del documento se irán describiendo los siguientes temas:
Diagrama de Arquitectura de la solución validación previa.
Seguridad Global de Azure.
Descripcion de los diferentes modulos que soporta la solución.
Descripcion detallada de la seguridad de los componentes utilizados.
Seguridad a nivel de administración
1.1 Audiencia
Este documento esta orientado para ser utilizado, principalmente, como guía para conecer la
arquitectura de la solución por arquitectos, desarrolladores y personal técnico de DIAN
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
Componentes de Azure
Solución Tecnológica
Facturación
Electrónica
Versión del documento: 01 - 5 -Página 5 de 28
Page 5
Arquitectura de Seguridad, Facturación Electrónica DIAN, Versión 0.1
Preparado por Sonia Bravo
"DIAN - Arquitectura de Seguridad en Azure.docx", Template Version 4
2 Arquitectura y Consideraciones de Seguridad
2.1 Arquitectura de la solucion
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
Componentes de Azure
Solución Tecnológica
Facturación
Electrónica
Versión del documento: 01 - 6 -Página 6 de 28
Page 6
Arquitectura de Seguridad, Facturación Electrónica DIAN, Versión 0.1
Preparado por Sonia Bravo
"DIAN - Arquitectura de Seguridad en Azure.docx", Template Version 4
2.2 Seguridad de la Plataforma Microsoft Azure
La seguridad de la plataforma hace referencia a las capacidades que como parte del servicio ofrece
Microsoft Azure. Al ser parte del servicio, estas capacidades no pueden ser personalizadas o
ajustadas a la necesidad de cada cliente, aunque si consideran los requerimientos base de todas
las organizaciones y la demanda del mercado, asegurando su aplicabilidad a nivel mundial. Para
entender los componentes básicos de seguridad en la plataforma Microsoft divide esta dimensión
en 4 categorías, que cubren las capacidades principales de seguridad de la plataforma. Como se
puede apreciar en la imagen, dichas categorías son:
Ciclo de vida del desarrollo de la seguridad
Controles de seguridad de la infraestructura
Controles de seguridad operacional
Cumplimiento
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
Componentes de Azure
Solución Tecnológica
Facturación
Electrónica
Versión del documento: 01 - 7 -Página 7 de 28
Page 7
Arquitectura de Seguridad, Facturación Electrónica DIAN, Versión 0.1
Preparado por Sonia Bravo
"DIAN - Arquitectura de Seguridad en Azure.docx", Template Version 4
El ciclo de vida del desarrollo de la seguridad comprende el conjunto de procesos y
herramientas diseñadas por Microsoft para minimizar el número de severidades y
vulnerabilidades sobre sus productos a través de un enfoque metodológico que se puede
apreciar en la siguiente imagen. La imagen que se muestra a continuación, resumen dicho ciclo
de vida el cual Microsoft habilitó públicamente en el siguiente link:
https://www.microsoft.com/en-us/sdl para que los clientes entiendan el proceso que aplica
Microsoft durante el proceso de implementación de los constantes releases y funcionalidades
que se van habilitando de cada uno de los componentes de la plataforma. Es importante
considerar que aunque algunos de los servicios habilitados por la plataforma tienen
actualizaciones semanales, siempre aplican esta metodología de desarrollo para garantizar que
dichos despliegues cumplan con los requerimientos y estándares de seguridad.
Por otro lado, los controles de seguridad de la infraestructura son el conjunto de procesos,
controles y herramientas diseñadas por Microsoft, para garantizar la seguridad física sobre la
infraestructura y los Datacenter (DC)1 que habilitan el servicio de Microsoft Azure. Como se
puede apreciar en la imagen, la seguridad en la infraestructura se divide en 3 categorías,
1 Como se aclaró en el documento de Microsoft Azure – Gobierno 100, Microsoft Azure cuenta a la fecha
del presente documento con 50 regiones que a su vez cuentan con más de 1 Data Center en cada una de
ellas.
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
Componentes de Azure
Solución Tecnológica
Facturación
Electrónica
Versión del documento: 01 - 8 -Página 8 de 28
Page 8
Arquitectura de Seguridad, Facturación Electrónica DIAN, Versión 0.1
Preparado por Sonia Bravo
"DIAN - Arquitectura de Seguridad en Azure.docx", Template Version 4
seguridad perimetral, seguridad de los edificios y seguridad de los cuartos de servidores.
En la imagen también se pueden apreciar las capacidades básicas que se ofrece en cada
categoría para garantizar la seguridad de la infraestructura física de los Data centers. Para
asegurar que dichas capacidades cumplen con los estándares de seguridad soportados a nivel
mundial, Microsoft Azure cuenta con un amplio grupo de certificaciones de cumplimiento que
se describirán al final de esta sección.
Los controles de seguridad operacional comprenden los procesos y herramientas que habilita
Microsoft para la prevención de la penetración de la plataforma, la gestión de la respuesta a
incidentes, los controles de acceso, la detección de virus y amenazas, y los análisis forenses. La
síntesis de la seguridad operacional que habilita Microsoft para todos sus servicios en línea
(incluyendo Microsoft Azure) está disponible en el documento Operational Security for Online
Services, disponible (en inglés) en el siguiente link: https://www.microsoft.com/en-
us/download/details.aspx?id=40872
Como parte de la seguridad operacional, Microsoft habilita el proceso de trabajo en equipo rojo
equipo azul, el cual es una práctica mundialmente probada y orientada a definir un equipo
orientado a defender los ataques informáticos y un equipo orientado a generar ataques
informáticos. A través de este constante ejercicio, Microsoft pone a prueba su plataforma para
identificar posibles brechas de seguridad. El detalle de como implementa Microsoft esta práctica
como parte de su seguridad operacional está disponible en el documento Microsoft Enterprise
Cloud Red Teaming, disponible en:
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
Componentes de Azure
Solución Tecnológica
Facturación
Electrónica
Versión del documento: 01 - 9 -Página 9 de 28
Page 9
Arquitectura de Seguridad, Facturación Electrónica DIAN, Versión 0.1
Preparado por Sonia Bravo
"DIAN - Arquitectura de Seguridad en Azure.docx", Template Version 4
http://download.microsoft.com/download/C/1/9/C1990DBA-502F-4C2A-848D-
392B93D9B9C3/Microsoft_Enterprise_Cloud_Red_Teaming.pdf
Por último, está la categoría de cumplimiento en donde Microsoft enfoca sus esfuerzos por
obtener y mantener las certificaciones más importantes y relevantes a nivel mundial que
garantizan y certifican todo lo que anteriormente se ha descrito. Actualmente, Microsoft es el
proveedor de Cloud con más certificaciones a nivel mundial, las cuales se pueden consultar en la
siguiente imagen y en el link: https://www.microsoft.com/en-us/trustcenter/default.aspx.
Aunque durante el transcurso de esta sección se hizo una síntesis general de las capacidades de
seguridad que ofrece Microsoft Azure como parte del servicio existe mucho más nivel de detalle
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
Componentes de Azure
Solución Tecnológica
Facturación
Electrónica
Versión del documento: 01 - 10 -Página 10 de 28
Page 10
Arquitectura de Seguridad, Facturación Electrónica DIAN, Versión 0.1
Preparado por Sonia Bravo
"DIAN - Arquitectura de Seguridad en Azure.docx", Template Version 4
de estas y muchas más capacidades en la documentación pública de la plataforma. Para facilitar
el proceso de entendimiento y profundización de dichas capacidades, se recomienda acceder a
la tabla de resumen de capacidades de la plataforma, disponible en el siguiente link
https://docs.microsoft.com/es-es/Microsoft Azure/security/Microsoft Azure-security#summary-
Microsoft Azure-security-capabilities. En dicha tabla, están desglosadas las categorías que aquí
se presentaron, en subcategorías, y a su vez, cada subcategoría tiene un hipervínculo a
documentación detallada de la misma.
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
Componentes de Azure
Solución Tecnológica
Facturación
Electrónica
Versión del documento: 01 - 11 -Página 11 de 28
Page 11
Arquitectura de Seguridad, Facturación Electrónica DIAN, Versión 0.1
Preparado por Sonia Bravo
"DIAN - Arquitectura de Seguridad en Azure.docx", Template Version 4
3 Seguridad en los modulos de la solucion
3.1.1 Interfaces Web aseguradas con ASP.NET Identity
ASP.NET Identity se encarga de almacenar las cuentas de usuario, el hash y el almacenamiento
de las contraseñas y la administración de roles para los usuarios. Es compatible con el inicio de
sesión de correo electrónico / contraseña, autenticación multifactorial, inicio de sesión social
con proveedores como Google y Facebook, así como la conexión a otros servicios mediante
protocolos como OAuth 2.0 y OpenID Connect.
Los aspectos mas importantes que se usaron y que conforman ASP.NET Identity son los
siguientes:
Role Provider: funcionalidad para gestionar roles para tus usuarios.
Claims Based: permite guardar información adicional a nuestro usuario autenticado.
Entre las características de seguridad que se desarrollaron se encuentran:
- Desinfección de entrada de datos para evitar ataques de inyección de SQL.
- Prevención de ataques de falsificación de petición en sitios cruzados(CSRF) en formularios
- Utilizando HTTPS (cifrado de conexión) para que los datos no puedan ser interceptados
mientras viaja a través de Internet
- Proporcionar a los usuarios una forma segura de iniciar sesión de modo que se garantizara la
seguridad integrada de datos del Muisca con el sistema.
Pruebas
https://gtpa-web-prototype-hab.azurewebsites.net/<script>_q_q=%27)(%27</script>
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
Componentes de Azure
Solución Tecnológica
Facturación
Electrónica
Versión del documento: 01 - 12 -Página 12 de 28
Page 12
Arquitectura de Seguridad, Facturación Electrónica DIAN, Versión 0.1
Preparado por Sonia Bravo
"DIAN - Arquitectura de Seguridad en Azure.docx", Template Version 4
3.1.2 Webservices asegurados con WS-Security
WS-Security define la forma de conseguir integridad, confidencialidad y autenticación en los
mensajes SOAP. Se realiza de la siguiente manera:
- La autenticación se ocupa de identificar al llamador.
- WS-Security utiliza tokens de seguridad para mantener esta información mediante un
encabezado de seguridad del mensaje SOAP.
- La integridad del mensaje se consigue mediante firmas digitales XML, que permiten
garantizar que no se han alterado partes del mensaje desde que lo firmó el originador.
- La confidencialidad del mensaje se basa en la especificación XML Encryption y garantiza
que sólo el destinatario o los destinatarios a quien va destinado el mensaje podrán
comprender las partes correspondientes.
- Se apoya en WS-Adressing para asegurar el no repudio.
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
Componentes de Azure
Solución Tecnológica
Facturación
Electrónica
Versión del documento: 01 - 13 -Página 13 de 28
Page 13
Arquitectura de Seguridad, Facturación Electrónica DIAN, Versión 0.1
Preparado por Sonia Bravo
"DIAN - Arquitectura de Seguridad en Azure.docx", Template Version 4
3.1.3 Validador de documentos y comunicación de facturas
auditable
Todos los procesos, estados y reglas se encuentran almacenados en distintas fuentes, ya sea
Azure Storages o CosmoDB que permiten tener un registro de todas las acciones, estados o
reglas con sus resultados por los que fue pasando un documento.
Para proteger los datos almacenados se utilizó encriptación de datos en las BD que usa el
sistema, las mismas son CosmosDb , SQL, Azure Storages
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
Componentes de Azure
Solución Tecnológica
Facturación
Electrónica
Versión del documento: 01 - 14 -Página 14 de 28
Page 14
Arquitectura de Seguridad, Facturación Electrónica DIAN, Versión 0.1
Preparado por Sonia Bravo
"DIAN - Arquitectura de Seguridad en Azure.docx", Template Version 4
4 Seguridad en los modulos de la solucion
Los usuarios externos o procesos que interactúan con la solución se consideran iniciadores, ya
que inician el flujo del proceso de la solución. Los componentes de la solución, protocolos,
funcionalidades y prácticas de seguridad asociados los iniciadores son los siguientes:
4.1.1 Azure Traffic Manager
Azure Traffic Manager, es un balanceador de carga basado en DNS que permite dentro de la
solución distribuir el tráfico de forma óptima hacia el resto de los servicios de Azure que
componen la solución de Facturación Electrónica.
Esto permite utilizar DNS para redirigir y monitorear las solicitudes de usuario hacia el punto de
conexión adecuado, de acuerdo con un método de enrutamiento. Adicionalmente, provee alta
disponibilidad al monitorear dichos puntos de conexión, de manera de que, al detectar el no
funcionamiento de alguno de ellos se gatille failover automático.
Traffic Manager proporciona una serie de métodos de enrutamiento del tráfico para satisfacer las
necesidades de distintas aplicaciones, la supervisión del estado de los puntos de conexión y la
conmutación automática por error.
Para más información, véase: https://docs.microsoft.com/en-us/azure/traffic-manager/traffic-
manager-overview
4.1.2 Azure App Service
Servicio Azure que hospeda front-end Web y API REST de la solución. Desde un punto de vista
de acceso a la aplicación se consideran las siguientes características:
Cumplimiento
Azure App Service cumple con certificaciones ISO, SOC y PCI.
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
Componentes de Azure
Solución Tecnológica
Facturación
Electrónica
Versión del documento: 01 - 15 -Página 15 de 28
Page 15
Arquitectura de Seguridad, Facturación Electrónica DIAN, Versión 0.1
Preparado por Sonia Bravo
"DIAN - Arquitectura de Seguridad en Azure.docx", Template Version 4
HTTPS y Certificados
La aplicación es accedida a través de internet utilizando el protocolo de comunicación HTTPS,
adicionalmente se utilizan SSL Certificados para autorizar el acceso desde el cliente web.
Autentificación y Autorización
Permite gestionar el proceso de autenticación y autorización a través de un módulo que se
ejecuta en el mismo ambiente aislado de la aplicación web, pero donde cada solicitud pasa a
través de este módulo antes de que el código de la aplicación puede acceder a él.
Este módulo permite gestionar la autenticación de usuarios, a través del proveedor definido;
valida, almacena y gestiona tokens; administra la sesión autenticada e inyecta encabezado de
identidad a la solicitud HTTPS.
4.1.3 Azure App Service
Servicio Azure que hospeda front-end Web y API REST de la solución. Desde un punto de vista
del flujo de información se consideren las siguientes características:
Claves y Secretos
La comunicación de claves y secretos, como por ejemplo cadenas de conexión, entre la
aplicación y otros recursos de Azure, permanecen siempre dentro de Azure y se mantienen
encriptados al ser almacenados.
Conexiones remotas
Todas las conexiones con herramientas de administración remota, tales como, Azure PowerShell,
la CLI de Azure, API REST y SDK de Azure, son cifradas.
Monitoreo de Aplicaciones
Azure App Service proporciona funcionalidades integradas de monitoreo que disponibilizan
métricas asociadas al uso de la aplicación, algunas de ellas son:
- Tiempo de Respuesta Promedio
- Cantidad media de memoria utilizada
- Número de sockets enlazados (llamadas API)
- Cantidad de CPU utilizada
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
Componentes de Azure
Solución Tecnológica
Facturación
Electrónica
Versión del documento: 01 - 16 -Página 16 de 28
Page 16
Arquitectura de Seguridad, Facturación Electrónica DIAN, Versión 0.1
Preparado por Sonia Bravo
"DIAN - Arquitectura de Seguridad en Azure.docx", Template Version 4
- Número de librerías (assemblies) cargadas
- Cantidad de ancho de banda consumido (entrante y saliente)
- Cantidad total de solicitudes HTTP por código de estado devuelto
- Velocidad a la que el proceso esta realizando operaciones de E/S
4.1.4 Azure Monitor
Azure Monitor permite recopilar, analizar y administrar datos asociados al rendimiento y
funcionalidad del código de las aplicaciones implementado en este caso en Azure App Service y
Azure Functions.
Monitoreo de Aplicaciones
Azure Monitor cuenta con varias herramientas y características que proporcionan información
sobre aplicaciones y recursos implementados, una de ellas es Application Insight.
Application Insight monitorea la disponibilidad, el rendimiento y el uso de las aplicaciones
implementadas. Algunos de los datos supervisados son:
- Tasas de solicitud, tiempos de respuestas y tasas de error
- Tasas de dependencias con otros servicios
- Excepciones
- Vistas de páginas y rendimiento de carga
- Llamadas AJAX
- Número de usuarios y sesiones
- Diagnóstico del host
- Métricas y eventos personalizados, escritas directamente en el código
4.2 Almacenamiento de Datos
4.2.1 Azure App Service
Servicio Azure que hospeda front-end Web y API REST de la solución. Desde un punto de vista
del almacenamiento de información se consideren las siguientes características:
Cifrado
El contenido de archivos de la web es almacenado en Azure Storage, el cual automáticamente
encripta el contenido en reposo.
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
Componentes de Azure
Solución Tecnológica
Facturación
Electrónica
Versión del documento: 01 - 17 -Página 17 de 28
Page 17
Arquitectura de Seguridad, Facturación Electrónica DIAN, Versión 0.1
Preparado por Sonia Bravo
"DIAN - Arquitectura de Seguridad en Azure.docx", Template Version 4
Los secretos y certificados son almacenados en Azure Key Vault (ver sección 4.2.2)
4.2.2 Azure Key Vault
Azure Key Vault, está orientado a almacenar y proteger; claves y secretos utilizadas por
aplicaciones y servicios en la nube. Permitiendo cifrar calves de autenticación, claves de cuentas
de almacenamiento, claves de cifrado de datos, archivos .pfx y contraseñas mediante el uso de
claves que están protegidas por módulos de seguridad de hardware (HSM).
Administración de certificados
Azure Key Vault como componente de la solución de Facturación Electrónica para la DIAN,
almacena y controla el acceso de forma segura a certificados, permitiendo administrar e
implementar certificados SSL/TLS para su uso con otros recursos de Azure.
Algunos de los atributos de seguridad asociados a este servicio son:
- Cifrado en reposo de los objetos almacenados
- Toda la comunicación se realiza a través de llamadas a la API cifradas (HTTPS)
- HSM de FIPS nivel 2 protege la clave, el certificado o el secreto almacenado
- La autenticación se realiza a través de Azure Active Directory
- La autorización se realiza a través de la directiva de acceso definida en Azure Key Vault
4.2.3 Azure SQL Database
Azure SQL Database es un servicio administrado de base de datos relacional, implementado
dentro de la solución de Facturación Electrónica de la DIAN como instancia de base de datos
única.
SQL Database comparte su código base con el motor de base de datos de Microsoft SQL Server.
Seguridad de Red
Para proteger los datos almacenados, los firewalls del servidor de base de datos impiden el
acceso de red a dicho servidor, hasta que se defina explícitamente la dirección IP o la red virtual
de Azure donde se originará el tráfico.
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
Componentes de Azure
Solución Tecnológica
Facturación
Electrónica
Versión del documento: 01 - 18 -Página 18 de 28
Page 18
Arquitectura de Seguridad, Facturación Electrónica DIAN, Versión 0.1
Preparado por Sonia Bravo
"DIAN - Arquitectura de Seguridad en Azure.docx", Template Version 4
Autenticación y Autorización
Azure SQL Database admite dos tipos de autenticación: Autenticación de SQL y Autenticación
de Azure Active Directory.
Los permisos se controlan mediante la creación de cuentas de usuarios y la asignación de
permisos a nivel de objetos SQL.
Adicionalmente, existe la funcionalidad de seguridad a nivel de fila, permitiendo controlar el
acceso a las filas de una tabla en función de las características del usuario que ejecuta la
consulta.
Auditoría
La funcionalidad de SQL Auditing permite hacer un seguimiento de las actividades realizadas
sobre la base de datos, para identificar posibles amenazas o infracciones de seguridad.
Protección Avanzada contra Amenazas
Existe la opción de habilitar de Protección Avanzada contra Amenazas para analizar los registros
de SQL y detectar comportamientos poco habituales o intentos de acceso no autorizados a la
base de datos.
Por medio de la creación de alertas es posible detectar actividades sospechosas, tales como,
inyección de código SQL, anomalías de acceso, infiltración de datos o ataques de fuerza bruta.
Cifrado
En SQL Database los datos en tránsito entre el cliente y el servidor son protegidos mediante el
cifrado SSL/TLS.
Para el cifrado de datos en reposo, todas las bases de datos recién creadas se cifran de forma
predeterminada, mediante un algoritmo de encriptación AES. Azure SQL Database administra el
mantenimiento y validez de los certificados, por lo que no se requiere ninguna acción por parte
del usuario.
Datos Sensibles
SQL Database ofrece características adicionales para proteger información confidencial
almacenada en la instancia. Por ejemplo, la funcionalidad de Always Encrypted permite cifrar
columnas específicas de manera de que aquellos usuarios que realizan tareas administrativas
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
Componentes de Azure
Solución Tecnológica
Facturación
Electrónica
Versión del documento: 01 - 19 -Página 19 de 28
Page 19
Arquitectura de Seguridad, Facturación Electrónica DIAN, Versión 0.1
Preparado por Sonia Bravo
"DIAN - Arquitectura de Seguridad en Azure.docx", Template Version 4
sobre la base de datos no tengan acceso a esta información, sino que estos datos solo se descifran
para el procesamiento por parte de las aplicaciones cliente con acceso a la clave de cifrado.
Por otro lado, la característica de enmascaramiento dinámico de datos permite ocultar datos
confidenciales del conjunto de datos del resultado de una consulta. Esta característica,
adicionalmente, proporciona recomendaciones y detecta automáticamente información
potencialmente confidencial.
Cumplimiento
Adicional a las características antes mencionadas, el servicio de Azure SQL Database forma parte
de auditorias regulares y ha obtenido certificaciones de diferentes entidades de normas de
cumplimientos.
4.2.4 Azure Cosmos DB
Azure Cosmos DB es un servicio de base de datos multi modelo que ofrece características de
escalado y rendimiento, para aplicaciones distribuidas que requieren baja latencia y alta
disponibilidad.
Seguridad de Red
Azure Cosmos DB controla el acceso a través de un firewall de entrada, donde es posible definir
directivas basadas en direcciones IP.
Autenticación y Autorización
Mediante la cuanta de administrador de Cosmos DB es posible gestionar la creación de usuarios
y permisos por base de datos o un recurso de aplicación (contenedores, documentos, datos
adjuntos, procedimientos almacenados, desencadenadores y UDF). Un token de recurso se
asocia con un permiso en una base de datos, el cual determina si el usuario tiene acceso.
Adicionalmente, Azure Cosmos DB utiliza el código de autenticación de mensajes basado en
hash (HMAC) para la autorización, donde cada solicitud se cifra mediante la clave de cuenta
secreta, y el hash codificado en base64.
Tambien es posible proporcionar o restringir el acceso mediante la integración con Azure Active
Directory.
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
Componentes de Azure
Solución Tecnológica
Facturación
Electrónica
Versión del documento: 01 - 20 -Página 20 de 28
Page 20
Arquitectura de Seguridad, Facturación Electrónica DIAN, Versión 0.1
Preparado por Sonia Bravo
"DIAN - Arquitectura de Seguridad en Azure.docx", Template Version 4
Replicación
Cosmos DB ofrece replicar los datos en cualquiera de los centros de datos de Azure, de manera
de contar con un escalado a nivel global y proporcionar un acceso de latencia baja a datos de
todo el mundo, de ser necesario.
Si se han replicado los datos en más de un centro de datos, Azure Cosmos DB sustituirá
automáticamente las operaciones en caso de que se desconecte un centro de datos.
Incluso dentro de un solo centro de datos, se replica automáticamente los datos para lograr una
alta disponibilidad. Esta replicación garantiza un 99,99% de SLA.
Cifrado
Todas las bases de datos de Cosmos DB se cifran en reposo de forma predeterminada, al igual
que los datos en tránsito.
Todas las comunicaciones con Azure Cosmos DB de cliente a servicio son compatibles con los
protocolos SSL o TLS 1.2.
Copias de Seguridad
Azure Cosmos DB realiza copias de seguridad frecuentes y automáticas, las cuales se almacenan
en una cuanta de almacenamiento con redundancia geográfica.
Dichas copias de seguridad se pueden utilizar para recuperar los datos que hayan sido
eliminados accidentalmente hasta unos 30 días después del suceso.
Datos Sensibles
Los datos confidenciales se pueden aislar en contenedores específicos y se puede limitar el
acceso de escritura/lectura o de solo lectura a usuarios concretos.
Auditoría
Existen registros de auditoría para monitorear la actividad normal o anómala de la cuenta. Es
posible ver que operaciones se realizaron en los recursos, quién inició la operación, cuando se
produjo, y su estado.
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
Componentes de Azure
Solución Tecnológica
Facturación
Electrónica
Versión del documento: 01 - 21 -Página 21 de 28
Page 21
Arquitectura de Seguridad, Facturación Electrónica DIAN, Versión 0.1
Preparado por Sonia Bravo
"DIAN - Arquitectura de Seguridad en Azure.docx", Template Version 4
Cumplimiento
Adicional a las características antes mencionadas, el servicio de Azure Cosmos DB forma parte de
auditorías regulares y ha obtenido certificaciones de diferentes entidades de normas de
cumplimientos.
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
Componentes de Azure
Solución Tecnológica
Facturación
Electrónica
Versión del documento: 01 - 22 -Página 22 de 28
Page 22
Arquitectura de Seguridad, Facturación Electrónica DIAN, Versión 0.1
Preparado por Sonia Bravo
"DIAN - Arquitectura de Seguridad en Azure.docx", Template Version 4
5 Seguridad a nivel de administración
5.1 Seguridad a nivel administrativo de Microsoft Azure
En la sección anterior, se compartieron los lineamientos generales de seguridad que ofrece
Microsoft Azure como parte del servicio que provee la plataforma. En esta sección se cubrirán los
aspectos y políticas se seguridades básicas que aplican para los usuarios que acceden y
administran la plataforma.
Para dar a entender a que se hace referencia con este tipo de usuarios, es importante aclarar los
tipos de usuarios que acceden a la plataforma. En términos generales, los usuarios que la acceden
se podrían categorizar en:
Consumidores: Son aquellos tipos de usuarios que utilizan 1 o más servicios desplegados
dentro de Microsoft Azure como usuario final. Estos usuarios suelen ser los clientes de las
entidades (para aplicaciones que están habilitadas hacia los usuarios finales como lo pueden ser
los portales informativos y transaccionales de las entidades, aplicaciones móviles) y los
empleados o contratistas de las entidades (para aplicaciones que están
habilitadas para usuarios internos, como los portales de elearning, de gestión de
archivos de la intranet, entre otros). Este tipo de usuario no requiere acceso a nivel
administrativo de Microsoft Azure y por ende, los lineamientos de seguridad que aplican
para ellos están asociados a lo que se describirá en la siguiente sección.
Administradores de los servicios: Son aquellos usuarios que administran 1 o más
componentes desplegados dentro de Microsoft Azure. Por ejemplo, usuarios del equipo
de infraestructura que administran las máquinas virtuales habilitadas en Microsoft Azure,
los desarrolladores que acceden a los despliegues de las aplicaciones móviles o páginas
web habilitadas dentro de Microsoft Azure, o las DBA que deben administrar bases de
datos habilitadas en Microsoft Azure. Este tipo de usuario podrá considerar los
lineamientos que están descritos en esta sección, siempre y cuando dichos servicios
(máquinas virtuales, bases de datos, servicios de despliegue de aplicaciones) estén
integrados a nivel de autenticación con el directorio Activo de Microsoft Azure (el cual se
detallará a lo largo de esta sección). En caso de no estar integrado el servicio con el
directorio activo de Microsoft Azure, este tipo de usuario debe considerar los
lineamientos que se describirán en la siguiente sección.
Administradores de la plataforma: Son aquellos usuarios que administran los
componentes desplegados en Microsoft Azure. Dentro de sus funciones están las de
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
Componentes de Azure
Solución Tecnológica
Facturación
Electrónica
Versión del documento: 01 - 23 -Página 23 de 28
Page 23
Arquitectura de Seguridad, Facturación Electrónica DIAN, Versión 0.1
Preparado por Sonia Bravo
"DIAN - Arquitectura de Seguridad en Azure.docx", Template Version 4
crear, eliminar, y actualizar los despliegues de los servicios y de monitorear su correcto
funcionamiento. Este es el grupo de usuarios sobre el que está enfocado
principalmente la sección que se desarrolla a continuación.
Para la administración de la plataforma, Microsoft Azure habilita 3 mecanismos para que estos
usuarios puedan realizar las labores propias de la gestión:
Portal de Microsoft Azure: Tal y como se hace referencia en el documento de Microsoft
Azure – Gobierno 100, la plataforma cuenta con una interfaz gráfica web, conocida como
el Portal de Microsoft Azure. Esta puede ser accedida a través de la url
https://portal.Microsoft Azure.com y en ella (dependiendo del nivel de acceso que
tienen) podrán visualizar los recursos desplegados y realizar las labores administrativas.
El portal de Microsoft Azure es recomendado para realizar labores de administración y
seguimiento de la salud y estado de los recursos desplegados, para hacer despliegues
sencillos, o para usuarios que aún no tengan conocimiento de las otras dos herramientas
de gestión.
PowerShell: Microsoft Azure habilita un paquete de extensión sobre Microsoft Powershell, que
permite a través de línea de comando, ejecutar labores administrativas sobre la plataforma. Esta
herramienta de gestión es recomendada para aquellos usuarios que estén familiarizados con
Powershell, y requieran realizar aprovisionamiento o borrado de despliegues y servicios a gran
escala y con una aproximación mucho más automatizada y ágil que la que ofrece el portal.
• Command Line: Microsoft Azure habilita un paquete de extensión sobre Microsoft
Command Line (CLI), que permite ejecutar labores administrativas sobre la plataforma. Esta
herramienta de gestión es recomendada para aquellos usuarios que estén familiarizados con
Linux Shell o Microsoft Command Line, y requieran realizar aprovisionamiento o borrado de
despliegues y servicios a gran escala y con una aproximación mucho más automatizada y ágil
que la que ofrece el portal.
Ahora bien, la capacidad administrativa que cada usuario tendrá, dependerá del acceso que
tenga a las suscripciones de la entidad (El concepto de suscripciones se explica en la sección 4,
del documento Microsoft Azure – Gobierno 100) ya que estas son las que agrupan los servicios
desplegados dentro de la plataforma para cada entidad (cada entidad puede definir cuantas
suscripciones va a habilitar, siguiendo las recomendaciones de los estándares de nomenclatura
descritos en la sección 3 del presente documento, y sobre cada suscripción, puede brindar
acceso a 1 o más usuarios administrativos). De esta forma, Microsoft Azure permite separar las
capacidades administrativas que va a tener cada usuario según el tipo de ambiente o tipo de
despliegue que sobre esta se realicen.
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
Componentes de Azure
Solución Tecnológica
Facturación
Electrónica
Versión del documento: 01 - 24 -Página 24 de 28
Page 24
Arquitectura de Seguridad, Facturación Electrónica DIAN, Versión 0.1
Preparado por Sonia Bravo
"DIAN - Arquitectura de Seguridad en Azure.docx", Template Version 4
Para habilitar todas estas capacidades de administración de usuarios y privilegios, Microsoft
Azure integra dentro del acceso habilitado para cada entidad, un Tenant de Microsoft Azure
Active Directory, tal y como se estipula en la sección “Cuentas de usuario” de la documentación
oficial de Microsoft: https://docs.microsoft.com/es-es/office365/enterprise/subscriptions-
licenses-accounts-and-tenants-for-microsoft-cloud-offerings, tal y como se cita a continuación:
Cuentas de usuario
Las cuentas de usuario para todas las ofertas de la nube de Microsoft se almacenan en un espacio
empresarial de Microsoft Azure Active Directory (AD), que contiene cuentas de usuario y grupos. Un
espacio empresarial de Microsoft Azure AD se puede sincronizar con las cuentas existentes de
Windows Server AD con Microsoft Azure AD Connect, un servicio basado en Windows Server. Esto
se conoce cómo sincronización de directorios (DirSync).
En la ilustración 3, se muestra un ejemplo de varias suscripciones de una organización con un
espacio empresarial de Microsoft Azure AD común que contiene las cuentas de la organización.”
Fragmento 1. Cuentas de Usuario. Tomado de la documentación oficial de Microsoft Cloud
Es así como, dentro de Microsoft Azure, la seguridad a nivel administrativo está relacionada con
las capacidades de seguridad y autenticación que ofrece Microsoft Azure Active Directory. Aunque
el detalle de las capacidades completas de este servicio están descritas en la documentación
oficial (disponible en https://docs.microsoft.com/es-es/Microsoft Azure/active-directory/active-
directory-whatis), en esta sección se sintetizarán dos capacidades fundamentales, relacionadas
con el otorgamiento de los niveles de acceso a los recursos, grupos de recursos y la gestión sobre
los mismos. Dichas capacidades son:
Control de acceso basado en rol
Directivas y Auditoría
En las dos subsecciones que se desarrollarán a continuación, se describirán dichas características.
5.2 Control de acceso basado en rol
Microsoft Azure Active Directory define los accesos que tendrán los usuarios administradores de
la plataforma a través de un esquema de perfiles basado en roles. A través de este esquema, cada
usuario de Microsoft Azure puede tener asignado uno o varios roles sobre la suscripción (la cual
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
Componentes de Azure
Solución Tecnológica
Facturación
Electrónica
Versión del documento: 01 - 25 -Página 25 de 28
Page 25
Arquitectura de Seguridad, Facturación Electrónica DIAN, Versión 0.1
Preparado por Sonia Bravo
"DIAN - Arquitectura de Seguridad en Azure.docx", Template Version 4
extiende dicho rol sobre todos los grupos de recursos y los recursos asociados a la suscripción),
o sobre uno o varios grupos de recursos específico (extendiendo dicho rol sobre los recursos
asociados a ese grupo) o sobre uno o varios recursos específicos.
Imagen 1. Jerarquía de privilegios en Microsoft Azure
Para facilitar dicha asignación, Microsoft Azure habilita un grupo de roles preconfigurados que
sirven de línea base para la asignación de privilegios a los usuarios administradores, dichos roles
están listados en el siguiente link: https://docs.microsoft.com/es-es/Microsoft Azure/role-based-
access-control/built-in-roles, donde hay más de 50 roles documentados y listos para utilizar. De
esa lista, se resaltan los 3 roles más utilizados de la plataforma como base de administración:
Propietario/Owner: Permite administrarlo todo, incluso el acceso a los recursos.
Contribuyente/Contributor: Permite administrarlo todo, excepto el acceso a los recursos.
Lector/Reader: Permite ver todo el contenido, pero no realizar cambios.
Adicionalmente, si las entidades optan por generar roles personalizados lo pueden hacer,
siguiendo las indicaciones descritas en el siguiente link: https://docs.microsoft.com/es-
es/Microsoft Azure/role-based-access-control/custom-roles.
Finalmente, la asignación de roles a los usuarios se puede realizar siguiendo los pasos que se
describen a continuación: https://docs.microsoft.com/es-es/Microsoft Azure/billing/billing-add-
change-Microsoft Azure-subscription-administrator.
Suscripción
Grupo de Recursos
Recurso
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
Componentes de Azure
Solución Tecnológica
Facturación
Electrónica
Versión del documento: 01 - 26 -Página 26 de 28
Page 26
Arquitectura de Seguridad, Facturación Electrónica DIAN, Versión 0.1
Preparado por Sonia Bravo
"DIAN - Arquitectura de Seguridad en Azure.docx", Template Version 4
5.3 Directivas y Auditoría
Las directivas son una funcionalidad y pilar fundamental que permiten gestionar los riesgos en
Microsoft Azure. Corresponden a un sistema de permisos para controlar las acciones sobre los
recursos y grupos de recursos. El ámbito de acción puede ser: suscripción, grupo de recursos o
recurso.
Las directivas tienen varias acciones y son las siguientes:
Denegar: bloquea la solicitud del recurso
Auditar: permite la solicitud, pero agrega una línea de registro de actividad el cual puede
ser usado para generar alertas o desencadenar acciones por medio de runbooks
Anexar: agrega información específica al recurso con un valor por defecto en caso de que
el recurso no tenga una etiqueta. Un ejemplo muy útil es agregar al recurso la etiqueta
CostCenter:Unknown (valor por defecto)
Algunos usos comunes están relacionados con:
Soberanía de datos y cumplimiento geográfico: determinar en cuales regiones de
Microsoft Azure se permiten crear recursos
Administración de costos: determinar cuáles recursos no se pueden crear por el costo que
pueden generar en caso de que se habiliten por error. Por ejemplo: no permitir crear
recursos de máquinas virtuales correspondientes a la familia G de High Performance
Computing (HPC), no permitir crear recursos de HDInsigths como clusters para proyectos
de BigData.
Gobierno predeterminado con etiquetas obligatorias: Asegurarse que los recursos tengan
como mínimo las siguientes etiquetas: Department, ManagedBy (Owner), Environment,
BillTo
En lo referente a Auditoría, se captura la actividad de los usuarios aprovechando que la mayoría
de los tipos de recursos de Microsoft Azure crean registros de diagnóstico, los cuales se pueden
analizar con una herramienta de registro e incluso con el servicio de Microsoft Azure Log Analytics.
Los registros de auditoría constituyen una herramienta de diagnóstico clave pues permiten
determinar las operaciones que se realizaron y los usuarios responsables de tales acciones.
Para más información de las directivas y auditoría, véase la documentación oficial disponible en:
https://docs.microsoft.com/es-es/Microsoft Azure/Microsoft Azure-policy/
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
Componentes de Azure
Solución Tecnológica
Facturación
Electrónica
Versión del documento: 01 - 27 -Página 27 de 28
Page 27
Arquitectura de Seguridad, Facturación Electrónica DIAN, Versión 0.1
Preparado por Sonia Bravo
"DIAN - Arquitectura de Seguridad en Azure.docx", Template Version 4
5.4 Lineamientos generales de seguridad en los
despliegues que se realicen en Microsoft Azure
Para finalizar con este capítulo, se realizará una síntesis de las capacidades de seguridad que
habilita Microsoft Azure para que se tomen en consideración durante el diseño y habilitación de
despliegues de servicios en la plataforma. Es importante resaltar que:
Muchas de estas capacidades son servicios propios de la plataforma.
Algunas de estas capacidades generan consumo/utilización, y otras son de uso gratuito.
En línea con lo anterior, es importante realizar la estimación de estos servicios durante el
proceso de construcción de la arquitectura, donde el equipo de Microsoft-Vision puede
apoyar a las entidades (Tal y como se describió en el documento de Microsoft Azure –
Gobierno 100)
Dependiendo cada escenario de implementación, se debe evaluar que capacidades se
deben tener en cuenta, y cuáles no. No todas las capacidades deben ser utilizadas en todo
despliegue.
En esta sección solo se sintetizarán las capacidades, el detalle de cada capacidad o servicio
se puede encontrar y buscar en la documentación oficial de Microsoft Azure.
La síntesis aquí presentada, está basado en el resumen de capacidades de seguridad
descrito en: https://docs.microsoft.com/es-es/Microsoft Azure/security/Microsoft Azure-
security#summary-Microsoft Azure-security-capabilities
5.4.1 Capacidades de seguridad para la administración y monitoreo
de la operación.
En esta sección se sintetiza la información acerca de los servicios y capacidades que habilita
Microsoft Azure para monitorear la operación de los servicios desplegados de la plataforma, e
identificar posibles brechas u oportunidades de mejora de seguridad.
5.4.1.1 Panel Seguridad y auditoría de Operations Management Suite - OMS
La solución Seguridad y auditoría de OMS proporciona una vista completa de la plataforma en
operación de Microsoft Azure que tenga habilitado este servicio. Esta vista cuenta con información
para el equipo de seguridad de TI, habilitando con consultas de búsqueda integradas para
problemas importantes que requieran atención y un panel de seguridad y auditoría, que
proporciona información de alto nivel sobre el estado de seguridad de los equipos. También
incluye la capacidad de ver todos los eventos de las últimas 24 horas, 7 días o cualquier otro
intervalo personalizado.
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
Componentes de Azure
Solución Tecnológica
Facturación
Electrónica
Versión del documento: 01 - 28 -Página 28 de 28
Page 28
Arquitectura de Seguridad, Facturación Electrónica DIAN, Versión 0.1
Preparado por Sonia Bravo
"DIAN - Arquitectura de Seguridad en Azure.docx", Template Version 4
Adicionalmente, esta solución permite configurar políticas de seguridad y cumplimiento para
llevar a cabo acciones específicas y automatizadas cuando se detecte un evento concreto.
Para mayor información, véase: https://docs.microsoft.com/es-es/Microsoft Azure/operations-
management-suite/operations-management-suite-overview
top related