sistema integral para el control de cuentas de dominio

23
SISTEMA INTEGRAL PARA EL CONTROL DE CUENTAS DE DOMINIO PROVINCIAL Autores: Lic. Miguel José Tamayo Yero Lic. Juan Javier Lemes Báez Ing. Teudis Naranjo Ortiz

Upload: others

Post on 05-Jul-2022

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: SISTEMA INTEGRAL PARA EL CONTROL DE CUENTAS DE DOMINIO

SISTEMA INTEGRAL PARA EL CONTROL DE CUENTAS DE DOMINIO PROVINCIAL

Autores:

Lic. Miguel José Tamayo Yero

Lic. Juan Javier Lemes Báez

Ing. Teudis Naranjo Ortiz

Page 2: SISTEMA INTEGRAL PARA EL CONTROL DE CUENTAS DE DOMINIO

[RESUMEN]

Resumen

El nodo provincial de Infomed de la provincia Granma se basa fundamentalmente en la

prestación de servicios informáticos y conectividad a las instituciones y usuarios de la red

de salud de toda la provincia. Durante un estudio realizado se detectaron un grupo de

limitaciones presentadas por los usuarios esencialmente en la utilización y soporte del

servicio de correo electrónico.

Hasta ese momento se estaba utilizando la herramienta vexim que permite la

configuración de los diferentes dominios virtuales de correo, creación, modificación y

eliminación de cuentas fundamentalmente. Sin embargo no cumplía con las necesidades

existentes para poder satisfacer a los usuarios de la red provincial.

En aras de resolver la situación existente surge la idea de implementar un sistema de

trabajo con una aplicación accesible desde la red provincial que permitiera la

administración de usuarios por unidades del dominio provincial de correo

“grannet.grm.sld.cu”, similar al “Manager de Infomed”, aunque incorporándole nuevas

funcionalidades y facilidades de búsqueda y actualización.

En este trabajo se presenta una solución para mejorar la utilización y soporte del correo

electrónico, donde se gana en organización y control. De esta forma se crea una

aplicación web con ayuda de tecnologías y software libre, para lograr darle solución al

problema que se plantea.

Page 3: SISTEMA INTEGRAL PARA EL CONTROL DE CUENTAS DE DOMINIO

[TABLA DE CONTENIDOS]

1

INTRODUCCIÓN .............................................................................................................. 2

FUNDAMENTACIÓN TEÓRICA. ..................................................................................... 5

Lenguajes de Programación ..................................................................................... 5

Gestor de Base de Datos ........................................................................................... 6

Frameworks de Desarrollo......................................................................................... 7

CARACTERÍSTICAS DEL SISTEMA.............................................................................. 9

CONCLUSIONES ........................................................................................................... 11

RECOMENDACIONES .................................................................................................. 12

REFERENCIAS BIBLIOGRÁFICAS ............................................................................. 13

ANEXOS ......................................................................................................................... 14

Anexo 1. Autenticación del sistema. ...................................................................... 14

Anexo 2. Datos nivel de Usuario............................................................................. 14

Anexo 3. Cambio de contraseña. ............................................................................ 15

Anexo 4. Detalles de Usuario. ................................................................................. 15

Anexo 5. Nivel de Representante............................................................................ 16

Anexo 6. Gestionar Usuarios en nivel Representante. ........................................ 16

Anexo 7. Modificar Usuarios en nivel Representante. ......................................... 17

Anexo 8. Subir Contrato en nivel Representante. ................................................ 17

Anexo 9. Buscador en nivel Representante. ......................................................... 17

Anexo 10. Distribución de usuarios por unidades en nivel Representante. ..... 18

Anexo 11. Nivel Administrador. .............................................................................. 18

Anexo 12. Crear cuenta en nivel de Administrador. ............................................. 19

Anexo 13. Gestionar representantes en nivel Administrador. ............................ 19

Anexo 14. Gestionar Unidades en nivel Administrador. ...................................... 20

Anexo 15. Crear Unidades en nivel Administrador. ............................................. 20

Anexo 16. Mantenimiento en nivel Administrador................................................ 20

