Certificación como Asesor MaxiComercio Contenido Módulo 1 - Despliegue de MaxiComercio ....................................................................................... 3 Lección 1.1 - Modelos de despliegue de MaxiComercio .............................................................. 3 Objetivo ................................................................................................................................. 3 Generalidades ........................................................................................................................ 3 Arquitectura de MaxiComercio............................................................................................... 3 MaxiComercio en un solo equipo (“Standalone”) ................................................................... 5 MaxiComercio en una red de área local .................................................................................. 6 MaxiComercio a través de Internet ........................................................................................ 8 Resumen de la lección ............................................................................................................ 8 Lección 1.2 - Proceso de instalación ........................................................................................... 9 Objetivo ................................................................................................................................. 9 Etapas del proceso de instalación del software y su propósito ................................................ 9 Requerimientos de software previos a la instalación de MaxiComercio ................................ 11 Procedimientos comunes de instalación ............................................................................... 11 Resumen .............................................................................................................................. 12 Lección 1.3 - Información de conexión ..................................................................................... 13 Objetivo ............................................................................................................................... 13 Información de configuración de la conexión ....................................................................... 13 Administrar conexiones a bases de datos ............................................................................. 15 Modificar la ubicación del repositorio de programas ............................................................ 17 Medidas de seguridad .......................................................................................................... 18 Resumen .............................................................................................................................. 18 Lección 1.4 - El repositorio, firmas y ubicaciones de confianza ................................................. 19 Objetivo ............................................................................................................................... 19 Organización del repositorio ................................................................................................ 19 Seguridad ............................................................................................................................. 20 Utilidad “Seguridad de sub-programas”................................................................................ 22 Resumen .............................................................................................................................. 23 Lección 1.5 – Herramientas de configuración y conexión.......................................................... 24 Grupo Execom de Chiapas S.A. de C.V Certificación como Asesor MaxiComercio Objetivo ............................................................................................................................... 24 Tabla de herramientas disponibles ....................................................................................... 24 Resumen .............................................................................................................................. 24 Lección 1.6 - Configuración de servidor Linux+MySQL+Samba .................................................. 25 Objetivo ............................................................................................................................... 25 Introducción......................................................................................................................... 25 Conceptos clave ................................................................................................................... 25 Instalación de MySQL en Debian .......................................................................................... 26 Cuentas de usuario en MySQL .............................................................................................. 26 Configuración de MySQL en Debian...................................................................................... 27 Instalación de Samba en Debian ........................................................................................... 28 Configuración de Samba en Debian ...................................................................................... 29 Crear Base de Datos y Carpeta de Subprogramas ................................................................. 31 Lección 1.7 - Configuración de servidor basado en Windows .................................................... 32 Objetivo ............................................................................................................................... 32 Introducción......................................................................................................................... 32 Instalación y configuración de MySQL en Windows XP ......................................................... 32 Instalación y configuración de SQL Server en Windows XP.................................................... 33 Crear Base de Datos y Carpeta de Subprogramas ................................................................. 34 Lección 1.8 – Cargar datos iniciales .......................................................................................... 36 Objetivo ............................................................................................................................... 36 Carga de información de inventarios .................................................................................... 36 Carga de información de clientes y cuentas por cobrar ......................................................... 38 Lección 1.9 – Respaldar la base de datos y el repositorio.......................................................... 40 Objetivo ............................................................................................................................... 40 Respaldar y restaurar el repositorio...................................................................................... 40 Respaldar una base de datos Access ..................................................................................... 40 Respaldar una base de datos MySQL .................................................................................... 40 Respaldar una base de datos SQL Server .............................................................................. 41 Grupo Execom de Chiapas S.A. de C.V Certificación como Asesor MaxiComercio Módulo 1 - Despliegue de MaxiComercio Lección 1.1 - Modelos de despliegue de MaxiComercio Objetivo. Conocer las generalidades sobre la arquitectura de MaxiComercio y sus principales modelos de despliegue. Generalidades El Modelo de Despliegue (también conocido como “Modelo físico”) proporciona información detallada de la forma en la que los componentes del software se dispondrán a lo largo de la infraestructura. Debe contener información acerca de las capacidades de la red, especificaciones de servidor, requisitos de hardware/software y toda lo que sea relevante para su puesta a punto. Para representar los modelos de despliegue en este curso se utilizará UML 2.0. Los elementos de diagramas usados son: • Nodo • Asociación • Componente Los modelos de despliegue son diagramas estáticos, es decir representan el comportamiento del sistema en un momento “congelado” en el tiempo. Arquitectura de MaxiComercio MaxiComercio es una aplicación Cliente/servidor de 3 capas bajo el paradigma de “cliente inteligente”. Esto se traduce en que la información está centralizada y controlada por el software de servidor de bases de datos. Por su parte, MaxiComercio es una aplicación que se conecta (generalmente a través de TCP/IP) para realizar consultas, inserciones o actualizaciones a los datos. Se denomina “Cliente inteligente” al software que ejecuta la mayoría de la lógica de negocio en el equipo cliente y solo la gestión de los datos corre a cargo del servidor. MaxiComercio implementa del lado del cliente 3 capas: Grupo Execom de Chiapas S.A. de C.V Certificación como Asesor MaxiComercio • • • Interfaz del usuario. Es la aplicación gxruntime.exe y los programas javascript que la configuran. Lógica de negocio. Descansa en un conjunto de bibliotecas (dll) COM y programas javascript. Acceso a datos. Es implementada por las bibliotecas (dll) COM que inician con el prefijo EDO (Enterprise Data Objects) que proporcionan una primer abstracción de las entidades relacionales hacia el modelo orientado a objetos. Arquitectura del cliente inteligente MaxiComercio Arquitectura del acceso a datos de MaxiComercio Grupo Execom de Chiapas S.A. de C.V Certificación como Asesor MaxiComercio Adicionalmente el diseño de la base de datos de MaxiComercio incorpora restricciones, procedimientos almacenados y disparadores para asegurar la integridad de los datos y delegar los procesos más críticos al servidor. Todas las operaciones que afectan más de una tabla están protegidas por el soporte transaccional del DBMS. MaxiComercio en un solo equipo (“Standalone”) Diagrama de despliegue UML 2.0 “standalone”. Requerimientos de hardware Mínimo Procesador Compatible con Intel (Atom/Celeron) RAM 512 MB Disco duro 60 GB VRAM 8 MB / compartida Resolución de video 800x600px Red No requerida Recomendado Intel Core 2 duo o similar 1GB 120 GB 32 MB dedicada 1024x768px Sistemas operativos soportados • Microsoft Windows XP/Vista/7 (Se recomienda sistema operativo de escritorio) • Microsoft Windows Server 2003/2008 Software servidor de bases de datos • Microsoft SQL Server 2005/2008 • Sun MySQL 5.x Nota. Aunque se puede utilizar el MS Jet 4.0 (formato de Access 2003), no se recomienda utilizar este gestor de archivos para un entorno de trabajo real. Grupo Execom de Chiapas S.A. de C.V Certificación como Asesor MaxiComercio MaxiComercio en una red de área local MaxiComercio es una aplicación Win32, por lo que forzosamente debe estar instalada en un equipo con MS Windows. Sin embargo el servidor puede ser Windows o Linux siempre que no requiera esté instalado MaxiComercio en él. Observe que en los diagramas se representa la multiplicidad uno a muchos (1…*) en la asociación (conexión) entre los nodos servidor y cliente. Servidor Windows Grupo Execom de Chiapas S.A. de C.V Certificación como Asesor MaxiComercio Servidor Linux Equipo Servidor basado en Linux Sun MySQL Samba 1 Equipo cliente con SO MS Windows TCP/IP * MaxiComercio ERA Requerimientos de hardware para el servidor Mínimo Procesador Compatible con Intel Pentium RAM 1 GB Disco duro 120 GB VRAM 8 MB / compartida Resolución de video 800x600px Red Ethernet 100/1000 Mbps Recomendado Intel Xeon 4 GB 2 x 200 GB RAID 32 MB dedicada 1024x768px Sistemas operativos de servidor • Microsoft Windows Server 2003/2008 • Linux (cualquier distribución para servidor). Recomendados: Debian/RedHat Software servidor de bases de datos • Microsoft SQL Server 2005/2008 (solo con sistema operativo MS Windows Server) • Sun MySQL 5.x Software adicional para servidores Linux • Samba. Para tener un servidor de archivos en Linux que comparta el repositorio de programas con equipos Windows donde estará instalado MaxiComercio Grupo Execom de Chiapas S.A. de C.V Certificación como Asesor MaxiComercio Samba. Implementa los protocolos y servicios necesarios para compartir archivos con equipos basados en Windows. Esto es necesario pues el “Repositorio de programas” generalmente es una carpeta compartida (con permisos de solo lectura). El “Repositorio de programas” contiene los archivos javascript, xml y xpd que permiten la adecuación y extensión de MaxiComercio. Requerimientos de hardware cliente Mínimo Procesador Compatible con Intel (Atom/Celeron) RAM 512 MB Disco duro 60 GB VRAM 8 MB / compartida Resolución de video 800x600px Red No requerida Recomendado Pentium Core duo o similar 1GB 120 GB 32 dedicada 1024x768 Sistemas operativos soportados para el cliente • Microsoft Windows XP/Vista/7 MaxiComercio a través de Internet Como la conexión entre el cliente (MaxiComercio) y el servidor (MS SQL Server/MySQL) se realiza mediante TCP/IP se puede acceder a un servidor remoto a través de la Internet. Solo se precisa conocer su dirección IP o nombre de dominio. Resumen de la lección Usted aprendió: • • • El propósito del modelo de despliegue y su notación UML 2.0 básica Las combinaciones de hardware y software para el despliegue de MaxiComercio Algunas particularidades de la arquitectura de MaxiComercio Grupo Execom de Chiapas S.A. de C.V Certificación como Asesor MaxiComercio Lección 1.2 - Proceso de instalación Objetivo. Comprender el funcionamiento del proceso de instalación para poder efectuar el despliegue de MaxiComercio de acuerdo a los requerimientos del cliente. Etapas del proceso de instalación del software y su propósito MaxiComercio es una aplicación Win32 contenida en un paquete de instalación de Windows Installer® 3.0. El proceso consta de las siguientes etapas: Descripción del proceso Etapa de inicio Durante la etapa de Inicio se valida que el equipo reúna las características de software y hardware indispensables, esto incluye que la versión de los servicios de Windows Installer sea 3 o superior. También se solicitan al usuario parámetros de instalación muy simples como ubicación de la carpeta donde se copiaran los archivos del programa. Etapa de instalación En la etapa de instalación se copian los archivos del programa y se realizan los siguientes procesos del sistema: Grupo Execom de Chiapas S.A. de C.V Certificación como Asesor MaxiComercio • • • Registro de componentes COM. Consiste en indicarle al sistema operativo donde se encuentra el archivo de componente (dll/ocx) y las particularidades de su interfaz y versión. Registro de extensiones y tipos de archivos. Le indica al “Shell” de Windows las extensiones (por ejemplo .xpd) que corresponden a programas incluidos en el paquete de MaxiComercio Introducción de valores de registro. Guarda datos de configuración local (para el usuario de Windows) en el registro del sistema que los programas podrían necesitar para su ejecución. Si ocurre algún error durante esta etapa (por ejemplo falta de espacio en disco), los servicios de Windows Installer “desharán” los cambios y regresarán el equipo al estado previo al inicio (al menos eso dice la documentación de Microsoft®). Post-Instalación Una vez que se ha completado la fase de instalación se “lanza” un “post-instalador”, es decir un programa que realiza algunas tareas antes de que los servicios de Windows Installer den por concluido el proceso. El “post-instalador” realiza algunos ajustes a la configuración del sistema y le solicita al usuario que decida entre: • • • Configurar servidor y base de datos. Esta opción “lanza” (ejecuta) el programa “Asistente para configurar servidor” que más adelante se explica. Se debe elegir esta opción cuando se desea crear la base de datos y el repositorio de programas. Conectarse a un servidor existente. Esta opción ejecuta el “Asistente para conectar terminal” que tiene por objetivo configurar al equipo actual para conectarse a un servidor que previamente se ha configurado con una base de datos de MaxiComercio y un repositorio de programas. Actualizar un servidor previamente configurado. Esta opción ejecuta la herramienta de actualización sobre un servidor (base de datos y repositorio de programas) de una versión anterior. Sea cual fuere la opción que se elija, una vez completados los pasos que correspondan, el programa de instalación (realmente los servicios de Windows Installer) dan por concluido satisfactoriamente el proceso. La post-instalación no es obligatoria, esto quiere decir que puede simplemente cancelar los asistentes y se dará por instalado al software. Si este es el caso el programa estará instalado correctamente pero no se podrá usar porque no se habrá configurado la conexión. Grupo Execom de Chiapas S.A. de C.V Certificación como Asesor MaxiComercio Puede posteriormente desde el grupo de programas de MaxiComercio en el menú Inicio de Windows buscar el asistente que requiera para conectar, configurar o actualizar. Requerimientos de software previos a la instalación de MaxiComercio MySQL • • • Debe estar configurado y “levantado” el servicio del servidor en el equipo servidor En los equipos donde vaya a ejecutar la instalación de MaxiComercio debe instalar previamente el controlador ODBC para MySQL versión 3.51. Aunque al momento de escribir este material ya está disponible la versión 5.0 del controlador, el asistente de MaxiComercio para conectarse a un servidor o configurarlo no podrá crear el origen “DSN” (Data Source Name) si utiliza una versión distinta a la 3.51. Si decide crear las conexiones manualmente desde el “Administrador de conexiones” de MaxiComercio, puede usar cualquier versión del controlador. Recuerde que si configura un servidor Linux, deberá ajustar algunos valores de las variables de MySQL (la sensibilidad de mayúsculas/minúsculas para los nombres de tablas y el motor pre-determinado InnoDB). Vea el manual de MaxiComercio. SQL Server • • • Asegúrese de tener correctamente instalado el servidor Microsoft SQL Server (cualquier edición de acuerdo a sus respectivos contratos de licencia). Es muy importante que establezca el modo de autenticación y en consecuencia lo configure con el asistente de MaxiComercio. Por favor lea atentamente los documentos sobre este tema en la sección “Lecturas obligatorias”. No se requiere instalar ningún controlador para SQL Server ya que MaxiComercio utiliza el proveedor OLE DB SQL Server Client que se instala con Windows. Procedimientos comunes de instalación Instalación “standalone” 1 2 3 Instale y configure el software de servidor de base de datos En caso de usar MySQL instale el controlador ODBC 3.51 en todos los equipos donde se instalará MaxiComercio Instale MaxiComercio 3.1 En la post-instalación elija la opción “Configurar servidor y base de datos” y complete todos los pasos que correspondan. Grupo Execom de Chiapas S.A. de C.V Certificación como Asesor MaxiComercio Instalación en red local con un servidor Windows 1 2 3 Instale y configure el software de servidor 1.1 En caso de usar MySQL instale el controlador ODBC 3.51 Instale MaxiComercio en el servidor o en un cliente y durante la post-instalación elija la opción “Configurar servidor y base de datos” Instale MaxiComercio en los demás equipos cliente (terminales) y durante la post-instalación elija “Conectarse a un servidor existente” y complete los pasos del asistente. Instalación en red local con un servidor Linux 1 2 3 Instale y configure el software de servidor 1.1 MySQL y los ajustes a la configuración que indica el manual de usuario de MaxiComercio 1.2 Samba para compartir archivos con equipos Windows Instale MaxiComercio en un cliente y durante la post-instalación elija la opción “Configurar servidor y base de datos” 2.1 Cree el repositorio de programas en el equipo local y luego muévalo a una carpeta compartida en el servidor 2.2 Ajuste las ubicaciones de confianza con la utilidad “Seguridad de sub-programas” que se encuentra en el grupo de programas de MaxiComercio en el menú Inicio de Windows 2.3 Elimine el repositorio de sub-programas del equipo local 2.4 Ejecute el asistente de conexión y configure el equipo local Instale MaxiComercio en los demás equipos cliente (terminales) y durante la post-instalación elija “Conectarse a un servidor existente” y complete los pasos del asistente. Observe que deberá mover el repositorio de programas del equipo desde donde configura la base de datos hacia el servidor con Samba. Esto debe hacerse así porque no puede ejecutar el software MaxiComercio (el asistente de configuración de servidor) directamente en el servidor porque ejecuta Linux. Resumen Usted aprendió: • • Las tareas (y etapas) que realiza el programa de instalación del software y su propósito Los requerimientos previos a la instalación y las consideraciones que debe tomar en cuenta para el despliegue Grupo Execom de Chiapas S.A. de C.V Certificación como Asesor MaxiComercio • Los pasos esenciales a completar para efectuar el despliegue correctamente Lección 1.3 - Información de conexión Objetivo. Conocer como se administra la información de conexión para tener los elementos necesarios para resolver problemas. Información de configuración de la conexión MaxiComercio es una aplicación cliente, por lo que necesita conectarse a un servidor. Para efectuar la conexión se requiere que el programa almacene la información necesaria para evitar que el usuario tenga que introducirla cada vez que vaya a empezar a trabajar. La información de conexión mínima para que un cliente de MaxiComercio pueda operar es: • • Información de conexión a la base de datos Ubicación del repositorio de programas Información para conexión a la base de datos Dependiendo del motor de base de datos que haya elegido, MaxiComercio requiere: • • Para MySQL se requiere: o Nombre, dirección IP o dominio del servidor. o Nombre de usuario y contraseña o Opcionalmente el número de puerto TCP por el que se realiza la conexión (solo en caso de que haya cambiado ese valor en la configuración del servidor). Para MS SQL server se necesita: o Nombre, dirección IP o dominio del servidor. o Nombre de usuario y contraseña solo si decidió usar el modo de autenticación de SQL server, en caso de haber elegido el modo de autenticación integrado con Windows se intentará establecer la conexión con el usuario de Windows que inició sesión. Estos datos de conexión se almacenan en la forma de la especificación para cadenas de conexión de OLE DB. En el caso de MySQL además de la cadena de conexión OLE DB generalmente existe un DSN de ODBC que configuró el asistente de conexión o configuración de base de datos de MaxiComercio. Formato, seguridad y ubicación de la información de conexión a la base de datos Grupo Execom de Chiapas S.A. de C.V Certificación como Asesor MaxiComercio La información de conexión a la B.D. (cadena OLE DB, usuario y contraseña) se almacenan en un archivo de texto XML, dentro de este archivo el nombre de usuario y contraseña se encuentran encriptados con AES de 128 bits para que no puedan ser vistos al abrir el archivo con el bloc de notas por ejemplo. Adicionalmente junto al archivo xml de información de conexión a la base de datos se encuentra un archivo de firma que valida que el contenido del archivo xml no se ha modificado más que con el conjunto de componentes de administración de conexión de MaxiComercio. El componente COM para la administración de la información de conexiones a bases de datos es geOLEDBServeces (dll). La información de conexión a la base de datos se guarda en una carpeta dependiente del usuario de Windows, esto significa que cada usuario del equipo puede tener una lista distinta de conexiones a bases de datos. Ubicación del repositorio de programas El repositorio de programas (donde están los archivos javascript, xml y reportes) debe encontrarse en una carpeta compartida con permisos de “solo lectura” en la red (si el despliegue es en red o en el equipo local si es “standalone”). MaxiComercio necesita conocer su ubicación para cargar los programas de inicio y todos los demás cuando se requieran. Esta ubicación se encuentra en un archivo de texto denominado Maxicomercio.inf o Deminus.inf (en el caso de Déminus). Archivos de configuración Para Windows Vista/7 la carpeta es: C:\Users\Usuario_del_Equipo\AppData\Local\GExecom Donde: • Usuario_del_Equipo es el nombre de usuario de Windows que inició sesión. Los archivos que ahí se encuentran son: • • • geOLEDBInfo.xml. Contiene la información de conexión a la base de datos geOLEDBInfo.afd. Es la firma electrónica del archivo geOLEDBInfo.xml Maxicomercio.inf/Deminus.inf. Contiene la ubicación del repositorio de programas. Grupo Execom de Chiapas S.A. de C.V Certificación como Asesor MaxiComercio Administrar conexiones a bases de datos Las conexiones administradas por geOLEDBServices se encuentran clasificadas por “Aplicación”, de tal modo que en el mismo archivo xml se encuentran las de MaxiComercio, Déminus, otros programas o las de aplicaciones que defina el usuario. La administración de esta información no debe hacerse directamente sobre el archivo xml pues la firma electrónica (en el archivo geOLEDBInfo.afd) no coincidiría y quedaría inutilizable. Las medidas de seguridad sobre la información de geOLEDBInfo.xml como se dijo anteriormente son dos: • • Encriptado con AES128 y codificado Base64 del nombre de usuario y contraseña. Esto evita que al abrir el archivo con un editor de texto (como el bloc de notas de Windows) un usuario malintencionado se pueda hacer con las credenciales de conexión. Firma electrónica del archivo xml. Esta medida de seguridad impide que se tome el bloque de datos encriptado de otro archivo y se sobre ponga al del equipo actual. Muestra del contenido del archivo geOLEDBInfo.xml, observe que los nodos XML de UserID y Password están codificados en Base64 (esto porque el resultado de la encripción contiene datos binarios que no se deben introducir en un documento xml). <?xml version="1.0" encoding="UTF-8"?> <eConnectionsInfo> <eCnnInfo Name="mysql_midb" AppName="Maxicomercio" Default="True"> <OLEDBString> Provider=MSDASQL.1;Persist Security Info=false;Data Source=midb </OLEDBString> <UserID> MHIGCSsGAQQBgjdYA6BlMGMGCisGAQQBgjdYAwGgVTBTAgMCAAECAmYQAgIBAAQQ&#xD;&#xA;AAAAAAAAAAAAAAAAAAAAAA QQjGpE8sfkflcB54nVO4kdcAQgbxEUPDW4OHC+SEgJ&#xD;&#xA;nWEslTsaywxg1a+FzSFZ5fn488c=&#xD;&#xA; </UserID> <Password> MHIGCSsGAQQBgjdYA6BlMGMGCisGAQQBgjdYAwGgVTBTAgMCAAECAmYQAgIBAAQQ&#xD;&#xA;AAAAAAAAAAAAAAAAAAAAAA QQ8Rvi9em+zrn7Jm8nond5HgQgL7aHMIuRlb7tecZM&#xD;&#xA;7Cqmk3L/ZmtPfmHo7gmI4h0MHBI=&#xD;&#xA; </Password> </eCnnInfo> <eXMLFileSign> MHIGCSsGAQQBgjdYA6BlMGMGCisGAQQBgjdYAwGgVTBTAgMCAAECAmYQAgIBAAQQ AAAAAAAAAAAAAAAAAAAAAAQQHP8H7TlAaqlotJP9Kb6jFwQgtcyHuxjXb6DwqlzN cDnJDNcjh01mofqlhxx8i3AKnU0= </eXMLFileSign> </eConnectionsInfo> Para modificar las conexiones use la herramienta “Administrador de conexiones” que se encuentra en el grupo de programas de MaxiComercio (carpeta Herramientas de Códice) en el menú Inicio de Windows. El código fuente de ejemplo VB6 se encuentra también disponible en esa ubicación. Grupo Execom de Chiapas S.A. de C.V Certificación como Asesor MaxiComercio Administrador de conexiones. • Propiedades del registro de conexión o Nombre de la conexión: Es el identificador de la conexión. o Aplicación: Es el nombre del grupo en el que se clasificará. o Cadena de conexión: Son los parámetros que se introducen para crear una conexión a una base de datos o Nombre de usuario y contraseña: Son las credenciales de acceso al servidor de la base de datos. o Conexión predeterminada para esta aplicación: Permite indicar la conexión a utilizar por defecto cuando se solicite acceso a una aplicación. • Acerca de las conexiones registradas Cada conexión se identifica con un nombre que no debería contener espacios en blanco ni caracteres especiales. Grupo Execom de Chiapas S.A. de C.V Certificación como Asesor MaxiComercio Propiedades de conexión. Modificar la ubicación del repositorio de programas Este archivo (Maxicomercio.inf/Deminus.inf) puede modificarse con cualquier editor de texto (como el bloc de notas de Windows). Muestra del contenido del archivo Maxicomercio.inf //Archivo de configuración de acceso al servidor de programas //Creado automáticamente. 11/03/2010 06:02:49 p.m. #SysPath #Script D:\GExecom\Maxicomercio Main Solo debe modificar la línea #SysPath e introducir la ubicación del repositorio que requiera. Es importante que tome en cuenta que la ubicación que proporcione debe ser considerada “de confianza”. Esta información no está encriptada porque su disponibilidad no representa un hueco de seguridad siempre que se tomen las previsiones correspondientes como se sugiere más adelante. Grupo Execom de Chiapas S.A. de C.V Certificación como Asesor MaxiComercio Medidas de seguridad La seguridad del sistema está estructurada en dos niveles principales: alto y bajo. El bajo nivel está representado por las previsiones que puede tomar desde el motor de la base de datos, la conectividad y el acceso al repositorio de programas. El alto nivel (de aplicación) corresponde a la capa de lógica que se representa por el esquema de permisos, usuarios, grupos y perfiles. Este nivel se configura en el panel de control de MaxiComercio. Las previsiones mínimas de bajo nivel que debe tomar son: • • • • Definir un usuario del motor de la base de datos con permisos limitados (no usar root para MySQL o SA para SQL Server) para que sea mediante el cual se conecta MaxiComercio. Preferentemente restringir los accesos al motor de la base de datos por ubicaciones de red (es decir nodos o rangos de direcciones que pueden conectar al DBMS). Compartir la carpeta del repositorio de programas con permisos de “Solo lectura” para evitar que se introduzcan secuencias de código o se carguen programas mal intencionados. El usuario de Windows con el que se trabaje con el sistema preferentemente debe ser una cuenta limitada para evitar que se puedan hacer cambios a la configuración del sistema operativo y sus servicios Resumen Usted aprendió: • • • • La información de conexión que necesita MaxiComercio, cómo y dónde se guarda Algunos de los mecanismos de seguridad implementados Cómo se puede modificar manualmente mediante el “Administrador de conexiones” o un editor de texto para el caso de la ubicación del repositorio Las medidas de seguridad mínimas de bajo nivel que debería implementar durante el despliegue Grupo Execom de Chiapas S.A. de C.V Certificación como Asesor MaxiComercio Lección 1.4 - El repositorio, firmas y ubicaciones de confianza Objetivo. Conocer las generalidades del repositorio de programas y los mecanismos de seguridad implementados. Organización del repositorio El repositorio (ubicación de sub-programas) es una carpeta desde donde todos los clientes (terminales) cargan programas, reportes y otros recursos. Tiene una estructura que es utilizada para determinar el tipo de funcionalidad que aporta cada archivo. • Raíz (\). Contiene archivos JavaScript (extensión .js) que pueden ser cargados dentro del entorno del backoffice para extender la interfaz del usuario o realizar procesos. Aquí se encuentran también los archivos prn_*.js que se utilizan para la impresión de comprobantes en la caja (ticket, corte, vales,etc). • Formularios de datos definidos por el usuario (\XMLForms). En esta carpeta se encuentran los archivos de formularios de datos definidos por el usuario, se utilizan dos archivos con el mismo nombre y diferente extensión para cada formulario. Uno es un archivo XML que contiene la descripción de los elementos que forman el formulario (controles) y otro JavaScript que contiene la funcionalidad y el manejo e intercepción de eventos. • Accesos directos en el menú Herramientas del Back office (\Tools). Las carpetas definidas dentro de la carpeta “Tools” se despliegan como sub-menús del menú Herramientas, los archivos JavaScript (.js) son las opciones seleccionables. • Sub-programas de intercambio de datos. (\SubPrograms). Todos los programas JavaScript de esta carpeta se muestran en la lista del menú “Aplicación->Intercambiar datos” en el Backoffice. • Reportes (\Reports). Aquí se encuentran los archivos *.xpd que son definiciones de reportes de Códice. Las carpetas que se creen aquí servirán para clasificar los reportes en el diálogo de selección de reportes en el Backoffice. La interpretación de archivos Javascript se realiza a través de la Scripting Library de Microsoft® MaxiComercio define una extensa biblioteca de objetos que puede ser manipulada por los scripts. Grupo Execom de Chiapas S.A. de C.V Certificación como Asesor MaxiComercio Seguridad Debido a que los programas Javascript y los reportes tienen acceso a la conexión de la base de datos, la biblioteca de objetos de MaxiComercio y la interoperabilidad COM/.Net es posible adecuar y extender el sistema. Sin embargo esta potencia puede resultar peligrosa si se introducen archivos javascript con secuencias de comandos malintencionadas. El problema potencial es que un usuario con conocimientos suficientes podría por ejemplo ejecutar una instrucción de eliminación (DELETE) irreversible contra la base de datos o alterar la información. Para evitar que cualquiera pueda modificar los programas o introducir otros, el repositorio debe ser una carpeta compartida con permisos de “solo lectura”. Ahora bien, para asegurar que el repositorio es en efecto una carpeta compartida debe iniciar con la secuencia \\. Por ejemplo \\servidor\maxicomercio. Además de que la ubicación del repositorio configurada en los clientes (archivo Maxicomercio.inf) debe iniciar con la secuencia de recurso de red (\\), la base de datos debe tener esa ubicación registrada para permitir que se carguen los programas que en ella se encuentran. Ubicación de confianza A la ubicación que una base de datos tiene registrada como válida para cargar y ejecutar programas se le denomina “Ubicación de confianza”. Esta lista de ubicaciones de confianza se encuentra en la tabla sisUbicacion de la base de datos de MaxiComercio. El acceso de escritura sobre la tabla sisUbicacion debería restringirse al usuario de la base de datos con el que se conecta MaxiComercio, reservándose solo para “root” o “SA”. Esta es una previsión de bajo nivel que debería implementarse siempre. Firmas de programas Ahora bien, en un despliegue “standalone” probablemente no existirá soporte de red y por tanto las rutas de red (\\) no serán válidas. Entonces resulta necesario que MaxiComercio pueda cargar programas desde una ubicación local. Por ejemplo. C:\maxicomercio. Grupo Execom de Chiapas S.A. de C.V Certificación como Asesor MaxiComercio Para permitir la definición de ubicaciones locales en el archivo Maxicomercio.inf debe estar configurado el valor de registro HKCU\Software\Execom\secstatus. Valores posibles para SecStatus Valor 1 0 Descripción Seguridad de ubicaciones de repositorio activada. • Permite ubicaciones de red del repositorio, esto es, que el repositorio se encuentre compartido en el servidor y esté registrado en la tabla sisUbicacion. • Permite ubicaciones locales del repositorio siempre y cuando esté registrado en la tabla sisUbicacion y cada archivo que se intente ejecutar debe tener una firma registrada en la tabla sisFirma. Esto obliga a que cada programa que se carga desde una ubicación local deba tener su firma registrada en la base de datos evitando que con solo modificarlos se pueda infringir la seguridad. Para registrar una firma de archivo utilice la Herramienta de “Seguridad de sub-programas” desde el menú de instalación de MaxiComercio en el submenú Herramientas. Seguridad de ubicaciones de repositorio desactivada. • Permite cualquier ubicación de repositorio: rutas de red o locales, siempre y cuando este registrada en la tabla sisUbicacion. Cuando se autoriza la carga de programas desde ubicaciones locales el sistema (MaxiComercio) exige la verificación de la firma digital de cada archivo que se carga. La firma es una digestión MD5 del archivo autorizado guardada en la tabla sisFirma de la base de datos. Al igual que sobre la tabla sisUbicacion, el acceso de escritura debe estar restringido para el usuario de la base de datos con que se conecta MaxiComercio y reservado solo para “root” o “SA”. El mensaje “Imposible encontrar o cargar el sub-programa principal main.js” regularmente se debe a que la ubicación del repositorio no está considerada como de confianza, no hay soporte de red o simplemente la firma del archivo no es válida. Grupo Execom de Chiapas S.A. de C.V Certificación como Asesor MaxiComercio Utilidad “Seguridad de sub-programas” Esta herramienta permite conectarse a una base de datos de MaxiComercio e introducir ubicaciones de confianza o registrar las firmas de programas. Con esta herramienta puede configurar las características de seguridad inherentes a la carga de programas desde el repositorio. Tareas comunes con la herramienta Para abrir la herramienta de seguridad de sub-programas debe dirigirse al directorio de programas de Windows, seleccione MaxiComercio ERA 2010\Herramientas\Seguridad de sub-programas. Antes de empezar a usar esta herramienta se tendrá que autenticar seleccionando una conexión e ingresando el usuario y contraseña asignado en MaxiComercio. Utilice la herramienta de seguridad de subprogramas para realizar tareas como: Registrar ubicación de confianza: Si desea agregar una nueva ubicación de repositorio utilice esta opción e indique la carpeta que desea utilizar. Registrar firma de sub-programa: Para registrar una nueva firma de sub-programa seleccione el archivo del cual desea obtener la firma. El archivo puede ser un script (*.js) o una definición de reporte de Códice FX (*.xpd). Quitar ubicación o firma: Si desea reemplazar una ubicación de confianza o firma de sub-programa primero deberá eliminarla y posteriormente agregar el nuevo elemento. Grupo Execom de Chiapas S.A. de C.V Certificación como Asesor MaxiComercio Resumen Usted aprendió: • • • Qué es y que hay en el repositorio de programas Cuáles son los mecanismos de seguridad implementados Cómo configurar ubicaciones de confianza y registrar firmas de programas Grupo Execom de Chiapas S.A. de C.V Certificación como Asesor MaxiComercio Lección 1.5 – Herramientas de configuración y conexión Objetivo. Conocer las herramientas disponibles para configurar la base de datos y la conexión. Tabla de herramientas disponibles La siguiente tabla ilustra las herramientas disponibles, su nombre, propósito y ejemplos de su utilización. Herramienta Configurar o servidor conectar a Archivo MaxiComercio: MC2008PyME.exe Propósito Permite seleccionar el asistente que necesita usar para realizar una tarea Déminus: DMERA_PyME.exe Asistente para Configurar servidor de sub-programas MaxiComercio: CfgSvrMC2008.exe Déminus: CfgSvrDMERA.exe Asistente para Configurar base de datos MySQL MaxiComercio: wizMySql5.exe Déminus: wizMySql5.exe Asistente para configurar base de datos MS SQL Server MaxiComercio: wizMSSql.exe Déminus: wizMSSql.exe Asistente para Conectar terminal con el servidor MaxiComercio: wzConnect.exe Déminus: wzConnect.exe Ejemplos de uso Configurar un repositorio y base de datos Actualizar un servidor existente Crea un repositorio de programas, intenta compartir la carpeta en la red y lanza el asistente para crear la base de datos. Conectarse a un servidor Crear un nuevo repositorio de programas. Crea un DSN de ODBC y una base de datos MySQL con la estructura y datos iniciales requeridos por MaxiComercio. Además anexa la cadena de conexión al administrador de conexiones. Crea una base de datos MS SQL Server 2005/2008 para MaxiComercio y agrega la cadena de conexión al administrador de conexiones. Crear una base de datos MySQL Configura el archivo Maxicomercio.inf con la ubicación del repositorio seleccionado y configura la cadena de conexión a la base de datos Conectarse a una base de datos. Crear una base de datos MS SQL Server Los archivos se encuentran en la carpeta de instalación del programa. • • Para MaxiComercio: Carpeta de instalación \Grupo Execom\MaxiComercio ERA 2010\ Para Déminus: Carpeta de instalación \Grupo Execom\Déminus ERA 2010\ Resumen Usted aprendió: • Cuáles son y donde están ubicadas las herramientas disponibles para crear bases de datos, crear repositorios o configurar la conexión Grupo Execom de Chiapas S.A. de C.V Certificación como Asesor MaxiComercio Lección 1.6 - Configuración de servidor Linux+MySQL+Samba Objetivo. Conocer los detalles a tomar en cuenta para la utilización de un servidor basado en Linux. Introducción Para esta lección se da por entendido que el participante tiene acceso a un equipo de cómputo con el sistema operativo GNU/Linux instalado, por lo cual no se darán mayores explicaciones en cuanto a la instalación del mismo. La explicación de la instalación y configuración de MySQL y Samba se hará en una distribución Debian, sin embargo, es similar para cualquier otra distribución. Conceptos clave • GNU/Linux: Linux es un clon del sistema operativo Unix, escrito desde cero por Linus Torvalds. Su desarrollo es uno de los ejemplos más prominentes de software libre, todo su código fuente puede ser utilizado, modificado y redistribuido libremente por cualquiera bajo los términos de la GNU GPL (Licencia Pública General de GNU) y otra serie de licencias libres. • Distribución: Coloquialmente llamada distro, es una distribución de software basada en el núcleo Linux que incluye determinados paquetes de software para satisfacer las necesidades de un grupo de usuarios. Por ejemplo: Debian, Gentoo, Red Hat, openSUSE, entre otros. • MySQL: Es un Sistema de Gestión de Bases de Datos (SGBD) relacional, multihilo y multiusuario, utiliza un esquema Cliente-Servidor, el cual permite administrar bases de datos SQL. Fue creado en 1995 por MySQL AB, que fue comprada en 2008 por Sun Microsystems, actualmente subsidiaria de Oracle Corporation. MySQL es software libre pero se distribuye bajo un esquema de licenciamiento dual: GPL y Comercial. • Samba: Es una implementación libre del protocolo SMB (Server Message Block, el protocolo que utilizan los equipos Windows para compartir sus directorios) que nos permitirá comunicarnos con equipos Windows desde Linux, con lo cual podremos compartir directorios e impresoras. Samba permite que los equipos Windows puedan acceder a los recursos compartidos (directorios e impresoras) de un equipo Linux, pero también permite a un equipo Linux acceder a los recursos compartidos de un equipo Windows. Grupo Execom de Chiapas S.A. de C.V Certificación como Asesor MaxiComercio Instalación de MySQL en Debian La instalación de MySQL puede realizarse descargando y compilando los archivos fuente (para más información consultar el siguiente enlace http://dev.mysql.com/doc/refman/5.0/es/installingsource.html), o bien, de forma más sencilla, utilizando la herramienta de administración de paquetes aptitude para Debian, lo cual veremos a continuación. Para instalar los programas hay que ejecutar los comandos descritos en cada caso dentro de un intérprete de comandos (es necesario ingresar con un usuario con privilegios suficientes para realizar esta acción, por lo general se utiliza el usuario root). • Paquetes necesarios a instalar: mysql-server. Instala el software servidor y el software cliente de MySQL y sus dependencias necesarias. aptitude install mysql-server • Paquetes opcionales a instalar: mysql-admin. Instala una herramienta gráfica que permite administrar MySQL de forma gráfica. aptitude install mysql-admin Cuentas de usuario en MySQL • Establecer contraseña para el usuario root por primera ocasión: Después de la instalación de MySQL, es muy importante crear una nueva contraseña para el usuario root. Esto se puede hacer a través del siguiente comando: mysqladmin –u root password micontraseña • Crear un nuevo usuario: Por cuestiones de seguridad, es recomendable no utilizar el usuario root para conectarse a la Base de Datos, a menos que sea con fines de administrar las Bases de Datos y/o usuarios. Por lo cual, también se sugiere crear un usuario que sea el que se conecte a la Base de Datos de MaxiComercio. Hay que teclear el siguiente comando en la consola de MySQL: GRANT ALL PRIVILEGES ON basededatos.* TO 'usuario'@'%' IDENTIFIED BY 'contrasenia' WITH GRANT OPTION; Grupo Execom de Chiapas S.A. de C.V Certificación como Asesor MaxiComercio Donde: basededatos.* indica que se le están otorgando los permisos a todas las tablas de la base de datos llamada basededatos. usuario es el nombre de usuario que se está creando con ese comando % indica que ese usuario podrá conectarse a la base de datos indicada desde cualquier equipo que tenga acceso al servidor. contrasenia es la contraseña con la cual se identificará el usuario cuando se requiera. Para crear un nuevo usuario y asignarle permisos a una Base de Datos en específico, debe estar previamente creada la Base de Datos. Configuración de MySQL en Debian El archivo de configuración de MySQL en Debian se encuentra en la siguiente ruta /etc/mysql/my.cnf. Todas las líneas que empiezan con el caracter # no son tomadas en cuenta para la configuración, solamente son comentarios y sugerencias de configuración. • Permitir conexiones remotas: De forma predeterminada, MySQL permite solamente las conexiones locales al servidor. Para configurar el servidor de modo que acepte las conexiones desde cualquier equipo hay que abrir el archivo my.cnf con un editor de textos y cambiar la siguiente línea: bind-address = 127.0.0.1 Por: bind-address = 0.0.0.0 O bien, si solamente se desea permitir las conexiones desde un rango de ip’s limitado, la línea debería de quedar de la siguiente forma: bind-address = 192.168.1.1-192.168.1.100 Después de establecer el valor deseado hay que guardar los cambios en el archivo y cerrarlo. • Establecer el motor predeterminado: De forma predeterminada, el motor de almacenamiento en Linux es MyISAM. Para MaxiComercio es necesario cambiar este valor por InnoDB que es el que se requiere debido al uso de las transacciones y la integridad referencial. Para cambiar esta configuración hay que abrir el archivo my.cnf con un editor de textos y agregar la siguiente línea: default-storage-engine=InnoDB Grupo Execom de Chiapas S.A. de C.V Certificación como Asesor MaxiComercio Después de establecer el valor deseado hay que guardar los cambios en el archivo y cerrarlo. • Sensibilidad a mayúsculas y minúsculas: De forma predeterminada en Linux, los nombres de tablas y bases de datos se almacenan en disco usando el esquema de mayúsculas y minúsculas especificado en las sentencias CREATE TABLE o CREATE DATABASE, esto se especifica en la variable del sistema llamada lower_case_table_names, la cual está predefinida con el valor 0. Si se utilizan tablas InnoDB, como en nuestro caso, se debería establecer lower_case_table_names en 1 en todas las plataformas para forzar a que los nombres sean convertidos a minúsculas. Por lo cual hay que abrir el archivo my.cnf con un editor de textos y agregar la siguiente línea: lower_case_table_names=1 Después de establecer el valor deseado hay que guardar los cambios en el archivo y cerrarlo. Esta consideración es vital ya que de lo contrario MaxiComercio podría tener problemas para identificar objetos de la base de datos por la sensibilidad a mayúsculas/minúsculas. Para que los cambios al archivo my.cnf se vean reflejados en el servidor MySQL hay que reiniciar el servicio con el siguiente comando: /etc/init.d/mysql restart Instalación de Samba en Debian La instalación de Samba puede realizarse descargando y compilando los archivos fuente (para más información consultar el siguiente enlace http://www.samba.org/samba/docs/man/SambaHOWTO-Collection/compiling.html), o bien, de forma más sencilla, utilizando la herramienta de administración de paquetes aptitude para Debian, lo cual veremos a continuación. Para instalar los programas hay que ejecutar los comandos descritos en cada caso dentro de un intérprete de comandos (es necesario ingresar con un usuario con privilegios suficientes para realizar esta acción, por lo general se utiliza el usuario root). • Paquetes necesarios a instalar: samba. Instala el software servidor de archivos e impresión. aptitude install samba En el proceso de instalación, aparecerá la siguiente pregunta: Grupo Execom de Chiapas S.A. de C.V Certificación como Asesor MaxiComercio Run Samba as daemons or from inetd? Press 'D' for to run as daemons or 'I' to run from inetd: [I] Hay que pulsar la tecla D para que Samba inicie como demonio, lo cual quiere decir que iniciara siempre que se reinicie el equipo donde se encuentra instalado y siempre estará funcionando. • Paquetes opcionales a instalar: smbfs. Instala el sistema de archivos Samba aptitude install smbfs Configuración de Samba en Debian El archivo de configuración de Samba en Debian se encuentra en la siguiente ruta /etc/samba/smb.conf. Todas las líneas que empiezan con el caracter “#” no son tomadas en cuenta para la configuración, solamente son comentarios. Cuando algunas de las opciones están comentadas con el caracter “;” se refiere a una configuración propuesta pero que difiere del comportamiento predeterminado. Cuando algunas opciones están comentadas con el caracter “#” se refiere a la configuración predeterminada de Samba, y se considera de suficiente importancia como para comentarse en el archivo de configuración. • Definir el grupo de trabajo: Hay que establecer el nombre del grupo de trabajo o de dominio de Windows de donde será parte el servidor Samba. El valor predeterminado es WORKGROUP. Para cambiar esta configuración hay que abrir el archivo smb.conf con un editor de textos y cambiar la siguiente línea: workgroup = WORKGROUP Por: workgroup = Migrupodetrabajo Donde Migrupodetrabajo es el mismo nombre del grupo de trabajo en los equipos con Windows. Después de establecer el valor deseado hay que guardar los cambios en el archivo y cerrarlo. • Interfaces de red que serán escuchadas Es necesario establecer las interfaces desde las que Samba escuchará las peticiones, de lo contrario no atenderá las peticiones. Los valores que puede establecer en el parámetro son: un nombre de interfaz de red (por ejemplo: eth0), una dirección IP, o una máscara de red. Por default, el parámetro interfaces está vacío, por lo cual hay que configurarlo cambiando la siguiente línea del archivo smb.conf: Grupo Execom de Chiapas S.A. de C.V Certificación como Asesor MaxiComercio interfaces = Por: interfaces = eth0 En general eth0 es la interfaz de red, para comprobar qué interfaces de red está utilizando actualmente, debe teclear el siguiente comando en una consola con privilegios de root: ifconfig De esta forma sabrá qué interfaces de red tiene conectadas y elegirá cuál o cuáles poner en el parámetro interfaces para que sean escuchadas. Después de establecer el valor deseado hay que guardar los cambios en el archivo y cerrarlo. • Directorios a compartir: Para compartir directorios que se encuentran en el servidor Linux con equipos Windows a través de Samba, hay que agregar los siguientes parámetros al final del archivo smb.conf: #Nombre de la carpeta compartida [Maxicomercio] #Ruta en donde se encuentra la carpeta a compartir path = /home/usuario/Maxicomercio #Establecer que el directorio se muestre en la lista de recursos compartidos browsable = yes #Permitir la escritura dentro de esta carpeta writable = yes #Permitir el acceso como usuario invitado a esta carpeta public = yes #Definir el permiso que tendrán los archivos creados dentro de esta carpeta create mask = 0775 #Definir el permiso que tendrán los subdirectorios creados dentro de esta carpeta directory mask = 0775 La carpeta ya debe estar creada en el equipo Linux. Después de establecer la configuración deseada hay que guardar los cambios en el archivo y cerrarlo. Para iniciar el servicio por primera ocasión hay que ejecutar el siguiente comando en una consola con privilegios de root: /etc/init.d/samba start • Creación de cuentas de usuario : Grupo Execom de Chiapas S.A. de C.V Certificación como Asesor MaxiComercio Después de haber configurado los parámetros del servidor Samba, lo siguiente que hay que hacer es crear las cuentas de usuario que se conectarán desde equipos Windows a las carpetas que estén compartidas a través de Samba. Para esto, primero se creará el usuario en Linux a través del siguiente comando: useradd –s /sbin/nologin nombre_usuario Con esto, se agregará a un usuario en Linux pero sin acceso al intérprete de comandos. Después de esto, hay que dar sincronizar a ese usuario con el de Samba con el siguiente comando: smbpasswd –a nombre_usuario Al escribir ese comando, el sistema solicitará la contraseña con la cual se autenticará ese usuario, después de escribirla solicitará una confirmación de esa contraseña. Para que el servidor Samba tome en cuenta los usuarios agregados hay que reiniciar el servicio con el siguiente comando: /etc/init.d/samba restart Crear Base de Datos y Carpeta de Subprogramas Hasta este punto, se ha configurado un servidor MySQL y un servidor Samba en un equipo con Linux como sistema operativo. Por lo cual, se puede realizar una instalación de Maxicomercio en un equipo Windows configurando el Servidor de Base de Datos y Servidor de Subprogramas en un equipo Linux. Para realizar esto hay que seguir el procedimiento mostrado a continuación: 1. Debe estar MaxiComercio y el Conector ODBC 3.51 instalado en el equipo Windows. 2. Ir al menú Inicio de Windows, desplegar la lista de programas instalados, seleccionar la carpeta MaxiComercio ERA 2010, luego seleccionar la carpeta Herramientas y dar clic en “Configurar o conectar a servidor”. 3. Seleccionar la opción “Configurar servidor y base de datos”. 4. Seleccionar la unidad de disco y el nombre de la carpeta donde se instalará el Repositorio de Subprogramas (La carpeta debe crearse primero en el equipo local en Windows). 5. Seleccionar MySQL como servidor de Base de Datos y dar clic en Aceptar. 6. En la pantalla del asistente de configuración del servidor ingresar los siguientes datos: a. En “Servidor”: Puede escribir el nombre del equipo Linux donde tiene configurado el servidor MySQL o la dirección IP, en caso de ser estática. b. En “Nombre de usuario”: Escribir “root” (sin las comillas). El usuario con el que se crea la base de datos debe ser root, debido a que en el proceso se crean procedimientos almacenados y triggers. c. En “Contraseña”: Escribir la contraseña del usuario root configurado anteriormente en el servidor MySQL en Linux. Grupo Execom de Chiapas S.A. de C.V Certificación como Asesor MaxiComercio d. En “Nombre del origen ODBC (DSN)”: Escribir el nombre que deseen, ese nombre será el del Data Source Name (Nombre de Origen de Datos) y también será el nombre de la Base de Datos. e. Dar clic en Siguiente en las demás pantallas del asistente hasta finalizar. 7. Mover la carpeta del equipo local en Windows al servidor Linux en la carpeta que se haya configurado como compartida. 8. Cambiar la ruta de acceso al repositorio de subprogramas en el archivo Maxicomercio.inf, indicando la ruta hacia la carpeta compartida que se encuentra en el servidor Linux. 9. Registrar la ubicación de confianza del repositorio localizado en la carpeta del servidor Linux. Lección 1.7 - Configuración de servidor basado en Windows Objetivo. Conocer los detalles a tomar en cuenta para la utilización de un servidor basado en Windows Introducción Para esta lección se da por entendido que el participante tiene acceso a un equipo de cómputo con el sistema operativo Windows XP, por lo cual no se darán mayores explicaciones en cuanto a la instalación del mismo. En servidores Windows hay 3 opciones para configurar el servidor de base de datos, las cuales son: Access, MySQL, SQL Server. Para entornos de trabajo real, no se recomienda utilizar Access. La explicación de la instalación y configuración de MySQL y SQL Server como servidores de base de datos se hará en Windows XP sin embargo, es similar para Windows Vista o Windows 7. Instalación y configuración de MySQL en Windows XP • Instalar y configurar el servidor MySQL 5.x: 1. Descargar el servidor MySQL desde su página oficial. 2. Ejecutar (dar doble clic) el archivo descargado anteriormente llamado “mysql-essential5.x.y-win32.msi”. Dar clic en el botón “Next”. 3. Seleccionar la opción “Typical” y dar clic al botón “Next”. 4. Dar clic al botón “Install”. 5. Dar clic en el botón “Next”. 6. Dar clic en el botón “Next”. Grupo Execom de Chiapas S.A. de C.V Certificación como Asesor MaxiComercio 7. Marcar la casilla “Configure the MySQL Server now” y dar clic en el botón “Finish” para terminar con la instalación y proceder a configurar el servidor MySQL. 8. Dar clic en el botón “Next” a las pantallas del asistente hasta llegar a la pantalla de Opciones de red y marcar la casilla “Add firewall exception for this port” y dar clic en el botón “Next” hasta llegar a la pantalla de Opciones de Windows. 9. En la pantalla Opciones de Windows, marcar la casilla “Include Bin Directory in Windows PATH” (esto permitirá ejecutar los programas de MySQL desde cualquier ubicación en la consola de comandos de Windows) y dar clic en el botón “Next”. 10. En los campos “New root password” y “Confirm” escribir la contraseña para el usuario root (estos datos le servirán para enlazar otros equipos a este servidor). Marcar la casilla “Enable root Access from remote machines”. Dar clic en el botón “Next”. 11. Dar clic en el botón “Execute” para guardar los datos de configuración del servidor. 12. Dar clic en el botón “Finish” para finalizar la configuración del servidor MySQL. Instalación y configuración de SQL Server en Windows XP • Instalar y configurar el servidor SQL Server: 1. Introducir el DVD de instalación. Aparecerá una pantalla en la cual hay que dar clic en la casilla "Acepto los términos y condiciones de la licencia" y dar clic en “Siguiente”. 2. Luego aparecerá una ventana con los componentes necesarios que SQL Server necesita instalar previamente. Hay que dar clic en Instalar. 3. En la pantalla que aparece después hay que dar clic en “Siguiente”. 4. A continuación aparecerá el asistente para la instalación de Microsoft SQL Server 2005. Hay que dar clic en “Siguiente”. 5. Después aparece una pantalla en la cual vienen llenada automáticamente la información de registro para personalizar la instalación. Hay que dar clic en “Siguiente”. 6. En la siguiente pantalla aparecerán los componentes adicionales a elegir paraa instalar. Hay que marcar la casilla “Servicios de base de datos de SQL Server”, los demás componentes son opcionales. Hay que dar clic en “Siguiente”. 7. En la siguiente ventana que aparece hay que dejar el valor por default “Instancia predeterminada” y dar clic en “Siguiente”. 8. A continuación aparecerá una pantalla en la cual hay que definir los datos de acceso al servidor de base de datos. Por conveniencia, hay que seleccionar la opción “Usar la cuenta del sistema integrada” y seleccionar la opción “Sistema local”. Más abajo hay que dar marcar la opción “SQL Server” y dar clic en “Siguiente”. 9. En la siguiente ventana de “Modo de Autenticación” hay que elegir la opción “Modo mixto”. Habrá que especificar la contraseña de inicio de sesión del usuario sa. Grupo Execom de Chiapas S.A. de C.V Certificación como Asesor MaxiComercio 10. Después aparecerá una ventana con las opciones de idioma, hay que dejar las opciones por default y dar clic en “Siguiente”. 11. En la siguiente ventana, por conveniencia hay que desmarcar las 2 casillas que aparecen y dar clic en “Siguiente”. 12. Después de haber seguido estos pasos para configurar la instalación, en la siguiente ventana hay que dar clic en “Instalar”. 13. Al terminar de instalar lo que hayamos elegido anteriormente, aparecerá la siguiente ventana con el estado de la instalación. Hay que dar clic en “Siguiente”. 14. Después aparecerá una ventana que nos informa que la instalación ha terminado, y en la cual podemos consultar los errores (si hubiesen) generados durante la instalación. Hay que dar clic en “Finalizar”. 15. Finalmente nos aparecerá un mensaje que nos indica que la instalación fue exitosa y nos pide reiniciar el sistema. Hay que dar clic en “Aceptar” y posteriormente reiniciar el equipo para que la configuración se aplique correctamente. Crear Base de Datos y Carpeta de Subprogramas Hasta este punto, se ha configurado un servidor MySQL y un servidor SQL Server en un equipo con sistema operativo Windows XP. Por lo cual, se puede realizar una instalación de Maxicomercio en un equipo Windows configurando el Servidor de Base de Datos y Servidor de Subprogramas en ese o en otro equipo. Para realizar esto hay que seguir el procedimiento mostrado a continuación: • Para MySQL: 1. Debe estar MaxiComercio y el Conector ODBC 3.51 instalado en el equipo Windows. 2. Ir al menú Inicio de Windows, desplegar la lista de programas instalados, seleccionar la carpeta MaxiComercio ERA 2010, luego seleccionar la carpeta Herramientas y dar clic en “Configurar o conectar a servidor”. 3. Seleccionar la opción “Configurar servidor y base de datos”. 4. Seleccionar la unidad de disco (tiene que ser local). 5. Seleccionar MySQL como servidor de Base de Datos y dar clic en Aceptar. 6. En la pantalla del asistente de configuración del servidor ingresar los siguientes datos: a. En “Servidor”: Puede escribir el nombre del equipo donde tiene configurado el servidor MySQL o la dirección IP en caso de ser estática. b. En “Nombre de usuario”: Escribir “root” (sin las comillas). El usuario con el que se crea la base de datos debe ser root, debido a que en el proceso se crean procedimientos almacenados y triggers. c. En “Contraseña”: Escribir la contraseña del usuario root configurado anteriormente en el servidor MySQL en Linux. Grupo Execom de Chiapas S.A. de C.V Certificación como Asesor MaxiComercio d. En “Nombre del origen ODBC (DSN)”: Escribir el nombre que deseen, ese nombre será el del Data Source Name (Nombre de Origen de Datos) y también será el nombre de la Base de Datos. e. Dar clic en Siguiente en las demás pantallas del asistente hasta finalizar. • Para SQL Server: 1. Debe estar MaxiComercio instalado en el equipo. 2. Ir al menú Inicio de Windows, desplegar la lista de programas instalados, seleccionar la carpeta MaxiComercio ERA 2010, luego seleccionar la carpeta Herramientas y dar clic en “Configurar o conectar a servidor”. 3. Seleccionar la opción “Configurar servidor y base de datos”. 4. Seleccionar la unidad de disco (tiene que ser local). 5. Seleccionar Microsoft SQL Server 2000/2005 como servidor de Base de Datos y dar clic en Aceptar. 6. Aparecerá el asistente de creación de bases de datos en SQL Server, dar clic en Siguiente. 7. Seleccionar el servidor donde se instaló SQL Server. 8. En Autenticación seleccionar la seguridad integrada de Windows o la Seguridad de MS SQL Server, según la configuración hecha anteriormente. 9. Dar clic en Siguiente en las demás pantallas hasta finalizar. Grupo Execom de Chiapas S.A. de C.V Certificación como Asesor MaxiComercio Lección 1.8 – Cargar datos iniciales Objetivo. Conocer las herramientas disponibles para la carga inicial de datos de manera que se facilite el arranque del sistema en un entorno de trabajo real. Existe un conjunto de datos que se requieren introducir a la base de datos para poner en operación al sistema. Seguramente resulta muy costoso en tiempo y esfuerzo capturar uno por uno 5000 registros para el catálogo de productos por ejemplo. Para simplificar esta tarea y otras tareas similares se dispone de varias herramientas. Carga de información de inventarios Los datos mínimos para este módulo son: • • • • • Catálogo de Líneas Catálogo de Marcas Catálogo de Departamentos Catálogo de Productos (servicios, artículos o ensambles) Existencias y saldos iniciales Importar el catálogo de productos desde Excel Para importar los datos requiere: • • Tener instalado Excel (se utiliza la biblioteca COM de Excel) Descargar la plantilla predeterminada desde: http://www.induxsoft.net/download/gexecom/tools/PruebaProducto.zip Instrucciones: 1. Use la plantilla para capturar o “pegar” y acomodar los datos que requiere importar. 2. Desde el Backoffice de MaxiComercio vaya al menú Aplicación->Intercambiar datos y seleccione el programa “importar existencias desde Excel.js” Campos que debe llenar obligatoriamente en la plantilla o Código: Es el conjunto de números y/o letras que se le será asignado al producto. o Descripción: El nombre del articulo o servicio. o Unidad: La unidad de medida puede ser pieza, cajas, paquetes, etc. Grupo Execom de Chiapas S.A. de C.V Certificación como Asesor MaxiComercio o Divisa: Tendrá que asignar la moneda para su venta (ingresar el código de la divisa, por ejemplo, para Pesos Mexicanos es PMX). o Línea: Podrá asignarle una línea a los productos, para ello previamente deberán de estar creadas en Maxicomercio (ingresar el código de la línea, por ejemplo 0001 es la Línea predeterminada del sistema). o Clase: Se determina si el producto es un: Artículo (A), Servicio (S) o Ensamble (K). o Valuación: Tendrá que especificar de que manera serán reflejadas las salidas (en cuanto a costo) del almacén: 1=PEPS (Primeras Entradas Primeras Salidas) 2= UEPS (Ultimas Entradas Primeras Salidas) 3= (Promedio) 4= (Identificado) 5= (ninguno). o Costo: El costo que tendrá el articulo. o Precio1, precio2 ,Precio3, Precio4, Precio5: El precio de venta (sin IVA) que se le asigna al producto, el Precio1 es requerido, los demás son opcionales. o Impuestos: Tendrá que determinar los artículos o servicios que incluyan el IVA y en qué porcentaje, G16= IVA 16%, G10= IVA 10%, G0= sin IVA, E= exento. o Marca: Podrá asignarle una marca a los productos, para ello previamente deberán de estar creadas en MaxiComercio (ingresar el código de la marca). o Departamento: Podrá asignarle un departamento a los productos, para ello previamente deberán de estar creados en MaxiComercio (ingresar el código del departamento). o Código de Barras: Puede Asignar hasta 3 códigos de barra diferente para cada artículo. o Requiere lote: En este campo hay que especificar si los productos manejan lotes. Introducir N para indicar que no o S para indicar que sí. o Requiere serie: En este campo hay que especificar si los productos manejan series. Introducir N para indicar que no o S para indicar que sí. Importar las existencias iniciales y su saldo desde Excel Para importar los datos requiere: • • Tener instalado Excel (se utiliza la biblioteca COM de Excel) Descargar la plantilla predeterminada desde: Grupo Execom de Chiapas S.A. de C.V Certificación como Asesor MaxiComercio http://www.induxsoft.net/download/gexecom/tools/PruebaExistencias.zip Instrucciones: 1. Use la plantilla para capturar o “pegar” y acomodar los datos que requiere importar. 2. Desde el Backoffice de MaxiComercio vaya al menú Aplicación->Intercambiar datos y seleccione el programa “ActualizarExistenciasXLS” Campos que debe llenar obligatoriamente en la plantilla: o Código: El código del articulo o Almacén: Código del almacén en el cual repercutirán las nuevas existencias o Cantidad: La cantidad de la nueva existencia con la cual quedara el articulo indicado o Importe: El saldo en la divisa del producto que corresponde a la existencia total indicada en Cantidad. Captura rápida de productos Algunas veces puede que lo más conveniente sea capturar un grupo de productos con características muy similares, lo ideal para este trabajo es hacerlo mediante una tabla similar a Excel. MaxiComercio incluye el asistente para “captura rápida”. Instrucciones: 1. 2. 3. 4. En el Backoffice de MaxiComercio vaya al módulo de Inventarios Pulse el botón “Agregar” y seleccione la opción “Asistente para captura rápida” Complete los pasos del asistente Introduzca los datos de los productos ya sea escribiéndolos o “pegándolos” desde otra aplicación. Carga de información de clientes y cuentas por cobrar Importar el catálogo de clientes Para importar los datos requiere: • • Tener instalado Excel (se utiliza la biblioteca COM de Excel) Descargar la plantilla predeterminada desde: Grupo Execom de Chiapas S.A. de C.V Certificación como Asesor MaxiComercio http://www.induxsoft.net/download/gexecom/tools/PruebaCliente.zip Instrucciones: 1. Use la plantilla para capturar o “pegar” y acomodar los datos que requiere importar. 2. Desde el Backoffice de MaxiComercio vaya al menú Aplicación->Intercambiar datos y seleccione el programa “importar clientes desde Excel.js” Campos que debe llenar obligatoriamente en la plantilla: o Código: Es el código que tendrá que asignar al cliente, puede ser compuesto por letras y/o números si lo desea. o Nombre: La descripción del nombre y apellidos. o Divisa: es el código de la moneda que se asignará al cliente PMX (pesos mexicanos) es la predeterminada. o Tipo: El código del tipo de cliente o Ciudad: Código de la ciudad. o Dirección: Dirección del cliente Importar los saldos iniciales por cobrar Nota: Se importa el saldo inicial como un solo movimiento a la cuenta de cada cliente. Para importar los datos requiere: • • Tener instalado Excel (se utiliza la biblioteca COM de Excel) Descargar la plantilla predeterminada desde: http://www.induxsoft.net/download/gexecom/tools/PruebaSaldos.zip Instrucciones: 1. Use la plantilla para capturar o “pegar” y acomodar los datos que requiere importar. 2. Desde el Backoffice de MaxiComercio vaya al menú Aplicación->Intercambiar datos y seleccione el programa “ActualizarSaldosXCobrarXLS” Campos que debe llenar obligatoriamente en la plantilla: o Código: Es el código del cliente Grupo Execom de Chiapas S.A. de C.V Certificación como Asesor MaxiComercio o Saldo: Es el adeudo inicial, el cual será reflejado en el sistema como cuentas por pagar. Lección 1.9 – Respaldar la base de datos y el repositorio Objetivo. Conocer las técnicas disponibles para el respaldo y restauración de bases de datos y del repositorio de subprogramas. Respaldar y restaurar el repositorio Para hacer una copia de respaldo simplemente copie la carpeta del repositorio a otra ubicación o dispositivo de respaldo. Para restaurar el respaldo debe: 1. Instalar y configurar MaxiComercio y el repositorio predeterminado por la instalación 2. Sobrescribir el repositorio de la instalación con su copia de respaldo El repositorio se debe respaldar si ha creado o modificado reportes, adecuado formatos de impresión o creado o modificado formularios o programas JavaScript. Respaldar una base de datos Access Aunque no se recomienda en lo absoluto usar una base de datos Access en un entorno de trabajo real, puede que requiere hacer una copia de respaldo, para hacerlo simplemente copie el archivo de datos que se encuentra en el repositorio en la carpeta Data hacia una ubicación o dispositivo de respaldo. Para restaurarla puede: • • Configurar una base de datos con el asistente de configuración de servidor y luego sobrescribirla con su copia de respaldo o Crear una conexión con el administrador de conexiones hacia el archivo de respaldo (puede que necesite actualizar la lista de ubicaciones de confianza) Respaldar una base de datos MySQL Grupo Execom de Chiapas S.A. de C.V Certificación como Asesor MaxiComercio Use la herramienta mysqldump disponible con el conjunto de programas disponibles que se instalan con el servidor MySQL. Esta herramienta se encuentra en la carpeta Bin del directorio de instalación de MySQL. Para efectuar una copia de seguridad deberá asegurarse que no se está trabajando con la base de datos (que no haya ningún usuario conectado). La línea de comando para generar un archivo de respaldo es: Shell> mysqldump –uUsuario –pContraseña BaseDatos_aRespaldar>Ruta\respaldo.sql Para restaurar la base de datos desde el archivo de respaldo es necesario que: 1. Cree una vacía con el asistente para configurar base de datos MySQL de MaxiComercio. (Esto se debe a que MaxiComercio crea procedimientos almacenados y disparadores (Triggers) que el volcado con mysqldump mostrado en el ejemplo no respalda). 2. Abrir la consola de comandos de MySQL, ingrese con la contraseña de administrador y seleccione la base de datos en la cual desea realizar la restauración como sigue: mysql>use NombreBaseDatos mysql>source ruta_archivo_respaldo.sql Puede que necesite actualizar la lista de ubicaciones de confianza. Respaldar una base de datos SQL Server El respaldo y restauración de una Base de Datos en SQL Server es un procedimiento muy sencillo de llevar a cabo utilizando el Management Studio. Los pasos que hay que seguir para realizar esta tarea son los siguientes: • Respaldar: 1. Abrir el Management Studio, para ello ir al menú Inicio de Windows, desplegar la lista de todos los programas, después desplegar las opciones de Microsoft SQL Server y luego dar clic al icono SQL Server Management Studio. 2. Expandir la carpeta Bases de Datos, dar clic derecho sobre la base de datos a respaldar y a continuación ir a TareasCopia de Seguridad. 3. Aparecerá una ventana con varias opciones a elegir, opcionalmente puede cambiar la ubicación del respaldo, una vez cambiando las opciones deseadas o dejando las opciones predeterminadas dar clic en Aceptar. 4. Ir a la carpeta donde se encuentra el respaldo creado. Si no cambió la ruta, de forma predeterminada se guarda en la carpeta: Grupo Execom de Chiapas S.A. de C.V Certificación como Asesor MaxiComercio C:\Archivos de programa\Microsoft SQL Server\MSSQL.1\MSSQL\Backup\ 5. Copiar el archivo en un medio de almacenamiento como USB, CD, etc. • Restaurar: 1. Copiar el respaldo creado previamente a la raíz de la unidad C: (Esto por comodidad al realizar la restauración). 2. Abrir el Management Studio, para ello ir al menú Inicio de Windows, desplegar la lista de todos los programas, después desplegar las opciones de Microsoft SQL Server y luego dar clic al icono SQL Server Management Studio. 3. Dar clic derecho sobre la carpeta Bases de Datos y a continuación en Restaurar base de datos. 4. Aparecerá una ventana, en el apartado Destino de la restauración, en el campo “A una base de datos” escribir el nombre para la base de datos a restaurar (Es importante que el nombre sea el mismo que tenía anteriormente). 5. En el apartado Origen de la restauración, seleccionar “Desde dispositivo” y dar clic en el botón que tiene 3 puntos (…) que aparece a la derecha. 6. Aparecerá una ventana en la cual hay que dar clic en el botón Agregar. De forma predeterminada en el árbol de carpetas aparece seleccionada la carpeta usada por defecto para los respaldos de SQL Server. 7. Seleccionar el archivo de respaldo y dar clic en Aceptar. Grupo Execom de Chiapas S.A. de C.V