Anexo 17. Nivel SuperAdmin................................................................................... 21

Anexo 18. Buscador de Acciones de la bitácora SuperAdmin. .......................... 21

Page 4: SISTEMA INTEGRAL PARA EL CONTROL DE CUENTAS DE DOMINIO

INTRODUCCIÓN

2

INTRODUCCIÓN

El nodo provincial de Infomed de la provincia Granma desde sus inicios radicó en la

Filial de Ciencias Médicas en Manzanillo (actual Universidad de Ciencias Médicas

UCMG), asumiendo esta responsabilidad los administradores de la red de la filial. A

medida que la red de Infomed se fue extendiendo tanto en servicios como en usuarios

mantener esta actividad funcionando a toda su capacidad se hacía más engorrosa,

dificultándose en muchos casos la atención oportuna y efic iente a muchos de estos

servicios.

A raíz de estos antecedentes se fueron arrojando a la luz las insatisfacciones de

muchos de los usuarios que utilizan principalmente el servicio de correo electrónico.

Con motivo de estas acciones y otras se decide trasladar el nodo provincial para la

sede del Centro Provincial de Información radicada en Bayamo capital provincial y la

incorporación de nuevo personal para la atención a usuarios y administración de los

servicios del nodo.

El nodo se basa fundamentalmente en la prestación de servicios informáticos y

conectividad a las instituciones y usuarios de la red de salud de toda la provincia.

Los servicios fundamentales que se brindan son:

1. FTP

2. DNS

3. HostingWeb

4. Mensajería Instantánea (Jabber)

5. Correo Electrónico

6. RELAY SMTP para subdominios

Una vez establecido el nodo en esta ubicación se realizaron varios estudios de los

servicios y entrevistas a usuarios para conocer el nivel de insatisfacción de estos y en

donde se encontraban focalizados.

Esto arrojo una serie de limitaciones presentadas por los usuarios esencialmente en la

utilización y soporte del servicio de correo electrónico.

Page 5: SISTEMA INTEGRAL PARA EL CONTROL DE CUENTAS DE DOMINIO

INTRODUCCIÓN

3

- LIMITACIONES EN EL SERVICIO DE CORREO ELECTRONICO.

1. Inexistencia de un sistema o mecanismo para el cambio de contraseña.

(esto se hacía vía teléfono desde toda la provincia al nodo).

2. Cualquier trámite, gestión de actualización o cambio se dificultaba porque el

usuario tenía que desplazarse hasta el nodo o enviar las solicitudes con

mensajeros o alguien que fuera al nodo.

3. Dificultad en la localización del usuario para darle a conocer su usuario y

contraseña en los casos de que ya existiera el usuario propuesto o en el

caso de omisión del usuario.

4. La base de datos no recogía mucha de la información que aparece en la

planilla de contrato, y otras necesarias para el correcto control del servicio,

ej: fecha de creación, datos del creador de la cuenta, sexo, etc.

5. La atención a usuarios y el soporte a los servicios estaba limitada a días y

horarios específicos en la semana (Martes y Jueves de 8:00AM a 12:00M y

de 2:00 y 5:00).

6. Todos los buzones de correo se creaban con alcance internacional

independientemente de ser privados o institucionales.

7. El no conocimiento de cuando un usuario era baja del sistema de salud.

Lo que trajo como consecuencia:

Descontrol.

Creación de buzones dobles.

Perdida de las planillas en el tramite desde el usuario hasta el nodo.

Entrega en mal estado de las solicitudes de creación de cuentas.

Solicitudes mal elaboradas o con falta de muchos de los datos requeridos.

Vulnerabilidad de los buzones en cuanto al cambio de contraseña.

Envió de correos electrónicos a dominios internacionales de cuentas

institucionales para asuntos personales.

Page 6: SISTEMA INTEGRAL PARA EL CONTROL DE CUENTAS DE DOMINIO

INTRODUCCIÓN

4

Hasta ese momento se estaba utilizando la herramienta vexim que permite la

configuración de los diferentes dominios virtuales de correo, creación, modificación y

eliminación de cuentas fundamentalmente. Sin embargo no cumplía con las

necesidades existentes para poder satisfacer a los usuarios de la red provincial.

Teniendo en cuenta todo esto y la información brindada por la directora del Centro

Provincial de Información sobre el proceso de implementación de representantes de

Infomed, pensado principalmente para evitar situaciones como estas.

En aras de resolver el problema planteado, se define como Objetivo General

desarrollar una aplicación web que permita la administración de usuarios por entidades

del dominio provincial de correo “grannet.grm.sld.cu”.

Para complementar lo formulado en el objetivo general se trazaron los siguientes

Objetivos Específicos:

Definir una arquitectura que corresponda a las necesidades del sistema a

implementar.

Identificar las herramientas necesarias para desarrollar la aplicación web.

Integrar componentes que permitan dar cumplimiento a los requisitos

planteados.

Page 7: SISTEMA INTEGRAL PARA EL CONTROL DE CUENTAS DE DOMINIO

FUNDAMENTACIÓN TEÓRICA

5

FUNDAMENTACIÓN TEÓRICA.

Para la realización de la aplicación se creó un grupo de trabajo integrado por los

administradores del nodo, el especialista principal y el programador del Centro

Provincial de Higiene.

En el diseño se tuvieron en cuenta la utilización de tecnologías y software libre,

buscando una homogeneidad con las implementadas por Infomed.

Para el desarrollo de la aplicación se tuvieron en cuentas los siguientes aspectos

Lenguajes de Programación.

PHP 5.

Java Script.

PHP

PHP es un lenguaje de script interpretado que se ejecuta del lado del servidor,

utilizado para la generación de páginas web dinámicas, embebidas en páginas HTML

y ejecutadas en el servidor. PHP no necesita ser compilado para ejecutarse. Para su

funcionamiento necesita tener instalado Apache o IIS con las librerías de PHP. La

mayor parte de su sintaxis ha sido tomada de C, Java y Perl con algunas

características específicas. Los archivos cuentan con la extensión (php)[1].

Una de sus características más potentes es su soporte para gran cantidad de bases

de datos. Entre su soporte pueden mencionarse InterBase, mSQL, MySQL, Oracle,

Informix, PostgreSQL, entre otras. PHP también ofrece la integración con varias

bibliotecas externas, que permiten que el desarrollador haga casi cualquier cosa desde

generar documentos en formato “pdf” hasta analizar código XML[2].

Como producto de código abierto, PHP goza de la ayuda de un gran grupo de

programadores, permitiendo que los fallos de funcionamiento se encuentren y se

reparen rápidamente. También, es utilizado en aplicaciones web relacionadas por

algunas de las organizaciones más prominentes tales como Mitsubishi, Redhat,

DerSpiegel, MP3-Lycos, Ericsson y NASA[2].

Page 8: SISTEMA INTEGRAL PARA EL CONTROL DE CUENTAS DE DOMINIO

FUNDAMENTACIÓN TEÓRICA

6

JavaScript

JavaScript es un lenguaje de programación que se utiliza principalmente para crear

páginas web dinámicas.

Una página web dinámica es aquella que incorpora efectos como aparición y

desaparición de texto, animaciones, acciones que se activan al pulsar botones u otros

elementos y ventanas con mensajes de aviso al usuario.

Técnicamente, JavaScript es un lenguaje de programación interpretado, por lo que no

es necesario compilar los programas para ejecutarlos. En otras palabras, los

programas escritos con JavaScript se pueden probar directamente en cualquier

navegador sin necesidad de procesos intermedios[3].

Gestor de Base de Datos.

Mysql

Sistema de Gestión de Bases de Datos (SGBD).

Consiste en un conjunto de programas, procedimientos y lenguajes que nos

proporcionan las herramientas necesarias para trabajar con una base de datos.

Incorporar una serie de funciones que nos permita definir los registros, sus campos,

sus relaciones, insertar, suprimir, modificar y consultar los datos. (Access, SQLServer,

Informix, etc.)[4]

MySQL

Características de MySQL

Aprovecha la potencia de sistemas multiprocesadores, gracias a su

implementación multihilo.

Soporta gran cantidad de tipos de datos para las columnas.

Dispone de APIs en gran cantidad de lenguajes (C, C++, Java, PHP,

etc.).

Gran portabilidad entre sistemas.

Gestión de usuarios y contraseñas, manteniendo un muy buen nivel de

seguridad en los datos.

Page 9: SISTEMA INTEGRAL PARA EL CONTROL DE CUENTAS DE DOMINIO

FUNDAMENTACIÓN TEÓRICA

7

Frameworks de Desarrollo

Codeigniter versión 1.7.2

JQuery versión 1.5

¿Qué es un Framework?

El término framework, se refiriere a una estructura software compuesta de

componentes personalizables e intercambiables para el desarrollo de una aplicación.

“Un frameworkweb, por tanto, se puede definir como un conjunto de componentes (por

ejemplo: clases en java y descriptores y archivos de configuración en XML), un diseño

reutilizable que facilita y agiliza el desarrollo de sistemas web.”[5]

Los objetivos principales que persigue un framework son: acelerar el proceso de

desarrollo, reutilizar código ya existente y promover buenas prácticas de desarrollo,

como el uso de patrones.

La mayoría de los frameworksweb implementan el patrón Modelo-Vista-Controlador

(MVC), el cual permite una arquitectura que ofrece mayor interactividad con los

usuarios. Este patrón organiza la aplicación en tres capas, la primera capa es un

modelo que representa los datos de la aplicación y sus reglas de negocio, la segunda

capa es un conjunto de vistas que representa los formularios de entrada y salida de

información, la tercera capa conocida como controladora es la que procesa las

peticiones de los usuarios y controla el flujo de ejecución del sistema.

Codeigniter

Características generales.

Versatilidad: Es capaz de trabajar la mayoría de los entornos o servidores, incluso en

sistemas de alojamiento compartido, donde sólo tenemos un acceso por FTP para

enviar los archivos al servidor y donde no tenemos acceso a su configuración.

Compatibilidad: Es compatible con cualquier versión PHP, lo que hace que se pueda

utilizar en cualquier servidor.

Facilidad de instalación: Su configuración se realiza con apenas la edición de un

archivo, donde debemos escribir cosas como el acceso a la base de datos.

Page 10: SISTEMA INTEGRAL PARA EL CONTROL DE CUENTAS DE DOMINIO

FUNDAMENTACIÓN TEÓRICA

8

Ligereza: El núcleo es bastante ligero, lo que permite que el servidor no se

sobrecargue interpretando o ejecutando grandes porciones de código. La mayoría de

los módulos o clases que ofrece se pueden cargar de manera opcional, sólo cuando

se van a utilizar realmente.

Documentación: La documentación es fácil de seguir y de asimilar, porque está

escrita en modo de tutorial. Esto no facilita mucho la referencia rápida, cuando ya

sabemos acerca del framework y queremos consultar sobre una función o un método

en concreto.

También se puede decir que ha recibido los elogios de Rasmus Lerdorf1quien

mencionó que le gustaba Codeigniter porque es rápido, pequeño y el que menos se

parece a un framework.

JQquery

Características generales.

jQuery es un framework para el lenguaje Javascript, que nos permiten programar sin

preocuparnos por los diferentes navegadores, ya que funciona de exacta forma en

todas las plataformas más habituales. Este framework, nos ofrece una infraestructura

con la que tendremos mucha mayor facilidad para la creación de aplicaciones

complejas del lado del cliente. Por ejemplo, con jQuery obtendremos ayuda en la

creación de interfaces de usuario, efectos dinámicos, aplicaciones que hacen uso de

Ajax, etc. Además, todas estas ventajas que sin duda son muy de agradecer, con

jQuery las obtenemos de manera gratuita, ya que el framework tiene licencia para uso

en cualquier tipo de plataforma, personal o comercial. Para ello simplemente

tendremos que incluir en nuestras páginas un script Javascript que contiene el código

de jQuery, que podemos descargar de la propia página web del producto y comenzar a

utilizar el framework.

1 Rasmus Lerdorf creador del lenguaje PHP.

Page 11: SISTEMA INTEGRAL PARA EL CONTROL DE CUENTAS DE DOMINIO

CARACTERISTICAS DEL SISTEMA

9

Características del Sistema.

La aplicación cuenta con 4 niveles de acceso, Usuario, Representante, Administrador

y SuperAdmin donde cada uno para poder acceder al sistema necesita introducir

usuario y contraseña (Anexo 1) independientemente del rol que tenga.

Nivel Usuario: a este nivel solo es visible la información referente al usuario

autenticado en el sistema (Anexo 2) y la herramienta para el cambio de contraseña

(Anexo 3).

En este nivel también se tuvo en cuenta la implementación de una herramienta que

permitiera al usuario actualizar o rectificar su información personal partiendo de los

datos plasmados en el contrato, por defecto esta opción aparece deshabilitada

(Anexo 4).

Nivel Representante: a este nivel solo es visible la información correspondiente a

todos los usuarios pertenecientes a la unidad o institución del representante. Permite

buscar, modificar, listar y exportar los usuarios, así como una gráfica con los usuarios

por unidad o unidades del representante (Anexo 5,6, 7,8, 9 y 10).

Nivel Administrador: a este nivel es visible toda la información referente a los

usuarios de dominio, unidades, representantes y la creación de nuevas cuentas.

En la pantalla principal se incluyen las opciones de Gestionar Usuarios y Buscador,

con todas sus opciones, Modificar, Detalles y Contratos, igual que en el Nivel

Representante, además se incluyen las opciones de “Gestionar Representantes”,

“Mantenimiento”, “Gestionar Unidades”, “Crear Cuenta”, también se incluye una gráfica

de cantidad de usuarios por municipios (Anexo 11).

Crear Cuenta: por medio de esta opción se puede realizar la creación de las cuentas

de correos o buzones del dominio (Anexo 12). Se han incrementado un grupo de

parámetros para aumentar el nivel de control sobre el usuario.

También se insertan de forma automática y transparente los datos del administrador

que crea el usuario, la fecha, hora y dirección IP, llevándose una bitácora con todos

estos datos de forman que puedan servir como registros auditables en caso que fuera

necesario

Page 12: SISTEMA INTEGRAL PARA EL CONTROL DE CUENTAS DE DOMINIO

CARACTERISTICAS DEL SISTEMA

10

Gestionar Representante: Permite tener todos los datos referentes a los todos los

representantes de las diferentes entidades de Salud de la provincia de Granma,

incluye una opción “Asignar Unidades” para asignar unidades en los casos de que

varias unidades sean representadas por el mismo representante (Anexo 13).

Gestionar Unidades: listados con las opciones para la creación, modificación y

eliminación de unidades (Anexo 14 y 15).

Mantenimiento: herramienta para la detección de usuarios con más de un buzón,

cuenta con las opciones para ver los Detalles del Usuario, Eliminar y Enviar Correo a

todos los buzones detectados (Anexo 16).

Nivel SuperAdmin: este nivel contiene todas las opciones del Nivel Administrador

más la opción “Historial”, que permite visualizar todas las acciones realizadas por los

administradores, en cuanto a inicio y cierre de sesión, creación, eliminación y

actualización de cualquiera de los usuarios del dominio (Anexo 17 y 18).

Page 13: SISTEMA INTEGRAL PARA EL CONTROL DE CUENTAS DE DOMINIO

CONCLUSIONES

11

CONCLUSIONES

Con este trabajo se logra crear una herramienta capaz de satisfacer las necesidades

existentes por parte de los usuarios de la red provincial de salud, específicamente en

la utilización del servicio de correo. Podemos decir que el nodo provincial ganó en

organización ya que dicho sistema permite el control de buzones repetidos, la

digitalización de los contratos, la creación ,modificación y eliminación de cuentas de

correo tanto privadas como institucionales, el cambio de contraseñas, así como

también la creación de los representantes por entidades, es importante destacar que

con esta funcionalidad se garantiza el control de los usuarios por las diferentes

entidades y de esta forma se tiene conocimiento cuando un usuario resultó baja del

sistema de salud .

Page 14: SISTEMA INTEGRAL PARA EL CONTROL DE CUENTAS DE DOMINIO

RECOMENDACIONES

12

RECOMENDACIONES

Como resultado del presente trabajo se obtuvo un sistema informático que aunque

resuelve la problemática planteada inicialmente, puede ser refinado con el objetivo de

lograr un incremento en su calidad, a continuación se exponen algunas

recomendaciones a tener en cuenta para futuras versiones del producto:

Integrar otros dominios virtuales de correo al sistema.

Analizar después de un período de tiempo el impacto que ha tenido el software

en la red provincial.

Page 15: SISTEMA INTEGRAL PARA EL CONTROL DE CUENTAS DE DOMINIO

REFERENCIAS BILIOGRÁFICAS

13

REFERENCIAS BIBLIOGRÁFICAS 1. Valdés, Damián Pérez. Maestros del web. [En línea] 19 de Julio de 1997. [Citado el: 7 de

junio de 2011.] http://www.maestrosdelweb.com/principiantes/los-diferentes-lenguajes-

de-programacion-para-la-web/.

2. S, Christian Van Der Henst. Maestros del web. [En línea] 19 de Julio de 1997. [Citado el: 7

de junio de 2011.] http://www.maestrosdelweb.com/editorial/phpintro/.

3. Pérez, J.E., Introducción a JavaScript. 2007.

4. Facultad Regional La Plata. UTN-FRLP (Facultad Regional La Plata). [En línea] [Citado el: 1

de agosto de 2011.] http://www.frlp.utn.edu.ar/materias/info2/bases_de_datos.htm.

5. Gutiérrez, Javier J. CSSBlog.es. ¿Qué es un framework web? [En línea] [Citado el: 27 de

agosto de 2011.] http://www.cssblog.es/guias/Framework.pdf.

Page 16: SISTEMA INTEGRAL PARA EL CONTROL DE CUENTAS DE DOMINIO

ANEXOS

14

ANEXOS

Anexo 1. Autenticación del sistema.

Anexo 2. Datos nivel de Usuario.

Page 17: SISTEMA INTEGRAL PARA EL CONTROL DE CUENTAS DE DOMINIO

ANEXOS

15

Anexo 3. Cambio de contraseña.

Anexo 4. Detalles de Usuario.

Page 18: SISTEMA INTEGRAL PARA EL CONTROL DE CUENTAS DE DOMINIO

ANEXOS

16

Anexo 5. Nivel de Representante.

Anexo 6. Gestionar Usuarios en nivel Representante.

Page 19: SISTEMA INTEGRAL PARA EL CONTROL DE CUENTAS DE DOMINIO

ANEXOS

17

Anexo 7. Modificar Usuarios en nivel Representante.

Anexo 8. Subir Contrato en nivel Representante.

Anexo 9. Buscador en nivel Representante.

Page 20: SISTEMA INTEGRAL PARA EL CONTROL DE CUENTAS DE DOMINIO

ANEXOS

18

Anexo 10. Distribución de usuarios por unidades en nivel

Representante.

Anexo 11. Nivel Administrador.

Page 21: SISTEMA INTEGRAL PARA EL CONTROL DE CUENTAS DE DOMINIO

ANEXOS

19

Anexo 12. Crear cuenta en nivel de Administrador .

Anexo 13. Gestionar representantes en nivel Administrador .

Page 22: SISTEMA INTEGRAL PARA EL CONTROL DE CUENTAS DE DOMINIO

ANEXOS

20

Anexo 14. Gestionar Unidades en nivel Administrador .

Anexo 15. Crear Unidades en nivel Administrador.

Anexo 16. Mantenimiento en nivel Administrador .

Page 23: SISTEMA INTEGRAL PARA EL CONTROL DE CUENTAS DE DOMINIO

ANEXOS

21

Anexo 17. Nivel SuperAdmin.

Anexo 18. Buscador de Acciones de la bitácora o histórico en nivel

SuperAdmin.