195
editorial
Protección de datos
A
ctualmente, cuando se habla de las tecnologías de la información se tiende a hablar de nuevos dispositivos de hardware, de nuevas aplicaciones, de avances metodológicos para elaborar una información más consistente aplicando tal o cual lenguaje o herramienta, etcetera. Sin embargo se suele pasar por alto o se tiene muy asumida la base que hace posible la existencia de esos recursos. Esta base es la propia información contenida en los datos que procesan esos sistemas informáticos; sin duda, uno de los principales activos de cualquier empresa u organización porque esta información se puede transformar en conocimiento y facilitar la toma de decisiones, es decir, dinero. En el momento que se habla de dinero es cuando la información adquiere protagonismo. La información es susceptible de ser perdida, deteriorada, revelada o incluso robada. De ahí surge la legislación que protege los datos de caracter personal para garantizar los derechos fundamentales de las personas; o para regular la veracidad de los datos económicos y establecer las medidas de seguridad que se han de adoptar para preservar esa información según su relevancia. Y de ahí, también, los Temas de portada de este número.
Imagen de portada: Mike Friehauf Suscripción: Anual (10 números al año, no en Julio y Agosto). España: 96 euros (IVA incluido). Se distribuye a final de mes. © Publicaciones HELP400, S.L. Se prohibe la reproducción total o parcial de los artículos aparecidos en este número sin la autorización expresa por escrito de la empresa editora, titular del Copyright. Todos los derechos reservados en cualquier idioma. ServerNEWS es una publicación independiente de grupos de usuarios y/o de distribuidores de marcas. De las ideas expuestas en los artículos firmados son responsables sus autores. Corresponde al lector el asegurar que las noticias, técnicas y procedimientos descritos son adecuados para su instalación. Publicaciones HELP400 S.L. no asume ninguna garantía ni implícita ni explicitamente. Tirada: 4.000 ejemplares. La empresa editora no se responsabiliza de la asiduidad en la distribución gratuita a las empresas españolas equipadas con System i, iSeries o AS/400. IBM y AS/400 son marcas registradas por International Business Machines.
Debido a la naturaleza inherentemente segura de IBM i, muchas instalaciones confían en los valores predeterminados del sistema para “proteger” los datos de la empresa. Sin embargo, como veremos en el artículo “Protección de datos de DB2: opciones y fundamentos”, los valores por defecto son realmente insuficientes. Para obtener la mejor seguridad se requieren cuidados regulares y diligentes, estableciendo una adecuada política de perfiles y autorizaciones a diferentes niveles que protejan los recursos de la información. Un artículo largo pero esclarecedor cuyo artículo complementario nos permite saber qué pasos debemos seguir para salvar y recuperar con éxito la información de seguridad establecida para salvaguardar nuestros datos. La continua evolución de las tecnologías de la información sin duda favorece el desarrollo económico y la eficacia administrativa, pero también facilita ilimitadas posibilidades para recoger datos, tratarlos, conservarlos y transmitirlos... Desde la Redacción, y esperando que este número les ayude a determinar las funciones, niveles de acceso y responsabilidades para protejer los datos de sus aplicaciones, les deseamos felices vacaciones.
Antonio Montía
[email protected] JUNIO-JULIO 2009 ServerNEWS 3
sumario ANTES HELP400, LA REVISTA PARA EL PROFESIONAL DE LOS S/3X Y AS/400
en portada
equipo editorial Director: Antonio Montía Redacción: Carlos Bell, Alberto C. Blanch, Equipo internacional de iSeries NEWS Colaboradores habituales: Jaime Gustavo Estany, José Mª Martín, Lluís Peiret Traducciones: Pere J. Francisco Brumós
10
Protección de datos de DB2: opciones y fundamentos por Terry Ford y Kent Milligan En seguridad, los valores predeterminados del sistema IBM i no son suficientes. Este artículo le ayudará a determinar y delimitar las funciones, perfiles, niveles de accesos y responsabilidades que atañen a todos aquellos que tratan con sus bases de datos.
producción Realización: Media Limits S.L. Impresión: Resmacrom S.L. Distribución: Unipost S.A.
administración Suscripciones : Nuria Navarro Publicidad: Tel. 34- 932 310 049 Fax: 34-932 310 309 Servicio HelpNet: www.help400.es
20
edita PUBLICACIONES
Asegúrese de poder recuperar la información de seguridad por Carol Woodbury El objetivo de este artículo es garantizarle que puede recuperar la información de seguridad, pero para que la recuperación tenga éxito, primero hay que salvar los datos adecuados.
Deposito legal: B-2757-90 I.S.S.N. 1698-4501 APTDO. DE CORREOS 8003 - 08080 Barcelona Gran Vía Corts Catalanes, 715, Entlo. 3ª 08013 - Barcelona Tel.: 932 310 049 E-mail:
[email protected] Director General: Alberto C. Blanch Llangostera Publicado con la participación de - iSeries NEWS www.pentontech.com Group Publisher/Editor: Wayne Madden Group Editorial Director: Dale Agger Penton Technology Media Darrell C. Denny, President Penton Media, Inc. David Nussbaum, Chief Executive Officer
LATINOAMERICA
distribuidores Belice, El Salvador, Guatemala y Honduras VIACOMP 6ª Avenida. "A" 2-83 Zona 10 Ciudad de Guatemala, GUATEMALA 01010 Telf. 502-360-0358 y 360-0350 Fax 502-332-33694 email:
[email protected] www.viacomp.net Perú COMMON PERU Bajada Balta 131, Of. 10, 2º Piso Miraflores Lima 18, PERU Telf. y Fax: 46 31 32 Paraguay ANGEL LIERNUR E HIJO P.O. BOX 2448 ASUNCION - PARAGUAY
[email protected] e-mail:
[email protected]
4 ServerNEWS JUNIO-JULIO 2009
opinión
8
Manifiesto por el IBM i, un ejemplo a seguir por Alberto C. Blanch En el artículo “Seamos i-vangelistas del entorno AS/400” (Num.186) nos decíamos: Si IBM no proclama las virtudes de su IBM i es de suponer que es porque espera que lo hagamos nosotros... En Japón, y al margen de sus rivalidades, 71 ISV’s y BP’s de IBM así lo han entendido y han pasado a la acción.
Nº 195 JUNIO-JULIO 2009
www.help400.es
programación y sistemas
24
Utilice C# para consumir servicios web por Craig Pelkie Puede utilizar Visual Studio 2008 y Microsoft .NET Framework para desarrollar y probar en muy poco tiempo una aplicación consumidora de servicios web, es decir, un programa que se ponga en contacto con un servicio web existente y que funcione con sus datos.
en directo
28
Encuentros Power Systems 2009
ServerNews edición digital
por Alberto C. Blanch El pasado mes de Mayo, y después de una pausa de varios años, Software Greenhouse en colaboración con Common España organizó la 3ª Edición de sus “Encuentros”. Por primera vez se convocaban conjuntamente usuarios de las plataformas “i” y “p”.
trucos y técnicas
30
Llamar a un procedimiento con RPG de formato libre
31
Descarga rápida de todos los miembros fuente en un PC
por Scott Klement Cuando se presentó el formato libre, IBM dejó de dar soporte a los códigos de operación CALL y CALLB, ya que los prototipos eran una opción mucho mejor. Sepa como utilizarlos.
por Scott Klement Para ello el autor propone dos formas fáciles de hacerlo. Para una hay que utilizar WDSc y para la otra FTP.
forum.help400 F orum.help400 es una lista de correos puesta a disposición de los lectores de ServerNEWS en la que cada día, entre todos los participantes, se solucionan numerosos problemas. Hallará más información en http://www.help400.es/forum.htm
1
IBM Systems Director Navigator para i
9
Restringir la informática móvil
Por Greg Hintermeister Con el “Systems Director Navigator para i” IBM proporciona a los usuarios una herramienta basada en web intuitiva, rápida y robusta para gestionar el sistema operativo IBM i. Si todavía no lo conoce, éste es un buen momento para hacerlo.
Por Erwin Earley Pocas organizaciones se toman en serio la seguridad de sus recursos informáticos móviles. Sin embargo, éstos cada vez son más comunes y más frecuentes los incidentes. Su lectura es obligada y un buen complemento a los artículos de portada de este número.
SECCIONES HABITUALES
3 6 32 34
Editorial Novedades Guia Confidencial JUNIO-JULIO 2009 ServerNEWS 5 JUNIO-JULIO 2009 ServerNEWS 5
novedades Los IBM Power Systems gestionan las recetas electrónicas de toda Extremadura Consejería de Sanidad y Dependencia de la Junta de Extremadura, a través del SerL avicio Extremeño de Salud, ha finalizado la implantación de la receta electrónica en las 680 farmacias de Extremadura, tras 9 meses de trabajo conjunto con los Colegios de Farmacéuticos de la Región y con la empresa IBM. Actualmente, todos los centros de salud y farmacias extremeños están informatizados y habilitados para prescribir y dispensar medicamentos a través de la receta electrónica. En este proyecto, IBM ha participado como socio tecnológico, proporcionando servicios de consultoría e integración de sistemas, así como la plataforma tecnológica necesaria para acometer la implantación. La plataforma tecnológica se compone principalmente de software de aplicaciones WebSphere y Sistemas Power, servidores de gama alta caracterizados por su robustez, potencia de proceso y capacidades de virtualización. Gracias a la apuesta de la Junta de Extremadura, de los Colegios de Farmacéuticos de la Región e IBM por el uso de los estándares sanitarios, el sistema extremeño de receta electrónica ha podido diseñarse para que pueda conectarse con los sistemas de otras Comunidades Autónomas. El funcionamiento de la receta electrónica es sencillo y ofrece ventajas tanto al médico como al paciente y oficinas de farmacia. Se procede de la siguiente manera: 1. El médico accede a JARA, el sistema de información de gestión sanitaria del Servicio Extremeño de Salud donde se aloja el historial clínico electrónico del paciente y cuya implantación también ha sido realizada por IBM. 2. JARA proporciona herramientas de ayuda a la prescripción y permite que el médico prescriba un tratamiento de hasta un año de duración. Este tratamiento queda registrado en el sistema, actualizándose el historial clínico electrónico del paciente. 3. Como ayuda al paciente, el médico le entrega un documento con los medicamentos prescritos y la pauta que el paciente debe seguir. Este impreso cuenta con un código de barras o “marca de identidad” de ese tratamiento concreto para ese paciente. 4. En la oficina de farmacia, el farmacéutico visualiza en su ordenador, gracias a un lector de código de barras, el tratamiento prescrito en el impreso. El farmacéutico sólo puede acceder a ese tratamiento en concreto, garantizándose la confidencialidad de la información sobre el paciente. Cada vez que el paciente necesite su medicamento, no tiene que volver al centro de salud a por nuevas recetas, ya que con su tarjeta sanitaria y ese documento con la marca de identidad, el farmacéutico podrá acceder al sistema de receta electrónica y dispensarle lo que indicó el médico, lo que ahorrará tiempo y desplazamientos innecesarios. 5. El farmacéutico anota en el sistema la entrega del medicamento. Esta información queda reflejada en el historial electrónico del paciente, de tal manera que el médico puede comprobar que el medicamento le ha sido dispensado. 6. El paciente puede consultar sus dudas al farmacéutico, las cuales quedan registradas en el sistema, que las enviará al médico que lleva a ese paciente en concreto. La receta electrónica tiene ventajas para toda la sociedad. En primer lugar, proporciona una mayor seguridad al ciudadano sobre su salud, ya que facilita el seguimiento y control de los tratamientos. También mejora la calidad asistencial, ya que los médicos tienen más tiempo (hasta un 30%) para atender a los pacientes. Además, los pacientes ahorran tiempo en desplazamientos y, por otro lado, la atención sigue siendo constante, porque pueden consultar cualquier duda al farmacéutico que está en contacto directo con los profesionales de la salud a través del sistema informático. También es beneficioso para los farmacéuticos, que eliminan burocracia y su función como agente sanitario adquiere más protagonismo. Para más información, http://www.ibm.com/es/press
6 ServerNEWS JUNIO-JULIO 2009
■ Los distribuidores europeos de ASNA se agrupan en una sola empresa Tenemos el placer de comunicarles que desde el 1 de Junio de 2009 ASNA Limited y la totalidad de sus distribuidores en Europa hemos unido nuestras organizaciones y hemos creado ASNA International. Con esta nueva organización, ASNA Internacional ofrece a los clientes actuales y al mercado en general una mejora y una mayor eficacia en la coordinación del conjunto de sus servicios. Carlos Valero, hasta la fecha líder de la organización en España, Cacovai, dirige a partir de este momento la totalidad de la organización en Europa con el soporte de Anne Fergusson en el área de influencia inglesa (UK, Irlanda, Escandinavia, Islandia y Países Bajos), Francesco Dugar director para las operaciones en Italia y Christian Niessl como responsable de los mercados de Alemania y Centro Europa. Carlos Valero incorpora su amplia experiencia en la tecnología ASNA y en la modernización y migración de sistemas iSeries y AS/400, y sus conocimientos en el mundo de la tecnología y de las organizaciones empresariales de una amplia gama de sectores. Tim Janssen, hasta ahora Director Técnico de ASNA Limited, toma en la nueva organización la responsabilidad de los equipos técnicos y de las áreas de servicio al cliente y formación. Por supuesto, Sandra Brind seguirá como responsable de operaciones. ASNA Internacional incorpora en su estrategia el impulso de la comunicación con las direcciones técnicas de sus clientes y tiene previsto un plan de reuniones por países que faciliten el conocimiento de novedades y la participación de los clientes en la implementación de las soluciones ASNA, para la Modernización, Innovación y un óptimo aprovechamiento de las herramientas ASNA tan extendidas en el mercado. Para más información, Telf.: 902.365.787
■ Saytel recibe el IBM Business Partner Award por séptimo año consecutivo
■ Actualización de IBM AIX para prevenir vulnerabilidades en OpenSSL
■ Indra y Cisco se alían para el desarrollo de nuevas tecnologías en seguridad y defensa
Saytel, compañía del grupo Seidor especializada en soluciones de Infraestructuras de Sistemas y de Negocio basadas en tecnología IBM, ha sido distinguida por séptimo año consecutivo con el premio IBM Business Partner que IBM concede a sus socios de negocio, por su contribución a los resultados de la división de Sistemas y Tecnología (STG) y su dedicación e implicación en negocios complejos. El galardón, cuya entrega tuvo lugar en la XIII Conferencia Nacional de BP’s, fue recibido por Antonio Sales, Director General de Saytel, de manos de Juan Antonio Zufiria, Presidente de IBM para España, Portugal Grecia e Israel. La concesión ha sido posible gracias a los proyectos acometidos por Saytel en las áreas de Consolidación, Virtualización, Alta Disponibilidad, Integración con SAP y Mantenimiento de Infraestructuras IT. También han jugado un papel decisivo las soluciones de negocio de Gestión Documental y BPM, integradas en un mismo escritorio a través de soluciones de colaboración y portales empresariales. En estos momentos de incertidumbre económica “La distinción de IBM tiene para nosotros un gran valor en estos momentos y nos anima a seguir trabajando, buscando la máxima calidad y la excelencia para nuestros clientes. Agradecemos la confianza depositada por todos nuestros clientes y colaboradores en el último año y nos comprometemos a seguir trabajando en el camino de la innovación”, declaró Antonio Sales. Para más información, Telf.: 932.388.870 http://www.saytel.es
IBM ha publicado una actualización para OpenSSL incluido en AIX, para corregir tres vulnerabilidades que podrían ser explotadas por usuarios maliciosos evitando restricciones de seguridad o provocando denegaciones de servicio. Esta era una solución muy esperada debido a la importancia que tienen las soluciones basadas en SSL para la confidencialidad en general y comercio electrónico en particular. El primero de los problemas corregidos reside en la función "CMS_verify" de OpenSSL debido a que no maneja correctamente las condiciones de error al procesar una estructura CMS no válida. Esto podría ser aprovechado por un atacante remoto para evadir restricciones de seguridad haciendo pasar por válido un certificado no válido. También se ha corregido la función "ASN1_STRING_print_ex" de OpenSSL que no filtraba correctamente la longitud de codificación de las estructuras de datos "BMPString" y "UniversalString". Esto podría ser aprovechado para causar una denegación de servicio. Por último, se ha corregido un error al procesar estructuras de datos del tipo ASN.1 que podría provocar un acceso a memoria no válida. Esto permitiría a un atacante remoto causar una denegación de servicio a través de datos que contengan la estructura del tipo ASN.1 especialmente manipulada. Son vulnerables todas las versiones de OpenSSL anteriores a la 0.9.8.803 en AIX 6.1, AIX 5.3 y AIX 5.2. Hallará más información en: http://aix.software.ibm. com/aix/efixes/security/ssl_ advisory.asc
Indra, la multinacional de TI número 1 en España y una de las principales de Europa, ha anunciado hoy la firma de un acuerdo internacional con Cisco para colaborar en la investigación y el desarrollo de nuevas tecnologías y soluciones para las industrias de la defensa y la seguridad. El “Memorándum de Entendimiento” fue firmado por el Consejero Delegado de Indra, Regino Moranchel, y el presidente de Cisco para Europa, Chris Dedicoat, informó la compañía tecnológica. El acuerdo permitirá a las dos compañías reforzar sus posiciones en mercados con un alto potencial de crecimiento en los próximos años y se centrará inicialmente en tecnologías como la
movilidad, las redes inalámbricas, los centros de datos móviles, la solución Telepresencia de Cisco o la videovigilancia IP. Bajo los términos del Memorándum de entendimiento, Indra y Cisco podrán llevar la colaboración entre ambas en el futuro, a otros segmentos de mercados, tanto públicos como privados, en áreas como la sanidad o las ciudades inteligentes, donde ya cuentan con una reconocida experiencia en innovación. Regino Moranchel afirmó que “En situaciones como la actual, la sociedad y las empresas necesitan más que nunca la tecnología y la innovación para aprovecharse de las transiciones de mercado. Estamos convencidos de que el acuerdo que hoy firmamos con Cisco constituye una importante iniciativa en este ámbito”. Para más información, Telf.:914.805.000 http://www.indra.es
Si como proveedor posee alguna novedad relacionada con el entorno System i - iSeries AS/400 de IBM, recuerde que en esta sección dispone de un espacio gratuito para darla a conocer a todos nuestros lectores. Puede enviar sus notas de prensa a Ser ve rNEWS mediante correo electrónico (
[email protected]), o bien a Gran Vía Corts Catalanes, 715, Entlo 3ª 08013 Barcelona. Para la inclusión de fotografías o logos, agradeceríamos que las remitieran en formato electrónico.
JUNIO-JULIO 2009 ServerNEWS 7
opinión
por Alberto C. Blanch
Manifiesto por el IBM i, un ejemplo a seguir
E
n repetidas ocasiones hemos escrito y divagado en la revista sobre el futuro del entorno IBM i (AS/400) y ésta no es ninguna excepción. No teníamos previsto volver a abordar el tema en este número, pero una entrada reciente en el blog de Chris Maxcer, (blogs.systeminetwork.com/isnblogs/maxedout/), el redactor de noticias de System iNEWS, nos hizo cambiar de idea. En su texto, Chris ponía de relieve la iniciativa emprendida por una coalición japonesa de 71 ISV’s y Business Partners de IBM para revitalizar y promover activamente el IBM i en Power Systems y lograr incrementar su base instalada de clientes en Japón, el segundo mercado más grande en Tecnologías de la Información. La primera acción de esta iniciativa, conocida simplemente como IBM i Manifest, fue publicar a principios de año el “Manifiesto por el IBM i” –cuya traducción literal reproducimos en la página adjunta, a partir de la versión inglesa disponible en www.iforum.ne.jp – en un anuncio a página completa en el diario Nikkei, el diario financiero más influyente de Japón, similar al Wall Street Journal, y cuya inserción, en EE.UU., habría costado unos 100.000 dólares. Evidentemente, todo un alegato y un compromiso dirigido a la opinión pública en favor del IBM i, detrás del cual se esconde la arquitectura del AS/400, especialmente creada para la gestión empresarial. Esta característica fue el elemento distintivo del sistema y lo sigue siendo hoy en día: permite a las compañías “olvidarse” de los procesos informáticos en sí mismos y centrarse en sus procesos de negocio para ser más efectiva, más competitiva y ofrecer un mejor servicio a sus clientes, sin miedo a que un cambio en el sistema operativo o en la evolución tecnológica de sus máquinas, invaliden su inversión; por cierto, un hecho que suele ser frecuente en otras plataformas.
Aquí, como en Japón, Europa o Estados Unidos... Sin embargo, el trasfondo de esta historia es debido a la falta de interés demostrado por la propia IBM. Como comenta en http://midmed.blogspot.com/ Martin Fincham, general manager de LANSA en Europa, citando a su colega Gordon Davies, Vice Presidente de LANSA en Asia/ Pacífico, “Los socios de la coalición japonesa han adoptado esta insólita medida como respuesta a un cambio en el 8 ServerNEWS JUNIO-JULIO 2009
enfoque del marketing corporativo de IBM y del posicionamiento de sus servidores. Ahora IBM, bajo sus campañas mundiales de marketing (como Smarter Planet) promueve antes sus ofertas de software y servicios que las de su hardware. El Grupo de Sistemas y Tecnología de IBM ofrece una gama de plataformas de servidor con soporte de sistemas operativos que en muchos casos también promueven otros proveedores y colectivos –Linux, Unix (AIX) y Windows. Por contra, IBM i y z/OS son propiedad de IBM y por eso requieren unas estrategias de marketing, ventas y soporte distintas....” Concluye que, como la cruda realidad es que IBM ha descuidado sus responsabilidades en ese campo, ahora es a la comunidad a quien le corresponde asumirlas.
Seamos i-vangelistas del entorno AS/400 Tiene razón. Todos nuestros lectores recordarán que en el número de septiembre de 2008 (el 186) y bajo el título genérico de “Seamos i-vangelistas del entorno AS/400”, un riguroso estudio realizado por Robert Tipton a partir de los resultados económicos publicados por IBM desde el año fiscal de 1997 hasta 2007, muestra claramente que desde hace años la estrategia de IBM está centrada en los servicios que, con gran diferencia, son los que más contribuyen en sus resultados. Tras su lectura uno se preguntaba: ¿Por qué una compañía de servicios querría promocionar algo como el IBM i en el que todo está integrado y que, además, funciona? Por eso aquel legendario AS/400, creado para la gestión empresarial, ha desaparecido víctima de si mismo y de un hardware genérico donde otros sistemas operativos sí pueden requerir servicios. Y nos decíamos: Si IBM no proclama las virtudes de su IBM i es de suponer que es porque espera que lo hagan otros... En Japón, y al margen de sus rivalidades comerciales, 71 ISV’s y Business Partners así lo han entendido y han pasado a la acción. Finalmente, si tiene intereses comerciales en el mercado AS/400 y quiere cooperar en nuestro proyecto de “ivangelización”, déjenos un comentario y su dirección email en http://help400.blogspot.com/ y nos pondremos en contacto. ■ Alberto C. Blanch, con más de 25 años de experiencia en entornos medios de IBM, es el director y fundador de esta revista.
IBM i Manifest Declaración conjunta de 71 Partners de IBM i en Japón En respuesta a las expectativas del mercado sobre la Gestión e Innovación empresarial El año pasado, el IBM i cumplió veinte años. La plataforma se presentó ante el mundo como AS/400 y ha cambiado de nombre varias veces, pero el concepto básico y la arquitectura fundamental siguen siendo los mismos. Desde su génesis, el IBM i se diseñó para ser un “sistema realmente útil para las empresas” y siempre ha integrado ávidamente las tecnologías más avanzadas. No conocemos otras máquinas aparte del IBM i que hayan protegido tan decididamente los activos de sus usuarios durante veinte años y que seguirán protegiéndolos en el futuro. Pensamos que tenemos la misión de divulgar sus excelencias y su superioridad. Podemos describir el IBM i con razón como “un milagro en la historia de los ordenadores”, especialmente si hablamos con los responsables de la gestión empresarial, desde los ejecutivos hasta los que trabajan en los departamentos de informática. Todos los que trabajamos en el sector seguimos librando una feroz batalla, para describirlo en pocas palabras, para innovar y crear novedades, en un incesante proceso de innovación en la gestión y la explotación. De la comunicación con muchos de nuestros clientes y de nuestra propia experiencia, creemos firmemente que no habrá progreso sin innovación en el campo de las tecnologías de la información para apoyar a las empresas. El IBM i es famoso por tener el mayor número de clientes que usa una única familia de sistemas. Desde hace más de diez años ocupa la primera posición en la “Encuesta de satisfacción del cliente” que realiza cada año en Japón la revista Nikkei Computer: un brillante récord. La fiabilidad, estabilidad, elasticidad y alto rendimiento de la inversión (ROI) de la plataforma destacan por encima de las demás. Aprovechando la oportunidad que nos ofrece el vigésimo aniversario del IBM i, hemos creado este Manifiesto por el IBM i para pedir a los usuarios que vuelvan a reconocer el valor y los logros de la plataforma. Les pedimos que renueven su confianza en el IBM i y su convicción de que es la mejor infraestructura para respaldar la innovación en la gestión y la explotación. Además, creemos que los méritos de este excelente sistema deben compartirlos muchas más personas. Que se extienda más el uso del IBM i es la mejor forma de que las corporaciones refuercen sus capacidades de gestión y su potencia empresarial. Hemos puesto en marcha actividades para que se unan a la comunidad de usuarios tantas empresas nuevas como sea posible. Los miembros que apoyamos este Manifiesto por el IBM i estamos muy orgullosos de haber ayudado a nuestros clientes durante muchos años con este producto tan poco común, el IBM i. Actuaremos en todos los campos, de forma continua y variada, para ayudar a los ejecutivos de las empresas a reconocer los méritos, las excelencias y los logros del IBM i. Los 71 miembros firmantes de este manifiesto estaremos al lado de los usuarios del IBM i en el futuro. Prometemos ofrecer soluciones en forma de productos y servicios que incrementen el valor corporativo de nuestros clientes. Enero de 2009 Comité Ejecutivo del Manifiesto por el IBM i (Japón)
JUNIO-JULIO 2009 ServerNEWS 9
Protección de datos de DB2: opciones y fundamentos Para obtener la mejor seguridad se requieren cuidados regulares y diligentes por Terry Ford y Kent Milligan
H
oy en día, constantemente oímos noticias sobre datos que se han perdido. De hecho, sólo en los Estados Unidos, han resultado comprometidos más de 250 millones de registros de datos en unos mil incidentes desde el año 2005 (privacyrights.org/ar/ChronDataBreaches.htm). Forrester Research estima que el coste de remediar la situación es de entre 90 y 305 dólares por registro expuesto (informationweek.com/news/security/showArticle.jhtml?articleID=199000222). Es evidente que estas violaciones de la seguridad le salen muy caras tanto a los individuos que las sufren como a las compañías involucradas. Hasta la fortaleza que conocemos como DB2 es vulnerable, por lo que vamos a explorar las tecnologías y las técnicas disponibles para proteger nuestras bases de datos en IBM i.
Datos = Activos Mucha gente ve los “datos” únicamente como la entrada y salida de los programas o como la información que sirve para generar informes. Pero, si poner remedio a una violación de los datos tiene un coste, será porque los datos tienen valor, por lo que ya no son sólo información, sino un activo. De hecho, el Data Governance Council de IBM recientemente predijo que los datos se convertirán en un activo más del balance y que el control de los datos se convertirá en una obligación legal para las empresas (ibm.com/press/us/en/pressrelease/24585.wss). Si esto fuera así, en los departamentos de informática tendremos 10 ServerNEWS JUNIO-JULIO 2009
que cambiar la forma en que pensamos en la seguridad de los datos. Las empresas ya no deben banalizar los esfuerzos que hay que hacer para proteger los activos, sino reconocer que protegerlos es un gasto más de la empresa.
Fundamentos de la seguridad Antes de empezar a examinar las técnicas de seguridad de la base de datos, necesitamos examinar dos pasos fundamentales para proteger los activos de información. El primero y más importante es la definición de la política de seguridad de una empresa. Sin una política de seguridad, no es posible definir lo que es una práctica aceptable de usar, acceder y almacenar información, ni por parte de quién, qué, cuándo, dónde y cómo. Una política debe abordar mínimamente tres aspectos: confidencialidad, integridad y disponibilidad. La supervisión y la conformidad con la política de seguridad determinan si la estrategia de seguridad está funcionando. Con frecuencia, a los consultores de IBM les piden que realicen evaluaciones de seguridad para empresas sin tener en cuenta la política. Aunque esta evaluación puede ser útil para ver cómo está definido actualmente el sistema y cómo se accede a los datos, no permite determinar el nivel de seguridad ya que, sin una política, realmente no es tanto una evaluación como un punto de partida desde el que supervisar y capturar los cambios en las opciones de seguridad. Una política de seguridad es la que define si el sistema y sus valores son seguros (o no). Un consejo: la Ley de transferibilidad y responsabilidad de seguros médicos (HIPAA) de 1996,
el Estándar de seguridad de datos del sector de las tarjetas de crédito (PCI DSS) y otros requisitos que debe cumplir el sector, pueden requerir controles que invaliden la política de seguridad de la empresa. Por lo tanto, debería permanecer atento a la legislación y a las normativas del sector y ajustar su política en consecuencia. El segundo paso fundamental para proteger los activos de datos es el uso de la seguridad de los recursos. Si se aplica como es debido, la seguridad de los recursos está estrechamente vinculada con la parte de la política de seguridad que define quién debe tener acceso a qué recursos de información. Un hacker puede ser lo bastante bueno como para atravesar los cortafuegos de la empresa y colarse en el sistema, pero si no tiene acceso explícito a la base de datos, no podrá poner en peligro los activos de información. Ahora que ya sabe cuál es la importancia que tiene proteger los activos de información, vamos a examinar los métodos disponibles para proteger los recursos de la base de datos en IBM i.
La situación actual de la seguridad del i: los valores predeterminados no son suficientes Debido a la naturaleza inherentemente segura de IBM i, muchos clientes confían en los valores predeterminados del sistema para “proteger” los datos de la empresa almacenados en DB2 para i. En la mayoría de casos, esto significa que no hay ninguna protección ya que todos los usuarios tienen autorización *CHANGE sobre los datos. Lo que es más preocupante es que muchos clientes de IBM i continúan así, a pesar de los titulares y de los elevados costes que supone una base de datos comprometida. Esta configuración predeterminada hace que poner en funcionamiento políticas de seguridad básicas sea un auténtico desafío. Es necesaria una implementación más rigurosa si realmente quiere proteger uno de los activos más valiosos de la compañía: sus datos. Tradicionalmente, las aplicaciones de IBM han utilizado la seguridad basada en menús para contrarrestar la configuración predeterminada que ofrece acceso a los datos a todos los usuarios. La teoría es que los datos están protegidos por las opciones de menú que controlan qué operaciones de base de datos puede realizar el usuario. Este método no es eficaz... ni siquiera si el perfil del usuario tiene restringida la ejecución de mandatos interactivos. La razón es que en el mundo interconectado de hoy en día hay multitud de interfaces en el sistema, desde navegadores hasta clientes de PC, que se saltan completamente los menús de las aplicaciones. Si no existen controles a nivel de objetos, los usuarios de estas nuevas interfaces tienen una puerta abierta a los datos. Algunos clientes que utilizan la configuración predeterminada han reforzado la seguridad de la base de datos
con soluciones de puntos de salida de otros proveedores. Los puntos de salida de IBM i permiten llamar a un programa escrito por el usuario cada vez que se usa una interfaz concreta (por ejemplo, FTP) o que se produce un suceso determinado (por ejemplo, cada vez que se crea un perfil). Las herramientas de seguridad basadas en estos puntos de salida aumentan el nivel de seguridad de un sistema aislando las interfaces que no están controladas por la seguridad basada en menús o por autorizaciones de las aplicaciones. Además, las soluciones de puntos de salida permiten que los clientes implementen controles de seguridad más detallados, permitiendo, por ejemplo, acceder a los usuarios a la base de datos solamente durante ciertas horas del día. Aunque las soluciones de puntos de salida pueden ser muy útiles, no son una alternativa al control a nivel de objetos de las bases de datos. Las soluciones de puntos de salida ayudan a proteger las interfaces, pero no protegen completamente los datos almacenados en los objetos de DB2. No existen puntos de salida para todas las interfaces de acceso a datos del sistema, de modo que si una aplicación utiliza una interfaz no protegida, la única cosa que protegerá los datos será el control de acceso a nivel de objetos. Si la implementación de la seguridad se basa totalmente en los puntos de salida, deberá estar al tanto de las nuevas interfaces de datos que surgen a medida que IBM publica nuevas versiones y productos. Sólo así podrá garantizar que su solución de puntos de salida incorpora las interfaces nuevas. Una solución de puntos de salida es una buena opción para las bases de datos que tienen agujeros de seguridad debidos a la dependencia en la configuración de seguridad predeterminada o un control basado en menús. Sin embargo, el trabajo en la seguridad no debe finalizar aquí. Por el contrario, tendrá que seguir trabajando en una solución de seguridad completa que controle el acceso a datos en el nivel de objetos.
Métodos de seguridad de DB2 Ahora que ya sabemos por qué son necesarios los controles a nivel de objetos, vamos a ver cuáles son los métodos utilizados normalmente para llevar a cabo una política de seguridad. En el IBM i, las principales metodologías consisten en utilizar el modelo de autorización adoptada por programa o definir autorizaciones privadas para cada objeto.
Método de la autorización adoptada La autorización adoptada por programa puede simplificar la planificación de la seguridad al reducir el número de perfiles de usuario a los que hay que otorgar acceso a objetos de DB2. Debido al bajo número de autorizaciones individuales, este modelo de seguridad es el que más JUNIO-JULIO 2009 ServerNEWS 11
■ EN PORTADA
12 ServerNEWS JUNIO-JULIO 2009
FIGURA 1 Configuración de un programa para instalar la autorización adoptada CHGOBJOWN OBJ(WORKAPP) OBJTYPE(*PGM) NEWOWN(PRFWRKAPP) CHGPGM PGM(WORKAPP) USRPRF(*OWNER)
FIGURA 2 Instalación de la autorización adoptada completada /* Authorize application user to run application */ GRTOBJAUT OBJ(WORKAPP) OBJTYPE(*PGM) USER(APPUSER1) AUT(*EXECUTE) /* Authorize program owner to access DB2 table */ GRTOBJAUT OBJ(WORKTAB) OBJTYPE(*FILE) USER(PRFWRKAPP) AUT(*CHANGE) RVKOBJAUT OBJ(WORKTAB) OBJTYPE(*FILE) USER(*PUBLIC) AUT(*ALL) /* Here is SQL version of Grant & Revoke for DB2 table */ GRANT ALL ON worktab TO prfwrkapp REVOKE ALL ON worktab FROM PUBLIC
fácilmente puede imponer el gestor de seguridad integrado de IBM i. Con este método, el acceso público a los objetos de DB2 se desactiva especificando *EXCLUDE para la autorización *PUBLIC, por lo que el único usuario con derechos de acceso sobre un objeto es el perfil de usuario que es propietario del programa. Cuando un programa se ejecuta en el sistema y hace referencia a objetos de DB2, el comportamiento predeterminado del perfil de usuario del trabajo es validarse según los controles de seguridad establecidos para el objeto al que se hace referencia. Por ejemplo, si APPUSER1 es el perfil de usuario que ejecuta el programa WORKAPP, cuando WORKAPP intente acceder a un objeto de DB2, el gestor de seguridad comprobará si el perfil APPUSER1 tiene la autorización necesaria para realizar la operación solicitada sobre ese objeto de DB2. Con la autorización adoptada por programa, puede crear (o modificar) el programa de manera que utilice la autorización del propietario del programa. Para ello, especifique el parámetro USRPRF(*OWNER) en los mandatos Crear programa (CRTPGM) o Modificar programa (CHGPGM), como se ilustra en la Figura 1. En el ejemplo, suponemos que PRFWRKAPP es el perfil propietario del programa. Ahora, APPUSER1 inicia una sesión y ejecuta el programa WORKAPP. Con la autorización adoptada establecida, cada vez que WORKAPP hace referencia a un objeto de DB2, se comprueban los privilegios de los perfiles de usuario APPUSER1 y PRFWRKAPP para determinar si el programa está autorizado para efectuar la operación de la base de datos especificada. Además de cambiar el programa para que adopte la autorización del propietario, es necesario proporcionar algunas autorizaciones de datos al propietario del programa. Con la autorización adoptada por programa, lo
normal es que solamente tenga acceso a los objetos de DB2 el perfil de usuario del propietario del objeto y que el acceso público se restrinja con *EXCLUDE. Asimismo, los usuarios de la aplicación necesitan la autorización *EXECUTE sobre el objeto de tipo programa. En la Figura 2 se muestra un ejemplo de los mandatos que hay que combinar con los mandatos de la Figura 1 para completar la instalación de la autorización adoptada por programa. En este ejemplo se da por supuesto que WORKTAB es el único objeto de DB2 al que accede la aplicación. Este ejemplo de autorización adoptada debería mostrar cómo la utilización de este modelo puede simplificar la instalación de la seguridad de la base de datos. En lugar de otorgar acceso a la tabla WORKTAB a todos los usuarios de la aplicación, solamente hay que proporcionar privilegios al propietario del programa (PRFWRKAPP) para poder cambiar y leer dicha tabla. La autorización adoptada por programa parece asociada a la tecnología heredada del AS/400, por lo que puede que se pregunte si puede usarse con tecnologías más recientes, como Java y SQL. La respuesta es sí. Cuando SQL está incrustado en un programa, los precompiladores de SQL permiten especificar *OWNER en los parámetros USRPRF (Perfil de usuario) y DYNUSRPRF (Perfil de usuario dinámico). Las mismas opciones existen en la cláusula SET OPTION de los procedimientos, desencadenantes y funciones de SQL. Las aplicaciones escritas en Java no están asociadas con los objetos de tipo programa del IBM i, de manera que no hay objeto de tipo programa que pueda modificarse. Para estas situaciones, las aplicaciones pueden utilizar las API de intercambio de perfiles para emular el modelo de autorización adoptada. Las API de intercambio de perfiles son Obtener handle de perfil (QSYGETPH), Establecer perfil (QWTSETP) y Liberar handle de perfil (QSYRLSPH). Las API de intercambio de perfiles se ejecutan al principio de la aplicación para intercambiar el perfil de usuario que ejecuta la aplicación por un perfil de usuario que tiene las autorizaciones sobre la base de datos que precisa la aplicación. Cuando la aplicación termina de ejecutarse, se usan las API de intercambio de perfiles para liberar el perfil de usuario y volver al perfil original. Esta técnica es parecida al proceso de la autorización adoptada por programa: una vez que finaliza la llamada a programa, al usuario que ejecuta la aplicación se le devuelven las autorizaciones de su perfil de usuario. Hasta aquí, hemos explicado solamente las ventajas del modelo de autorización adoptada. Ahora, vamos a ver cuáles son los inconvenientes. Uno es el riesgo que existe si el programa que se ejecuta con autorización adoptada presenta al usuario una línea de mandatos. Por ejemplo, puede que la aplicación WRKAPP proporcione capacidades JUNIO-JULIO 2009 ServerNEWS 13
■ EN PORTADA de impresión y una opción de menú que lleve al usuario a la interfaz Trabajar con archivos en spool (WRKSPLF). La interfaz de WRKSPLF presenta una línea de mandatos. Las operaciones que ejecuta APPUSER1 desde esta interfaz de línea de mandatos también incluyen las nuevas autorizaciones añadidas con la autorización adoptada (PRFWRKAPP). El usuario de la aplicación es libre de usar estas autorizaciones adoptadas desde la línea de mandatos de la manera que mejor le parezca. Para minimizar este riesgo, puede utilizar el parámetro USEADPAUT en el mandato CHGPGM. No obstante, es evidente que la implementación de la autorización adoptada por programa necesita planificarse cuidadosamente para eliminar cualquier posibilidad de que el usuario pueda utilizar dicha autorización fuera de la aplicación. El modelo de autorización adoptada por programa también exige poder modificar los atributos del objeto programa o el propio código del programa, pero si utiliza programas de IBM o de otros proveedores no podrá hacer estas modificaciones. Piense en el caso de un usuario que desea crear un informe utilizando Consulta/400 o IBM DB2 Web Query para i. En este caso, es necesario algo de programación para que el método de la autorización adoptada funcione. Por ejemplo, puede escribir en CL un programa de envoltura que adopte la autorización necesaria para que funcione el informe de Consulta/400. DB2 Web Query puede pedir que una llamada a un procedimiento almacenado le devuelva un conjunto de resultados, por lo que podría escribir un procedimiento almacenado que adoptara la autorización. ¿Su personal tiene recursos suficientes para crear un programa para cada informe que se le solicite? ¿Qué hacer si es imposible crear una envoltura para las herramientas de otros proveedores como por ejemplo System i Navigator? Tendrá que investigar el software de terceros y las interfaces de la base de datos que no pertenecen a la aplicación de su compañía antes de depender excesivamente de las autorizaciones adoptadas para proteger las bases de datos DB2.
Método de la autorización privada Para aplicar el método de la autorización privada hay que arremangarse para hacer el trabajo duro de analizar y proteger cada objeto de DB2 del sistema con las autorizaciones pertinentes. En vez de definir derechos de acceso para cada perfil de usuario del sistema, en IBM i se pueden usar perfiles de grupo y listas de autorizaciones para reducir el número de privilegios de seguridad que deben otorgarse. El método de la autorización privada probablemente parece demasiado trabajoso. Sin embargo, si su empresa y usted ven los datos almacenados en las bases de datos DB2 como uno de los activos más valiosos de la organización, es fácil justificar el esfuerzo de protegerlos eficazmente. 14 ServerNEWS JUNIO-JULIO 2009
El método de la autorización privada tiene la virtud de proporcionar una seguridad difícil de vulnerar... incluso a medida que con el tiempo van apareciendo nuevas interfaces y aplicaciones. La razón de que su seguridad sea tan eficaz es que con este método se protegen los objetos de la base de datos en lugar de los programas o las interfaces. Como mencionaba antes, el reto es el tiempo necesario para definir y gestionar todas las autorizaciones privadas para cada objeto de DB2. Además, con esta metodología el rendimiento se resiente ligeramente ya que el gestor de seguridad de IBM tiene que procesar y validar más autorizaciones individuales. El impacto en el rendimiento dependerá de varios factores, incluyendo el número de objetos y de autorizaciones. Para simplificar la administración de esta política de seguridad, puede utilizar perfiles de grupo y listas de autorizaciones. Primero veamos los perfiles de grupo. Los perfiles de usuario de IBM i pueden pertenecer a uno o varios grupos. Con esta característica se pueden otorgar autorizaciones a un grupo de usuarios, en lugar de tener que definir autorizaciones para cada perfil de usuario. Por ejemplo, puede que haya un perfil de grupo para la base de datos de ventas (GPSales) y otro perfil de grupo para la base de datos de la nómina (GPPay). Pueden añadirse perfiles de usuario individuales a estos grupos y, a continuación, otorgar autorizaciones sobre el objeto de la base de datos a los perfiles de grupo. Los perfiles de grupo suelen asignarse en función del departamento o del puesto de trabajo que ocupa el usuario (por ejemplo, departamento técnico o cajero). En la Figura 3 se puede ver un ejemplo de cómo se configura un perfil de grupo. Observe en este ejemplo que no hay ningún mandato para crear un perfil de grupo. Un perfil de usuario se transforma implícitamente en un perfil de grupo cuando se hace referencia al perfil de usuario en los parámetros de perfil de grupo –es decir, Perfil de grupo (GRPPRF) y Complementar perfil de grupo (SUPGRPPRF)– de los mandatos CRTUSRPRF o CHGUSRPRF. Generalmente, estos perfiles de grupo se crean con PASSWORD(*NONE), como en este ejemplo, por lo que ningún usuario individual puede usar el perfil de grupo para iniciar una sesión. Observe en el ejemplo que APPUSER3 pertenece a ambos perfiles de grupo. Un perfil de usuario puede pertenecer a un máximo de 16 perfiles de grupo. Los perfiles de grupo no pueden pertenecer a otros grupos. El primer grupo siempre debe especificarse en el parámetro GRPPRF y los grupos adicionales en el parámetro SUPGRPPRF. La principal diferencia entre estos dos parámetros de grupo es que los valores de los parámetros OWNER, GRPAUT y GRPAUTTYP del perfil de usuario individual sólo son aplicables para el perfil especificado en el parámetro GRPPRF. Estos parámetros controlan la forma en que se
FIGURA 3 Ejemplo de perfil de grupo /* Create “group” user profiles */ CRTUSRPRF USRPRF(GPSALES) PASSWORD(*NONE) TYPE(*USER) CRTUSRPRF USRPRF(GPPAY) PASSWORD(*NONE) TYPE(*USER) /* Add user profiles to the groups */ CHGUSRPRF USRPRF(APPUSER1) GRPPRF(GPSALES) CHGUSRPRF USRPRF(APPUSER2) GRPPRF(GPPAY) … CHGUSRPRF USRPRF(APPUSER3) GRPPRF(GPSALES) SUPGRPPRF(GPPAY) /* Authorize group profiles to DB2 tables */ GRTOBJAUT OBJ(PAYTAB) OBJTYPE(*FILE) USER(GPPAY) AUT(*USE) GRTOBJAUT OBJ(SALESTAB) OBJTYPE(*FILE) USER(GPSALES) AUT(*CHANGE) /* SQL version of granting table access to group profiles */ GRANT SELECT ON paytab TO gppay GRANT SELECT,INSERT,UPDATE,DELETE salestab TO gpsales
FIGURA 4 Ejemplo de CHGOBJPGP CHGOBJPGP
OBJ(paytab) OBJTYPE(*FILE) NEWPGP(GPPAY)
FIGURA 5 Ejemplo de lista de autorizaciones ç /* Create authorization list */ CRTAUTL AUTL(HSALESAL) AUT(*EXCLUDE) /* Associate tables with authorization list */ GRTOBJAUT OBJ(HSALESTB1) OBJTYPE(*FILE) AUTL(HSALESAL) … GRTOBJAUT OBJ(HSALESTBN) OBJTYPE(*FILE) AUTL(HSALESAL) /* Give users access to the authorization list */ ADDAUTLE AUTL(HSALESAL) USER(BIZUSER1) AUT(*USE) ADDAUTLE AUTL(HSALESAL) USER(BIZUSER2) AUT(*USE) /* Administrator needs update capabilities for tables on authorization list */ ADDAUTLE AUTL(HSALESAL) USER(DWADMIN) AUT(*CHANGE)
asigna la propiedad de un objeto cuando un perfil de usuario que pertenece a un grupo crea un objeto. El gestor de seguridad de IBM i no suma las autorizaciones de perfiles individuales o de grupo cuando tiene que determinar si el perfil de usuario está autorizado para realizar una operación de la base de datos. El gestor examina las credenciales del perfil de usuario y del perfil de grupo por separado. Si se utilizan perfiles de grupo, normalmente lo mejor es que los perfiles de usuario individuales no tengan autorizaciones (ni siquiera *EXCLUDE) sobre los objetos de DB2; las autorizaciones sobre el objeto se le otorgan al grupo, como se ve en la Figura 3. Otro consejo para configurar perfiles de grupo es usar el mandato Cambiar grupo primario de objeto (CHGOBJPGP), que se muestra en la Figura 4, para mejorar el rendimiento. Este mandato mejora el rendimiento ya que guarda la información sobre la autorización del perfil de grupo especificado en el propio objeto de tipo tabla.
Las listas de autorizaciones también permiten simplificar la gestión de las autorizaciones privadas y se usan de forma parecida a los perfiles de grupo. Las listas proporcionan un medio de agrupar objetos con requisitos de seguridad comparables. Por ejemplo, supongamos que un data warehouse contiene varias tablas que incluyen datos históricos de ventas para ser analizados. En este caso, cada analista que use el data warehouse necesita acceder a todas las tablas. En vez de otorgar autorizaciones privadas sobre cada tabla, puede crearse una lista de autorizaciones que proporcione a los usuarios la autorización necesaria sobre cada tabla asociada con la lista. Se puede pensar que las listas de autorizaciones contienen una lista de perfiles de usuario y la autorización que cada usuario tiene sobre los objetos de DB2 asociados con la lista. En la Figura 5 se muestra una lista de autorizaciones en la práctica. El primer paso consiste en crear el objeto con el mandato Crear lista de autorizaciones (CRTAUTL). El parámetro AUTHORITY de este mandato no es la autorización que cada perfil de usuario tiene sobre los objetos de DB2 asociados con la lista. Si un objeto de DB2 asociado tiene *AUTL como valor de su autorización pública, el valor del parámetro AUTHORITY (*EXCLUDE, en la Figura 5) se usa como el valor de la autorización pública del objeto de DB2. El paso siguiente es poner el objeto de base de datos bajo el control de seguridad de una lista de autorizaciones. Esto se hace con el mandato GRTOBJAUT. Un objeto de IBM i sólo puede asociarse con una lista de autorizaciones a la vez. El último paso consiste en dar a los usuarios la autorización sobre la lista de autorizaciones. Hecho ésto, los perfiles de usuario tendrán la autorización especificada sobre cualquier objeto protegido por esa lista. Puede realizar este paso con el mandato Añadir entrada en lista de autorizaciones (ADDAUTLE); ninguna sentencia de SQL permite realizar esta tarea. En este ejemplo, a los dos primeros usuarios se les ha dado autorización *USE sobre los objetos de DB2 protegidos por la lista, y al último (un administrador) se le otorga la autorización *CHANGE. El resultado es que BIZUSER1 y BIZUSER2 tienen autorización *USE sobre todos los objetos de DB2 asociados con la lista de autorizaciones, mientras que el perfil de usuario DWADMIN tiene autorización *CHANGE. Lo que hay que entender es que la autorización del usuario la define la lista de autorizaciones, no los objetos individuales protegidos por la lista. Si la lista de autorizaciones protege un objeto de DB2 nuevo, los usuarios de la lista automáticamente tendrán autorizaciones sobre este objeto. Este comportamiento facilita la protección de objetos nuevos que tienen los mismos requisitos de seguridad que otros ya existentes. Cuando se protege una tabla de DB2 con una lista, pueden cambiarse las autorizaciones aunque la tabla esté JUNIO-JULIO 2009 ServerNEWS 15
■ EN PORTADA abierta. Con los perfiles de grupo y los perfiles de usuario individuales, no es posible otorgar o revocar las autorizaciones de un objeto abierto. Este hecho puede llevarle a preguntarse si una lista de autorizaciones es mejor que un perfil de grupo. La respuesta es que ninguno es mejor que el otro. La elección realmente se reduce a qué opción resuelve mejor su problema. De hecho, es posible añadir un perfil de grupo a una lista de autorizaciones de la misma forma que se añade un perfil de usuario individual. Muchos departamentos informáticos usan las dos opciones indistintamente. Como pasa con la autorización adoptada por programa, una implementación de seguridad que usa el método de la autorización privada debe reducir la autorización pública a *EXCLUDE, si es posible. Negar a todos los usuarios el acceso a un objeto de DB2 es mucho más seguro que dejar la puerta abierta al objeto de forma predeterminada. También es posible usar una combinación de autorizaciones adoptadas y privadas para reducir las tareas de administración de la seguridad de la base de datos, empleando autorizaciones privadas únicamente para resolver la cuestión de las interfaces que no son fáciles de resolver mediante autorización adoptada. Aunque la autorización privada exige más tiempo para implementarla y para gestionarla, proporciona defensas de seguridad que protegen los datos en todas las interfaces. Esta protección incluye las interfaces que existen hoy en día y las que aparezcan en el futuro. Conociendo los dos métodos básicos de seguridad de DB2, podemos examinar cuestiones de seguridad más detalladas relativas a las interfaces y los objetos de la base de datos.
Controles a nivel de conexión y de interfaz Proteger la base de datos en el nivel de interfaz era una opción que hemos mencionado cuando hablábamos de los programas de puntos de salida que permiten desactivar o limitar el acceso de los usuarios a la base de datos desde interfaces de datos como por ejemplo las conexiones ODBC y FTP. Sin embargo, con este tipo de soluciones es imposible una protección completa porque no existen puntos de salida para todas las interfaces de acceso a datos. Aunque la base de datos esté protegida a nivel de objeto con autorizaciones privadas, hay que tener en cuenta los datos de la empresa que se transmiten por la red. Si un usuario tiene autorización sobre los datos, los controles de seguridad de la base de datos y de las interfaces no ofrecen protección para los datos que se van a transportar sin cifrar por la red. A continuación le ofrecemos unas cuantas opciones disponibles en IBM i para proteger las transmisiones de estos datos: Seguridad de la capa de transporte (TLS) y Capa de sockets segura (SSL). TLS y su predecesor SSL son tecnologías que pueden instalarse para proteger los da16 ServerNEWS JUNIO-JULIO 2009
tos de la empresa que van a transmitirse por la red. TLS y SSL protegen la transmisión de los datos cifrándolos. Se necesitan recursos adicionales del sistema para cifrar las transmisiones de los datos, pero IBM ofrece una tarjeta criptográfica para aliviar a los procesadores principales de la carga del proceso de cifrado de TLS y SSL. Red privada virtual (VPN) segura. Una VPN segura utiliza protocolos criptográficos como Seguridad IP (IPSec) para ofrecer comunicaciones seguras a través de redes desprotegidas. Para proporcionar la protección de datos necesaria, una VPN debe diseñarse e implementarse con políticas de seguridad claramente definidas. Shell seguro (SSH) y OpenSSH. SSH es un protocolo de red que permite transferir de forma segura datos entre sistemas. Un gran número de sistemas operativos son compatibles con este protocolo. Cifrado interno. Las aplicaciones pueden usar los servicios criptográficos de IBM i para cifrar los datos antes de enviarlos a través de la red y dejar al sistema de destino que se encargue de descifrarlos. Este método requiere dedicar una considerable cantidad de recursos de programación para implementar los procesos de cifrado y descifrado, además de un mayor trabajo de administración para garantizar que programas de utilidad como FTP accedan únicamente a objetos cifrados.
Controles a nivel de esquema Quizá piense que se puede simplificar la gestión de los controles de acceso a nivel de objeto simplemente definiendo autorizaciones en el nivel de esquema (biblioteca). Un esquema es un contenedor de todos los objetos de DB2, por lo que controlar el acceso al objeto que los contiene parece una forma lógica de controlar el acceso a los objetos que forman parte de él. Desgraciadamente, esto es falso porque los controles a nivel de esquema ofrecen un nivel de detalle insuficiente. Un perfil de usuario necesita como mínimo la autorización *USE para acceder a los objetos de DB2 de un esquema. A continuación, se utilizan las autorizaciones de datos definidas a nivel de tabla o de objeto para determinar si un usuario puede acceder realmente a los datos almacenados en un objeto de DB2. En consecuencia, la gestión de la seguridad en el nivel de esquema no representa ningún atajo: los perfiles de usuario tienen que tener autorizaciones otorgadas tanto en el nivel de esquema como en el nivel de objeto. Un esquema de SQL y una biblioteca de IBM i son objetos equivalentes; no obstante, la autorización pública predeterminada que se da a los objetos respectivos es distinta. Con el mandato CRTLIB, el parámetro CRTAUT controla la autorización pública predeterminada. El valor por omisión es *SYSVAL, lo que significa que el valor del sistema QCRTAUT determina la política de acceso público. El valor predeterminado del sistema es *CHANGE, razón por la
que IBM i otorga a todos los usuarios acceso *CHANGE a sus bases de datos. Para remediar este problema, IBM recomienda cambiar QCRTAUT a *EXCLUDE o *USE en la mayoría de los casos para limitar el acceso público a los objetos de base de datos. Lo más probable es que necesite hacer algunos cambios en el entorno y los programas para adaptarlos al nuevo valor del sistema QCRTAUT. La sentencia Crear esquema de SQL crea una biblioteca con una autorización pública distinta cuando se utiliza el convenio de denominación de SQL (*SQL). El parámetro de formato de denominación está disponible para todas las interfaces de SQL que permiten el convenio de denominación de SQL o del sistema (*SYS). Si usa el convenio de denominación del sistema, el comportamiento de la autorización pública seguirá la semántica de CRTLIB. Con el convenio de denominación de SQL, una biblioteca (y todos los objetos de SQL) se crean con la autorización pública *EXCLUDE. De modo que el convenio de denominación de SQL nos obliga a otorgar explícitamente acceso público al objeto o a definir autorizaciones privadas. De nuevo, este comportamiento sigue las directrices generales de IBM de negar de forma predeterminada el acceso público al esquema.
Controles a nivel de tabla Aunque un usuario necesita privilegios a nivel de esquema para poder cambiar o añadir datos, los controles de acceso a nivel de tabla son la clave para proteger los datos de la empresa. Este detalle es cierto si la implementación de la seguridad usa autorizaciones privadas o adoptadas por programa. La propiedad de los objetos es uno de los aspectos de la seguridad de los datos que todavía no hemos tratado. Cuando se crea una tabla de DB2 (archivo físico), la propiedad de ese objeto se le asigna a un perfil de usuario. El propietario de una tabla de DB2 puede realizar cualquier operación con esa tabla. Obviamente, deben planificarse cuidadosamente los niveles de acceso de los propietarios de cada objeto de la base de datos. La manera de asignar la propiedad de un objeto depende de la interfaz que se use. Con las interfaces que no son SQL, la propiedad se le asigna al perfil de usuario o al grupo del perfil de usuario del trabajo que crea el objeto de base de datos. Con las interfaces SQL el comportamiento de la propiedad de un objeto se controla utilizando el parámetro del formato de denominación (como en el caso de la autorización pública). Para las tablas de DB2 que se
JUNIO-JULIO 2009 ServerNEWS 17
■ EN PORTADA crean con el convenio de denominación del sistema, la propiedad del objeto se asigna de la misma forma que para las interfaces que no son SQL. Cuando se crea una tabla con el convenio de denominación de SQL, el propietario de la tabla es el perfil de usuario que tiene el mismo nombre que el esquema en que se ha creado el objeto. Por ejemplo, si se crea la tabla TAB1 en un esquema denominado USER1, el propietario del objeto TAB1 será USER1. Si ningún perfil de usuario coincide con el nombre del esquema, el propietario del objeto será el perfil de usuario o de grupo del trabajo que ha creado la tabla. Asignar la propiedad de un objeto a un perfil de grupo es poco aconsejable, ya que permite que todos los miembros del perfil de grupo hereden la autorización del propietario del objeto creado.
Controles a nivel de columna y a nivel de fila Algunas implementaciones de la seguridad de la base de datos no ofrecen a los usuarios acceso directo a la tabla. En su lugar, los usuarios sólo tienen acceso a vistas (es decir, archivos lógicos) definidas para las tablas. Como de hecho las vistas pueden contener un subconjunto de columnas (es decir, campos) de una tabla, las vistas pueden reforzar la seguridad de la base de datos al permitir ocultar al usuario las columnas que contengan datos confidenciales. El ejemplo de la Figura 6 utiliza SQL para mostrar esta técnica de seguridad en la práctica. Esta técnica también puede aplicarse usando archivos lógicos y los mandatos de seguridad de CL. En este ejemplo, EMP_TAB es la tabla de DB2 que contiene datos sobre los trabajadores. El primer paso es definir una vista de SQL, EMPVIEW, que omite de su definición la columna confidencial donde se muestra el sueldo. El acceso a la tabla subyacente se evita con la sentencia REVOKE y a los usuarios “normales” sólo se les otorgan autorizaciones sobre los datos de la vista con la sentencia GRANT. El resultado es que USER1 está autorizado para acceder únicamente al ID y al nombre del trabajador, puesto que son las únicas columnas definidas en la vista. Creamos una segunda vista para los usuarios del departamento de Recursos Humanos (RRHH), que necesitan acceder a la columna del sueldo. Observe que aunque el perfil de usuario de RRHH no tiene privilegios para acceder a la tabla, el acceso nuevamente está limitado a la vista, empview_hr. Si se añaden nuevas columnas a la tabla subyacente, habrá que otorgar a los usuarios de la vista acceso expreso a los datos de las columnas nuevas, ya que a los usuarios autorizados para acceder a la tabla no se les otorga automáticamente acceso a las columnas nuevas. En vez de ocultar columnas confidenciales, también puede usar vistas para enmascarar datos en columnas 18 ServerNEWS JUNIO-JULIO 2009
FIGURA 6 Ejemplo de vista CREATE TABLE emp_tab (empid INTEGER, empname VARCHAR(30), empsalary DECIMAL(9,2)); CREATE VIEW empview AS SELECT empid, empname FROM emp_tab; REVOKE ALL ON emp_tab FROM user1; GRANT INSERT,UPDATE,DELETE,SELECT ON empview TO user1; CREATE VIEW empview_hr AS SELECT empid, empname,empsalary FROM emp_tab; REVOKE ALL ON emp_tab FROM hruser1; GRANT INSERT, UPDATE, DELETE, SELECT ON empview TO hruser1
FIGURA 7 Ejemplo de seguridad de nivel de columna GRANT INSERT, UPDATE, DELETE, SELECT ON emp_tab TO hradmin GRANT UPDATE(empid,empname), SELECT ON emp_tab TO hruser
confidenciales, como en el ejemplo siguiente: CREATE VIEW empview_mask AS SELECT empid, empname, -999999.99 salmask FROM emp_tab
Además, si necesita restringir el acceso de los usuarios a un subconjunto de filas de la tabla, podría añadir predicados de selección a la definición de la vista, como se muestra en este ejemplo: CREATE VIEW empview_hrsub AS SELECT empid, empname, empsalary FROM emp_tab WHERE empsalary < 1000000
El principal inconveniente de esta estrategia es que crear vistas adicionales significa que habrá más objetos de DB2 que gestionar y administrar. Si utiliza solamente vistas de SQL y archivos lógicos que no están ordenados por clave, el impacto sobre el rendimiento de las aplicaciones es nulo, ya que estos objetos de DB2 no contienen datos que tengan que mantenerse si la tabla subyacente cambia. Si se utiliza un archivo lógico ordenado por clave para esta finalidad, existirá una pequeña actividad general porque DB2 tiene que actualizar el archivo lógico cada vez que la tabla subyacente cambia. DB2 para i también permite definir autorizaciones de datos a nivel de columna. Sin embargo, apenas se utiliza esta posibilidad debido a que en este nivel solamente pueden controlarse las operaciones de actualización y no las de lectura. Poder controlar las operaciones de actualización a nivel de columna puede ayudarnos en situaciones en las que hay que dejar que los usuarios actualicen algunas columnas, pero no todas. Así, en la Figura 7, al perfil de usuario HRADMIN se le otorga acceso para poder reali-
zar operaciones con los datos de todas las columnas de la tabla emp_tab. Por el contrario, el perfil HRUSER está limitado a actualizar las columnas empid y empname y a leer las filas de la tabla. La seguridad a nivel de columna sólo es posible para las sentencias GRANT y REVOKE de SQL.
Protección de datos mediante cifrado ¿Por qué no he mencionado el cifrado de datos hasta ahora? La razón es que el cifrado ofrece una protección mínima si una base de datos no se ha protegido antes con controles de acceso a nivel de objeto. Esto es particularmente cierto si está utilizando una solución en la que la aplicación cifra y descifra automáticamente los datos cada vez que se accede a ellos: todos los usuarios autorizados son capaces de ver la versión sin cifrar de los datos. La mejor inversión en seguridad es proteger la base de datos a nivel de objeto antes incluso de pensar en el cifrado de datos, en parte debido a que una buena implementación del proceso de cifrado también requiere un plan de control de acceso, cuestión que describiremos enseguida. Debido a que la legislación y los auditores obligan a que se cifren los datos confidenciales almacenados en los discos, muchos clientes de IBM i están buscando sistemas de cifrado “automáticos”. A consecuencia de esta demanda, IBM presentó el cifrado de agrupaciones de almacenamiento auxiliar (ASP) en IBM i 6.1. Esta capacidad permite que IBM i cifre automáticamente los datos que se graban en una ASP básica o en una ASP independiente (IASP). Cuando el sistema operativo o una aplicación lee los datos de una ASP cifrada, los datos se descifran automáticamente. Este tipo de sistema de cifrado ofrece varias ventajas: • una implementación rápida que satisface los requisitos de muchos auditores de seguridad • protección de los datos en caso de robo de la unidad • protección de los datos en caso de que una unidad defectuosa deba sustituirse y retornarse al proveedor El inconveniente del cifrado automático es que los datos se le presentan sin cifrar a todos los usuarios autorizados del sistema. Así que no sirve para reducir el número de usuarios de la aplicación que pueden consultar el número de su tarjeta de crédito o de la Seguridad Social. Además, este método exige la creación de una ASP y el trasladado de los datos existentes a la ASP cifrada. Para implementar el cifrado a nivel de ASP en el sistema, debe adquirir e instalar el programa producto bajo licencia de IBM i 5761SS1 Opción 45 - Habilitación de ASP cifrada. Una solución más segura implica el descifrado selectivo de datos. Con este método, deberá mejorar las aplicaciones para que examinen quién está intentando consultar una columna que contiene datos cifrados y determinar si está autorizado para ver la versión sin cifrar. El método
es parecido a los controles de acceso necesarios para proteger bases de datos a nivel de objeto. Lo ideal sería que las aplicaciones exigieran alguna forma de autenticación del usuario, por ejemplo, mediante una contraseña o una lectura biométrica, para determinar si tiene las credenciales necesarias para acceder a los datos cifrados. En algunos casos, podría ser más práctico eliminar los datos confidenciales de los informes en vez de preocuparnos por cómo hay que descifrarlos. Ya debería ser obvio que una buena implementación requerirá una cantidad considerable de cambios en el código de la aplicación y las interfaces. Además, puede que sea necesario realizar una actualización del sistema dada la sobrecarga de CPU que exigen los algoritmos de cifrado. El cifrado basado en la aplicación también necesita manejar de un modo seguro la gestión de las claves de cifrado y el acceso a éstas. Una vez cifrados los datos, la clave es tan valiosa como la versión descifrada de los datos. Sería preferible guardar la clave en un dispositivo de hardware distinto y recuperarla mediante programa para lograr la máxima protección. Las API de gestión de claves presentadas en el release V5R4 pueden ayudar a los programadores a proteger y gestionar claves de cifrado. Mantener la clave de cifrado separada de los datos cifrados es una cuestión importante y esto también es cierto para las copias de seguridad cifradas de la base de datos. Para proteger verdaderamente las copias de seguridad cifrándolas, asegúrese de guardar la clave de cifrado en un soporte distinto al de los datos cifrados. Aunque el cifrado puede añadir otra capa de protección a la base de datos, ya ve que es necesaria una gran cantidad de trabajo para configurar una solución de cifrado completa para las aplicaciones y las bases de datos. En el Libro rojo Protecting i5/OS Data with Encryption (www.redbooks.ibm.com/Redbooks.nsf/RedpieceAbstracts/sg247399.html) hallará más detalles.
Un esfuerzo constante Ahora ya debería tener un buen conocimiento de las técnicas y tecnologías disponibles para proteger las bases de datos del IBM i. Como ha visto, no hay una sola herramienta o implementación de tecnología que proteja completamente los recursos de información. Deberá prestarles cuidarlos con regularidad y diligencia. Proteger dichos recursos es una tarea permanente que requiere planificar, supervisar e implementar las soluciones propuestas... si no desea que su empresa salga en las noticias. ■ Tom Ford empezó a trabajar como programador en 1982 y en 1988 entró en IBM como ingeniero de sistemas, y luego pasó al laboratorio de Rochester. Ahora ejerce de responsable de medidas de seguridad de los STG Lab Services. Kent Milligan es un consultor en DB2 para i del equipo ISV Enablement para IBM i de IBM. Los ocho primeros años que trabajó para IBM formó parte del equipo de desarrollo de DB2, en Rochester. JUNIO-JULIO 2009 ServerNEWS 19
■ IBM SYSTEMS DIRECTOR 6.1
Asegúrese de poder recuperar la información de seguridad Para poder restaurar el sistema, primero es necesario salvar los datos adecuados por Carol Woodbury
E
l objetivo de este artículo es garantizarle que puede recuperar la información de seguridad, pero para que la recuperación tenga éxito, primero hay que salvar los datos adecuados. Al final, explicaré como recuperar o restaurar los datos de seguridad, pero antes, veamos qué es lo que hace falta salvar. El primer asunto que hay que entender es cómo se almacena la información de seguridad en el IBM i. Cierta información de seguridad (como los archivos, las bibliotecas y los directorios) se guardan con el propio objeto. Expresado más técnicamente, cierta información se almacena en la cabecera del objeto. En ésta se almacena la autorización *PUBLIC del objeto, el propietario y la autorización de éste, el grupo primario y la autorización de éste, el valor de auditoría del objeto y el nombre de la lista de autorizaciones que protegen al objeto. Cuando usted salva archivos, ejecuta el mandato SAV o salva las bibliotecas que no son del sistema, ésta es la información de seguridad de la que se hace una copia de seguridad. Algún lector puede que se pregunte qué es lo que ocurre con las autorizaciones privadas otorgadas a los objetos. ¿Cómo se hace copia de seguridad de éstas? ¿Y qué pasa con las listas de autorizaciones? Las autorizaciones privadas y las listas de autorizaciones se salvan cuando se salvan perfiles de usuario. Y para salvar perfiles de usuario hay que ejecutar los mandatos Salvar datos de seguridad (SAVSECDTA) o Salvar el sistema (SAVSYS). La clave para recuperar la información correctamente o con el menor esfuerzo posible depende de lo actuales que sean los datos de seguridad que se van a utilizar para llevar a cabo la recuperación. En otras palabras, ¿cuándo ejecutó por última vez el mandato SAVSECDTA?
20 ServerNEWS JUNIO-JULIO 2009
¿Con qué frecuencia deben salvarse los datos de seguridad? En realidad, la frecuencia con que debe ejecutarse SAVSECDTA depende de la frecuencia con que se crean, modifican y eliminan perfiles de usuario del sistema. También deberá tener en cuenta la frecuencia con que se otorgan o se eliminan autorizaciones privadas sobre objetos individuales y listas de autorizaciones, y cuántas veces se crean o eliminan listas de autorizaciones. Por ejemplo, si solamente salva los datos de seguridad a principios de mes y a finales de mes tiene que recuperar el sistema, ¿cuántos perfiles de usuario tendrá que volver a crear? (suponiendo que guarde documentación de todas las solicitudes que se hayan presentado durante ese mes). Además, deberá tener en cuenta los perfiles de usuario que haya eliminado del sistema y que volverán a aparecer en cuanto restaure los perfiles de usuario durante el proceso de recuperación. Asimismo, no se olvide de las solicitudes para añadir un usuario a otro grupo, para otorgar a un usuario autorización en las listas de autorizaciones para poder descargar archivos concretos, o para cambiar la propiedad sobre objetos del IFS. Tras reconsiderar todo esto (así como si se dispone de los documentos necesarios para satisfacer todas esas solicitudes), tal vez decida que su organización necesita salvar la información de seguridad con mucha más frecuencia. Por último, si está en proceso de cambiar la configuración de la seguridad (es decir, modificar la autorización *PUBLIC sobre los objetos, proteger archivos con listas de autorizaciones, eliminar las autorizaciones especiales excesivas de algunos usuarios, etcétera), le interesará salvar los datos de seguridad con la frecuencia suficiente
JUNIO-JULIO 2009 ServerNEWS 21
■ EN PORTADA como para no perder todas estas importantes actualizaciones de la configuración.
El orden importa Ahora que ya tiene en cuenta lo que debería salvar y con qué frecuencia debería hacerlo, vamos a centrarnos en la restauración de los datos de seguridad. Para tener alguna esperanza de que la recuperación tenga éxito, la información debe restaurarse en el orden que se recomienda en el manual Recuperación del sistema del release 6.1, que se puede descargar de publib.boulder.ibm.com/ infocenter/iseries/v6r1m0/topic/rzarm/sc415304.pdf. (En releases anteriores, el manual se denominaba Copia de seguridad y recuperación y se encuentra disponible en publib.boulder.ibm.com/infocenter/iseries/v5r4/topic/ books/sc415304.pdf) ¡No se desvíe del orden descrito en este manual! En general, el manual le indica que restaure la información de seguridad usando Restaurar perfil de usuario (RSTUSRPRF (*ALL)), a continuación, los objetos y, por último, que ejecute el mandato Restaurar autorización (RSTAUT). Restaurar los perfiles de usuario en primer lugar garantizará la existencia de todos los objetos que poseen perfiles y listas de autorizaciones antes de que los objetos se restauren en el sistema. Ejecutar el mandato RSTUSRPRF antes de restaurar los objetos es vital. Si los objetos se restauran antes que los perfiles de usuario, todos aquellos objetos que poseen perfiles que no son de IBM acabarán siendo propiedad de QDFTOWN. Por lo tanto, si realiza los pasos en orden inverso, tendrá que volver a empezar. Una vez establecida la propiedad de los objetos, permanecerá así a menos que se suprima el objeto y se vuelva a restaurar... esta vez con todos los perfiles en el sistema antes de que los objetos se restauren. Por supuesto, es un proceso arduo, pero esta es la única forma de corregir la propiedad de los objetos. Restaurar perfiles de usuario en primer lugar también significa que las listas de autorizaciones que protegen los objetos deben existir en el sistema. Cuando se restaura un objeto protegido por una lista de autorizaciones en el soporte, pero esa lista de autorizaciones no existe en el sistema, IBM i cambia el objeto de modo que ya no está protegido por una lista de autorizaciones (establece la lista de autorizaciones en *NONE) y cambia la autorización *PUBLIC por *EXCLUDE. Estos cambios de configuración pueden parecer rigurosos, pero hacer cualquier otra cosa tiene el potencial de permitir el acceso público a los datos cuando se supone que deberían estar fuertemente protegidos. Nota: la única forma de restaurar una lista de autorizaciones es restaurar todos los perfiles de usuario (es decir, RSTUSRPRF *ALL). Una vez restaurados los perfiles de usuario (y las listas de autorizaciones) ya pueden restaurarse los objetos. Tras 22 ServerNEWS JUNIO-JULIO 2009
ésto, querrá llevar a cabo un último paso: necesitará ejecutar RSTAUT *ALL para todos los perfiles. Cuando se restauran perfiles de usuario en el sistema se crea un objeto temporal que contiene las autorizaciones privadas del perfil. Una vez restaurados los objetos y tras ejecutar RSTAUT, IBM i lee este objeto temporal y otorga todas las autorizaciones privadas que tenía el perfil de usuario sobre los objetos y listas de autorizaciones. Si no realiza este paso, cuando ejecute el mandato Visualizar perfil de usuario (DSPUSRPRF), verá el mensaje CPD2206, “No se han restaurado las autorizaciones privadas”, que es una indicación de que no se ha ejecutado RSTAUT. Este importante paso no debe soslayarse. Si se pasa por alto, puede que algunos usuarios no tengan la autorización sobre ciertos objetos que necesitan para hacer su trabajo. O, tal vez, puede que sean capaces de acceder a objetos a los que no deberían acceder.
Receptores de diario de auditoría Además de la información de seguridad que ya se ha descrito, deberá tener en cuenta otras consideraciones relacionadas con la seguridad. Por ejemplo, he observado que, en la mayoría de organizaciones, la manera de salvar los receptores de diario de auditoría no está bien pensada. Desde un punto de vista legal, si no salvamos los receptores de diario de auditoría puede que estemos incumpliendo la ley. Por ejemplo, el Estándar de seguridad de datos del sector de las tarjetas de crédito (PCI DSS) exige que la información de auditoría se conserve en el sistema durante 90 días o, al menos, que sea fácil de recuperar. Igualmente, la información de auditoría debe guardarse durante un año, como mínimo. Algunos sectores, como el financiero, tienen requisitos de conservación de los datos que pueden obligarle a conservar los receptores de diario de auditoría durante siete años. Según su estrategia actual de salvar receptores de diario de auditoría, ¿está cumpliendo las leyes y normativas establecidas por su organización? Cuando piense sobre su estrategia de salvar, imagínese lo fácil o difícil que sería recuperar la información de auditoría de un día de trabajo. Algunas organizaciones consideran que es más fácil generar un nuevo receptor y luego salvar todos los receptores de diario del día anterior hasta la hora de la operación de salvar. De esta forma, saben que tienen toda la información de un día determinado. Algunas organizaciones salvan sus receptores de diario de auditoría en el mismo soporte que el resto de la información de salvar. Otras empresas salvan los receptores de diario de auditoría en soportes distintos. No existe una única “forma correcta”. Lo importante es asegurarse de que los receptores de diario se salvan de modo que sea posible restaurarlos fácilmente en caso de que fuera necesario investigar algún problema.
Cifrado
información de los archivos de base de datos de las aplicaciones • el ID de usuario y la contraseña del administrador con el que debe iniciarse sesión en la tarjeta de cifrado de hardware instalada en la máquina del local de seguridad, si este es el método de cifrado que se va a usar
Los efectos del cifrado también deben ser tenidos en cuenta durante una situación de recuperación. Si ha puesto en marcha un sistema de cifrado o está contemplando la posibilidad de hacerlo (por ejemplo, para cifrar las comunicaciones SSL o TLS, o los campos de una base de datos, cifrándolos por software o por hardware, o para cifrar las propias copias de seguridad), tendrá que estudiar detenidamente lo que tiene que habilitar o instalar en el sistema de alta disponibilidad del local de seguridad para garantizar que la recuperación se realiza correctamente. A continuación se ofrece una lista de comprobación rápida e incompleta de lo que debe asegurarse de tener:
Aunque a nadie le gusta pensar en tener que recuperar un sistema o investigar un problema de seguridad, tomarse el tiempo necesario para valorar la información de seguridad que se está salvando implica que en su momento podrá disponer de la información necesaria para investigar esos problemas o recuperar el sistema. ■
• certificados digitales adecuados para hacer posible una comunicación segura • unidades de cinta capaces de descifrar los soportes de copia de seguridad cifrados • la capacidad (es decir, que sabe cómo hacerlo) de recuperar el almacén de claves (el lugar en que se guardan las claves de cifrado) • el software, las tarjetas de cifrado o el hardware de descifrado instalados necesarios para descifrar o cifrar la
Carol Woodbury es cofundadora de SkyView Partners, Inc., firma especializada en la gestión de la conformidad en cuestiones de seguridad, en software de evaluación, y en servicios de seguridad. Antigua arquitecta jefe de seguridad del AS/400 en el laboratorio de Rochester (Minnesota) de IBM, se ha especializado en los campos de la consultoría, el diseño y la arquitectura de seguridad desde hace más de 16 años. Es una conferenciante de renombre mundial en distintos campos de la seguridad y coautora del libro Experts’ Guide to OS/400 and i5/OS Security (29th Street Press).
¡¡Suscríbete a la edición digital!! Más de doce números gratuitos
www.help400.es/suscripcion.htm JUNIO-JULIO 2009 ServerNEWS 23
Utilice C# para consumir servicios web Pruebe una de las técnicas de conexión más sencillas que existen por Craig Pelkie
J
Programación y sistemas
▲ ▲ ▲
24
unto con IBM y Sun Microsystems, Microsoft fue una de las compañías que participaron en la especificación original de los servicios web. Era de esperar que las herramientas de Microsoft ofrecieran soporte para desarrollar y consumir servicios web y, efectivamente, puede encontrar todo lo necesario en el producto Visual Studio de la compañía. Puede utilizar Visual Studio 2008 y Microsoft .NET Framework para desarrollar y probar en muy poco tiempo una aplicación consumidora de servicios web (es decir, un programa que se ponga en contacto con un servicio web existente y que funcione con sus datos). Es una de las técnicas de conexión más sencillas que existen. Puede enlazar un servicio web .NET con la base de datos de IBM i utilizando los proveedores ODBC, OLE DB o .NET de System i Access. Las herramientas para trabajar con servicios web en Visual Studio 2005 son prácticamente idénticas a las de la versión 2008, de modo que también puede usarse este entorno de desarrollo. En este artículo explicaremos cómo dar los primeros pasos. Para desarrollar una aplicación consumidora de servicios web primero hay que conocer el URL que apunta al documento del lenguaje de descripción de servicios web (WSDL). En este ejemplo, utilizaré el servicio web meteorológico disponible en http://webservicex.net/WCF/ServiceDetails.aspx?SID=44). Proporciona una función para recuperar el parte meteorológico de los próximos siete días para un determinado código postal de los Estados Unidos. Cuando se genera una aplicación consumidora de servicios web puede usarse cualquier tipo de programa para acceder al servicio web. Por ejemplo, un consumidor de servicios web podría ser una aplicación web, un formulario de Windows o un programa de servicio de Windows. En este ejemplo he desarrollado una aplicación de consola que utiliza como entrada y salida una sencilla “sesión DOS”. Aunque puede parecer inusualmente limitado usar Visual Studio y .NET para desarrollar aplicaciones de consola retro, es sumamente productivo utilizar estas aplicaciones como bancos de pruebas de técnicas nuevas. Una vez logre que el código funcione en la consola, sólo tendrá que copiarlo y pegarlo en la aplicación real en la que se necesita la función. ServerNEWS JUNIO-JULIO 2009
FIGURA 1 Menú Agregar referencia de servicio
Añadir una referencia de servicio Para añadir una referencia de servicio, en primer lugar he creado una nueva aplicación de consola de Windows para el entorno de programación C#. Si trabaja con Visual Basic, sepa que dispone de las mismas herramientas y que, por lo tanto, puede conseguir los mismos resultados. En el Explorador de soluciones de Visual Studio, pulse con el botón derecho del ratón en la opción References (Referencias) y seleccione la opción de menú Add Service Reference (Agregar referencia de servicio), como se muestra en la Figura 1. En el recuadro de diálogo Agregar referencia de servicio (Figura 2), escriba el URL del documento de WSDL y pulse el botón Go (Ir). Al cabo de unos segundos, se extrae la lista de servicios del WSDL y se muestra. En la parte inferior de la Figura 2 puede verse que Visual Studio propone el nombre de un espacio de nombres que se usará en el código. El nombre puede aceptarse o modificarse. En este ejemplo, he cambiado el nombre propuesto por Webservicex.WeatherForecast. Una vez especificada la dirección y el nombre del espacio de nombres, pulse el botón Aceptar. Puede verse que la referencia de servicio está disponible en el proyecto, como se muestra en la Figura 3. A continuación, hay que escribir el código para trabajar con la referencia de servicio.
Programación y sistemas
▲ ▲ ▲ JUNIO-JULIO 2009 ServerNEWS
25
Código para trabajar con la referencia de servicio En la Figura 4 se muestra el código que he escrito en C# para probar el servicio. Para facilitar el trabajo con las clases expuestas por la referencia de servicio, he añadido una segunda sentencia using, que define el espacio de nombres del servicio. ConsoleApplication1 no es un gran punto de partida para el espacio de nombres; en un entorno de desarrollo real, crearía un proyecto y le asignaría un indicativo de espacio de nombres de los servicios que me interesan en mis aplicaciones. En esta aplicación he usado tres clases del servicio: • WeatherForecastSoapClient proporciona métodos que pueden llamarse para obtener el parte meteorológico de un código postal. • WeatherForecasts contiene datos del pronóstico meteorológico para el código postal seleccionado. • WeatherData incluye datos detallados del pronóstico para una fecha concreta.
Programación y sistemas
▲ ▲ ▲
26
El código empieza especificando el objeto wfsc, una instancia de la clase WeatherForecastSoapClient. Luego utiliza el método GetWeatherByZipCode de esta clase para devolver un objeto de WeatherForecasts (wfs). En cuanto termina de ejecutarse el método GetWeatherByZipCode ya dispongo de los datos para el código postal especificado, que se muestran usando las sentencias Console.WriteLine. La propiedad wfs.Details es una matriz de objetos de WeatherData que contienen datos del pronóstico del tiempo ordenados por día, empezando por el día de hoy. El bucle foreach me sirve para repetir el proceso para cada objeto de WeatherData. Dentro del bucle extraigo e imprimo el día, la temperatura mínima y máxima en grados Celsius y la temperatura mínima y máxima en grados Fahrenheit. Puede ver el resultado de acceder al servicio web en la Figura 5. Basándose en la salida visible y el código, puede ver cómo alcanzar el servicio y los datos que proporciona. Grabar los datos del servicio en un archivo de base de datos debería ser bastante fácil. Si quiere capturar los datos meteorológicos y grabarlos en el IBM i, puede utilizar el proveedor .NET de IBM, el proveedor OLE DB o el controlador ODBC.
FIGURA 2 Recuadro de diálogo Agregar referencia de servicio
FIGURA 3 Referencia de servicio de otras aplicaciones. Para crear un proveedor de servicios web en Visual Studio, basta con iniciar un nuevo proyecto web y seleccionar un subproyecto de tipo servicio web. Los proveedores de la base de datos que se utilizan con las aplicaciones consumidoras de servicios web también pueden usarse para el IBM i cuando se desarrolla una aplicación proveedora de servicios web con el fin de obtener datos del sistema para ponerlos a disposición en forma de servicio web.
Proveedores de servicios web en .NET
La forma más fácil de conectarse
Aunque el objetivo de este artículo es mostrar cómo pueden desarrollarse aplicaciones consumidoras de servicios web usando Microsoft .NET Framework y Visual Studio, también debería saber que Visual Studio proporciona herramientas para desarrollar aplicaciones proveedoras de servicios web. Por ejemplo, puede crear programas escritos en C# o Visual Basic para llamar a servicios web des-
Cuando empiece a estudiar los servicios web puede que se sienta abrumado por toda la terminología y las técnicas relativamente complicadas que se usan. Pero piense en el ejemplo que le acabo de mostrar desde el punto de vista de lo que no tiene que hacer. No tiene que preocuparse por los sockets TCP/IP; no tiene que crear o analizar código XML; y no tiene que configurar programas que
ServerNEWS JUNIO-JULIO 2009
FIGURA 4 Código escrito en C# para probar una referencia de servicio using System; using ConsoleApplication1.Webservicex.WeatherForecast; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { WeatherForecastSoapClient wfsc = new WeatherForecastSoapClient(); WeatherForecasts wfs = wfsc.GetWeatherByZipCode(“92082”); Console.WriteLine(“PlaceName: Console.WriteLine(“StateCode: Console.WriteLine(“Latitude: Console.WriteLine(“Longitude:
{0}”, {0}”, {0}”, {0}”,
wfs.PlaceName); wfs.StateCode); wfs.Latitude); wfs.Longitude);
String heading = new String(‘ ‘, 30); heading = heading.Insert( 1, “Date”); heading = heading.Insert(31, “Min/Max C”); heading = heading.Insert(41, “Min/Max F”); Console.WriteLine(heading); foreach (WeatherData wd in wfs.Details) { String daily = new String(‘ ‘, 30); daily = daily.Insert( 1, wd.Day); daily = daily.Insert(31, wd.MaxTemperatureC + “/” + wd.MaxTemperatureC); daily = daily.Insert(41, wd.MinTemperatureF + “/” + wd.MaxTemperatureF);
FIGURA 5 Resultado de acceder al servicio web se ejecutan en un servidor web. Con Visual Studio y .NET, lo más difícil de crear una aplicación consumidora de servicios web es encontrar el URL del documento de WSDL. Por suerte, todos los proveedores de servicios web lo ponen fácil. Después de todo, les interesa que accedamos a sus servicios. De hecho, hacer uso de servicios web utilizando herramientas como las que ofrece Visual Studio es una de las técnicas de conexión más sencillas que existen. ■
Console.WriteLine(daily); } Console.WriteLine(“Press ENTER to end”); Console.ReadLine();
}
http://help400.blogspot.com Os presentamos el Blog de la revista ServerNEWS
Participa en los comentarios: tu opinión también cuenta.
JUNIO-JULIO 2009 ServerNEWS
Programación y sistemas
Un nuevo espacio de opinión participativa promovido por Publicaciones Help400 para potenciar el IBM i en Power Systems como la mejor opción y plataforma informática disponible en el ámbito de la gestión empresarial.
▲ ▲ ▲
} }
Craig Pelkie ha trabajado muchos años como programador de equipos midrange de IBM. También ha escrito profusamente y ha dado muchas conferencias sobre distintas tecnologías del AS/400 y el System i, como por ejemplo la programación cliente-servidor, Client Access, Java, WebSphere, las aplicaciones .NET para el System i y el desarrollo web.
27
Encuentros Power Systems 2009 por Alberto C. Blanch
D
espués de una pausa de varios años, Software Greenhouse, esta vez en colaboración con Common España y con el patrocinio de Vision Solutions, organizó en el pasado mes de Mayo en Madrid y Barcelona la 3ª Edición de sus “Encuentros”. Por primera vez se convocaban conjuntamente usuarios de las plataformas “i” y “p”. El evento contó con la colaboración de nuestra revista y con la de IBM España, Laboratorios Almirall y USP Hospitales que proporcionaron ponentes para algunos de los temas abordados en las reuniones. Los eventos tuvieron lugar en Madrid en el Hotel Meliá Castilla y en Barcelona en el Hotel Miramar. El entorno Power de IBM, desde el año pasado unificado en una misma plataforma de hardware sobre la que es posible ejecutar AIX, Linux, e IBM i (antes OS/400), sigue más que vivo. A pesar de no haber tenido la presencia en los medios que en justicia merece, la plataforma dispone de una oferta integrada y completa. La fusión de plataformas ha permitido además a proveedores como Software Greenhouse aproximarse con la oferta para el entorno AIX.
Sobre los IBM Power System
En directo
▲ ▲ ▲
28
El evento contó con la presencia de Eduardo López Jacob, Director de Canal para Power Systems de IBM para el Oeste y Sur de Europa, quien en su intervención destacó la larga colaboración entre IBM y Vision Solutions, el único “Premier Business Partner” en el campo de alta disponibilidad. A continuación hizo un resumen de las novedades más recientes de IBM, en lo que la compañía ha definido como “The New Power Equation”, la nueva familia de equipos Power 6 que permiten ejecutar diferentes sistemas operativos. Esta nueva gama, en palabras de López Jacob, “pretende responder a tres retos fundamentales que tienen nuestros clientes, como son la dificultad de la gestión, escasez de espacio y costes energéticos”. Para López Jacob, además, el 70% de los costes de propiedad de los sistemas corresponden a la gestión y administración de los sistemas, mientras que el 30% restante se deriva del coste de adquisición y consumo energético. El objetivo de IBM es atacar ese 70% de los costes con un nuevo hardware unificado y una plataforma de virtuaServerNEWS JUNIO-JULIO 2009
lización que se denomina PowerVM. “El 65% de los nuevos equipos Power incorpora PowerVM”, prosiguió López Jacob. Entre las funcionalidades de PowerVM, destacó su hipervisor, particiones lógicas dinámicas, servidor de entrada/salida virtual, la posibilidad de ejecutar aplicaciones Linux x86 sin necesidad de migración, la posibilidad de mover máquinas virtuales de una máquina física a otra y por último, la capacidad de asignar memoria a las VM de forma dinámica. Para finalizar, Eduardo López Jacob afirmó que la plataforma “i” tiene mucho futuro por delante. “Con la fusión del hardware bajo el nombre Power, IBM i se va a beneficiar de las mejoras continuas de la plataforma”, insistió.
Vision Solutions El siguiente ponente fue Alan Arnold, CTO de Vision Solutions, empresa que ofrece a los clientes IBM soluciones de Alta Disponibilidad, Recuperación de Desastres y Protección Continuada de Datos, las cuales conjuntamente aportan resiliencia a los Sistemas Informáticos de las Empresas. Alan Arnold insistió en la necesidad de tener muy claro el impacto de la inactividad de los sistemas, tanto en partidas tangibles como las menos tangibles – pero muy importantes– como pérdida de posibles clientes, de facturación, de la satisfacción de clientes y daños en la imagen de la compañía. Mencionó la amplia gama de productos diseñados para garantizar la resiliencia de los sistemas Power, tanto “i” como AIX. “Vision, trabajando en colaboración con IBM, ofrece al mercado una nueva generación de soluciones resilientes. IBM ha efectuado muchas mejoras a sus sistemas operativos, bases de datos, aplicaciones middleware, servidores y subsistemas de discos que han permitido a Vision crear las mejores soluciones del mercado”, afirmó Arnold. De hecho, aseguró el directivo, “Vision es responsable de más del 80% de la facturación de IBM en hardware asociada a la alta disponibilidad, y se encuentra entre los 5 mayores ISV que generan más facturación a IBM en el mundo”.
Caso práctico de cliente Vision El evento también contó con la presencia de Joan Ventura, Director de Operaciones TIC de Laboratorios Almirall,
Una instantánea del encuentro celebrado en el hotel Miramar de Barcelona
La nueva solución para la plataforma AIX
En resumen... Las dos reuniones tuvieron unos animados coloquios y, en general, los participantes con quienes pudimos intercambiar opiniones durante los cafés y el aperitivo final quedaron muy satisfechos con el contenido de las reuniones. Lejos de ser un típico evento de marketing de un proveedor, estos “Encuentros” se han convertido en una cita de profesionales, donde en un marco muy distendido se intercambian opiniones y experiencias útiles para la gestión de las instalaciones y toma de decisiones tecnológicas. ■
PHP nativo en la plataforma Power. Santiago Raventós, CIO, Socio y miembro del Comité de Dirección Corporativo de USP Hospitales, realizó la últi-
Alberto C. Blanch, con más de 25 años de experiencia en entornos medios de IBM, es el director y fundador de esta revista.
JUNIO-JULIO 2009 ServerNEWS
En directo
La presentación del producto fue realizada por el Director de Cuentas de Software Greenhouse, Juan José Garrido. La solución, lanzada en el año 2008 con gran éxito en los EE.UU., ha alcanzado en su primer año una venta de 5 millones de dólares. La parte más destacada del producto es el módulo denominado EchoStream que replica datos a un servidor remoto, aportando a la empresa la Recuperación frente a Desastres. EchoStream también ofrece una de las más avanzadas soluciones de CDP, permitiendo recuperar pérdidas accidentales de ficheros o reversar ficheros que han sido contaminados por errores de programación o un ataque viral. EchoStream es un complemento ideal para el producto HACMP de IBM que provee Alta Disponibilidad local vía cluster.
ma presentación del acto exponiendo las experiencias de la empresa con el desarrollo de aplicaciones en PHP sobre IBM i. Como clientes AS/400 desde 1993, han seguido la evolución de la plataforma, desde el interfaz 5250 en modo carácter hasta sus primeros desarrollos en PHP, lenguaje que se encuentra de forma nativa en IBM i. PHP debido a esta característica mejora el rendimiento del acceso a la base de datos de un 40% frente a ODBC. Además, la aplicación permite ofrecer a sus usuarios en más de 40 centros hospitalarios y dispensarios aplicaciones más ricas, accesibles desde cualquier navegador web y que permiten integrar imágenes como radiografías, tablas fácilmente visibles con las constantes vitales de los pacientes, etcétera. Santiago Raventós destacó también la firme intención de la empresa de seguir invirtiendo en el IBM i, como plataforma sólida y robusta que hoy día ofrece amplio abanico de posibilidades para el desarrollo de aplicaciones, mucho más allá del tradicional RPG.
▲ ▲ ▲
usuaria desde hace diez años de las soluciones resilientes de Vision Solutions para IBM i. Joan Ventura es el responsable de un funcionamiento armónico de unos 240 servidores, con más de 200 aplicaciones instaladas. Entre ellas se destaca SAP R/3 sobre IBM i con 500 usuarios y con la conexión de todas las farmacias de España. En su exposición, Ventura explicó que dos veces al año, prueban un “cambio de rol” (conocido en otras plataformas como failover) de las aplicaciones. Una de estas pruebas se hace públicamente, lo que demuestra la confianza que tiene Laboratorios Almirall en las soluciones de resiliencia de Vision. La presentación acabó con la invitación por parte de Laboratorios Almirall para todos los colegas que deseen asistir a la próxima prueba que se realizará en el otoño de 2009.
29
Llamar a un procedimiento con RPG de formato libre
P
Necesito llamar al procedimiento principal de un módulo desde RPG de formato libre. Lo hago desde RPG de formato fijo usando CALLB, pero en RPG de formato libre no se permite usar el código de operación CALLB. Para colmo, las normas de mi empresa prohíben la construcción /End-Free, CALLB, /Free. ¿Cómo puedo llamar a un procedimiento usando RPG de formato libre?
R
Cuando se presentó el formato libre, IBM dejó de dar soporte a los códigos de operación heredados CALL y CALLB, ya que los prototipos eran una opción mucho mejor. Por ejemplo, puede escribir el siguiente prototipo:
D MIMODULO PR D Parm1 10a D Parm2 9p 2
Este prototipo llama a un procedimiento denominado MIMODULO y le pasa dos parámetros: Parm1 y Parm2. Las definiciones de Parm1 y Parm2 no son variables. Un prototipo no contienen definiciones variables, sino que le indica al compilador de RPG el nombre de la rutina (por ejemplo, MIMODULO) y el tipo de parámetros que acepta la rutina. El compilador usa esta información cada vez que se llama a MIMODULO para verificar que el paso de los parámetros es correcto. Además, procure utilizar nombres que le permitan recordar fácilmente qué se le pasa al procedimiento que se está llamando. El prototipo de ejemplo siguiente D ORX108R4 PR D NUMREF 10a D PRECIO 9p 2
Trucos y técnicas
▲ ▲ ▲
30
llama a un procedimiento denominado ORX108R4, cuyo procedimiento principal también se llama ORX108R4. Aquí, uso NUMREF y PRECIO para ayudarme a recordar lo que tengo que pasar para cada parámetro. Si deseo llamar al procedimiento principal del módulo ORX108R4, escribiría lo siguiente en RPG de formato libre: ORX108R4( MiNumRef : MiPrecio );
Para proteger el código contra errores, el compilador de RPG verifica que la variable MiNumRef se puede pasar legalmente como un valor 10A y que MiPrecio se puede pasar legalmente como una variable 9p 2. Mejor aún, en el prototipo puedo especificar un nombre distinto del del procedimiento (o módulo) subyacente real añadiendo la palabra clave ExtProc() al prototipo (Figura 1). ServerNEWS MAYO 2009
FIGURA 1 Utilización de ExtProc para especificar un nombre distinto en el prototipo D GETPRICE PR ExtProc(‘ORX108R4’) D SKU 10a D PRICE 9p 2 . . GetPrice( MySKU : MyPrice );
FIGURA 2 Especificando ExtPgm para llamar a un programa D AP_GET_CHECK_DATE... D PR ExtPgm(‘APZ994R4’) D VENDOR 4p 0 const D CHECKNO 9p 2 const D DATE 8p 0 . . AP_GET_CHECK_DATE( VendNo: CheckNo: Date );
Debido al límite de diez caracteres de los nombres de objetos en nuestro sistema operativo, mucha gente utiliza abreviaturas de difícil comprensión como ORX108R4 para los nombres de los módulos, etcétera. Pero “cambiar el nombre” del módulo en el interior del código facilita su lectura. Si no se especifica ExtProc(), la opción predeterminada consiste en llamar a un procedimiento que tenga el mismo nombre que el prototipo. Naturalmente, los prototipos también pueden reemplazar el código de operación CALL, lo que permite llamar a otros programas además de llamar a procedimientos. Para llamar a un programa, debe especificar la palabra clave ExtPgm en lugar de ExtProc (Figura 2). Tenga en cuenta que ExtPgm llama a un programa en vez de a un subprocedimiento. En el programa puedo hacer referencia a la rutina AP_GET_CHECK_DATE***(1) pero, en el disco, el objeto *PGM se denomina APZ994R4. Esta llamada funciona igual que si se hace con CALL/ PARM o ejecutando el mandato CALL de CL. En la Figura 2, también he puesto la palabra clave CONST en los dos primeros parámetros, de modo que la rutina a la que se llama no puede modificar este parámetro. En este caso resulta práctico, ya que mejora la legibilidad del código. Como tanto VENDOR como CHECKNO los he marcado como CONST, es obvio que se utilizan como parámetros de entrada. El parámetro DATE no es CONST para dejar claro que APZ994R4 lo utilizará para devolver datos. — Scott Klement
P
Necesito descargar todos los miembros fuente de un determinado archivo físico fuente en mi PC. Me gustaría que fueran legibles en el PC, por lo que no me sirve la sugerencia de que use un archivo de salvar. Me gustaría editar los miembros fuentes en el PC con herramientas normales y poder subirlos de nuevo más tarde.
R
1. Abra el Bloc de notas en Windows. Escriba el código siguiente en él: klemscot <— aquí ponga su ID de usuario grandullon <— aquí ponga su contraseña
2. Guarde el archivo en c:\FTPTEST.TXT (o en cualquier otro sitio). 3. Abra un indicador de mandatos (o la interfaz de mandatos de MS-DOS) y escriba el siguiente mandato de DOS: ftp -s:C:\FTPTEST.TXT as400.ejemplo.com
Debería conectarse automáticamente con (en este ejemplo) as400.ejemplo.com, cambiar a la biblioteca SRCLIB y descargar todos los miembros del archivo QRPGLESRC. Si desea que el mandato se ejecute automáticamente cuando un usuario pulse un icono, puede crear un acceso directo al programa FTP y configurarlo para que ejecute la secuencia de mandatos. Para ello, siga estos pasos: 1. Pulse con el botón derecho del ratón en el escritorio y elija Nuevo|Acceso directo. 2. Cuando se le pida que “Escriba la ubicación del elemento”, escriba simplemente “ftp” (por ahora) y pulse Siguiente. 3. Cuando se le pida que “Escriba un nombre para este acceso directo”, especifique algo del estilo “Descargar todos los miembros fuente de SRCLIB” y pulse Finalizar. 4. Ahora habrá un acceso directo en el escritorio. Pulse sobre él con el botón derecho del ratón y elija Propiedades. En la pestaña Acceso directo, en el recuadro de texto Destino, dice: %windir%\system32\ftp.exe
5. Cámbielo de modo que diga %windir%\system32\ftp.exe -s:C:\FTPTEST.TXT as400.ejemplo.com
Asimismo, cambie el valor de “Iniciar en” por el directorio en el que desea que se descarguen los miembros fuente (por ejemplo, C:\DESCARGAS). 6. Pulse Aceptar para guardar los cambios. Ahora, cuando efectúe una doble pulsación en el icono del escritorio, debería ejecutarse automáticamente la secuencia de mandatos FTPTEST.TXT para descargar todos los miembros fuente en la carpeta especificada.
Trucos y técnicas
Se me ocurren dos formas fáciles de hacerlo. Para la una hay que utilizar WDSc y para la otra FTP. WDSc proporciona una herramienta que permite acceder a los miembros fuente fuera de línea. Por ejemplo, si desea trabajar en el código fuente mientras viaja en avión, puede utilizar la opción Poner disponible fuera de línea para descargar el código en el portátil. Luego, puede editar el código con WDSc y actualizar los cambios cuando se pueda volver a conectar con el System i. Para ello, pulse en el Explorador de sistemas remotos la opción Objetos|Trabajar con objetos del iSeries, y busque el archivo fuente que desea descargar en el PC. Si selecciona un archivo físico fuente, puede pulsar sobre él con el botón derecho del ratón, elegir Poner disponible fuera de línea y WDSc automáticamente descargará todos los miembros en el PC para poderlos consultar posteriormente. No es necesario descargar todos los miembros. Si desea descargar un miembro concreto, puede pulsar con el botón derecho del ratón en el miembro para poder acceder a él fuera de línea. Cuando esté listo para devolver el miembro fuente al System i, pulse sobre él con el botón derecho del ratón en la vista de iSeries Project Navigator y elija Acciones remotas|Insertar cambios. La segunda opción, FTP, tiene un mandato denominado mget que permite recuperar todos los archivos que tengan determinado nombre. Pueden usarse comodines, por lo que es fácil descargar todos los miembros de un miembro fuente dado. De forma predeterminada, FTP hace una pausa antes de descargar cada archivo y pregunta al usuario si realmente desea descargarlo, algo que puede resultar engorroso. Sin embargo, se puede utilizar otro mandato de FTP, denominado prompt, para indicarle a FTP que no pregunte por cada miembro. Para usar la técnica basada en FTP, siga estos pasos:
quote site namefmt 0 prompt off cd SRCLIB ascii mget QRPGLESRC.* quit
▲ ▲ ▲
Descarga rápida de todos los miembros fuente en un PC
— Scott Klement JUNIO-JULIO 2009
ServerNEWS
31
GUIA
32 ServerNEWS JUNIO-JULIO 2009
GUIA
MANTENIMIENTO Y BROKERAGE INFORMÁTICO, S.L. Mantenimiento / Alquiler y Brokerage / Venta / Redes Backup Center Pere IV 78-82, 7º 3ª 08005 - Barcelona (Spain) T. 34 934 854 427 Fax 34 934 850 168
P.T.A. Edificio CENTRO EMPRESAS 29590 Málaga
JUNIO-JULIO 2009 ServerNEWS 33
confidencial
por Carlos Bell
LOS ROBOS DE DATOS SUBEN COMO LA ESPUMA A propósito de los Temas de portada de este número, la cifra récord que alcanzan los robos de números de tarjeta de crédito y de otros valiosos datos digitales parece burlarse de las medidas de seguridad adoptadas para protegernos. Tal parece que ni los informáticos más cuidadosos en esta materia pueden impedir que las mafias saqueen digitalmente una entidad financiera o cualquier otra empresa, ya que penetran en su red por un agujero olvidado, pero fácil de aprovechar, para inyectar programas maliciosos encargados de robar esos datos. Según el informe “Data Breach Investigations Report 2009” de Verizon Business (accesible desde la dirección situada al pie de la figura), en 2008 los ladrones se apoderaron de unos 285 millones de registros, más de lo que Verizon Business había encontrado en los cuatro años anteriores combinados. La compañía basó su informe en investigaciones públicas y otras privadas de los principales robos reportados en compañías importantes, para lo cual se centraron en aquellos ataques donde los delincuentes tuvieron éxito y se hicieron con las numeraciones de tarjeta de crédito u otro tipo de datos valiosos. Los responsables de la mayoría de robos son ladrones en busca de ganancias: “El 91 por ciento de todos los registros robados en 2008 se atribuye a la actividad delictiva organizada”, indica el informe que tiene en cuenta las direcciones IP usadas en los robos, además de los arrestos efectuados y los que se harán como resultado de las investigaciones, coordinadas frecuentemente con agencias policiales como el FBI y Scotland Yard. De los 90 allanamientos estudiados como fundamento del informe, 68 procedían de una dirección IP concreta; Europa del Este fue la fuente más común, seguida por Asia Oriental y por América del Norte.
INDICE DE ANUNCIANTES JUNIO/JULIO 2009 Empresa Página AMERICAN TOP TOOLS ......................... Interior portada AMERICAN TOP TOOLS ........... Interior contraportada BARTECH ...................................................................................... 7 CACOVAI .................................................................................... 25 EXICON ....................................................................................... 12 GUÍA ..................................................................................... 32, 33 IBM ...................................................................... Contraportada SIRIO INFORMATICA ............................................................ 21 SUSCRIPCION ServerNEWS ................................................. 23 TRENTISA .................................................................................... 15
34 ServerNEWS JUNIO-JULIO 2009
www.verizonbusiness.com/resources/security/reports/2009_databreach_rp.pdf
Hoy, los ladrones de datos en línea no se limitan simplemente a ejecutar rastreos automáticos para aprovecharse de cualquier agujero que encuentran en las redes. Lo más probable es que primero seleccionen un blanco específico cuyos datos puedan ser convertidos en dinero efectivo, y después planifican cómo entrar. Con frecuencia encuentran un punto fácil para hacerlo, por ejemplo, una conexión de acceso a Internet que emplea una contraseña predeterminada. Incluso en los pocos casos donde los piratas se enfocaron en un agujero específico de software, no atacaron nuevas fallas potencialmente desconocidas por los informáticos. De los seis casos en los que Verizon Business atribuye un ataque centrado en el software, cinco aprovecharon vulnerabilidades que ya tenían correcciones disponibles desde hacía más de un año; la solución para el sexto existía desde hacía seis meses. No sólo son los bancos. Según informaba el pasado 11 de junio el diario escocés Sunday Herald, un ataque perpetrado a uno de los principales grupos hoteleros occidentales ha permitido el robo de datos de identidad (direcciones, números de teléfono, detalles de tarjetas de crédito y lugar de empleo) de unos ocho millones de clientes de dicha empresa. Según la noticia, un hacker indio desconocido habría logrado burlar la seguridad del grupo a través del sistema de reservas on line para, posteriormente, vender la información sobre cómo acceder a una red clandestina controlada por la mafia rusa. En fin, espero que no os veáis afectados ni a nivel laboral ni personal por uno de esos robos y que nadie os amargue las vacaciones... Eso es todo, hasta septiembre. ¡Ah, y cuidado con la tarjeta de crédito! ■ Como sabes, esta información es estrictamente confidencial. Aunque nosotros neguemos haberlo dicho o escrito, te autorizo a que obres en consecuencia
5 Suplemento digital del número 195 de ServerNEWS
Junio-Julio 2009
IBM Systems Director Navigator para i Tareas basadas en web para gestionar el IBM i Por Greg Hintermeister
L
a sensación que me produce la versión 6.1 de IBM Systems Director Navigator para i (des de ahora, simplemente “Navigator para i”) es parecida al orgullo que siento cuando uno de mis cuatro hijos realiza algo verdaderamente excepcional. Lo que hemos proporcionado a los usuarios es una herramienta basada en web intuitiva, rápida y robusta para gestionar el sistema operativo IBM i. ¿No conoce Navigator para i? Bueno, todo empezó con Operations Navigator, una aplicación basada en Windows que permitía gestionar un puñado de tareas del sistema operativo OS/400. Cuando más adelante le cambiamos el nombre por iSeries Navigator, le añadimos Management Central, que ofrece funciones de gestión centralizada relacionadas con la supervisión, los arreglos (PTF’s) y los usuarios, además de otras tareas. En el proceso, nuestro objetivo era ir migrando Navigator a una interfaz basada en web porque sabíamos que los usuarios no querían depender de una aplicación de Windows instalada en el centro de datos para gestionar sus sistemas operativos. En las versiones 5.3 y 5.4 empezamos a añadir tareas basadas en web que se basaban en las tareas de Navigator. Ahora, en el release 6.1, tenemos más de 300 tareas basadas en web que pueden ejecutarse con la misma facilidad que con System i Navigator, pero ahora desde Navigator para i.
Comparación entre el viejo y el nuevo Navigator Antes de empezar a describir las funciones de Navigator para i, me gustaría comentar las diferen-
cias entre éste y System i Navigator. Esta es la definición de cada una. Navigator para i. Esta consola basada en web está incrustada en todas las instancias del sistema operativo IBM i. No hay que instalar nada. Tenemos a nuestra inmediata disposición más de 300 tareas con sólo apuntar el navegador web a http://nombresistema:2001. System i Navigator. Esta consola instalada en Windows utiliza mandatos remotos y API para acceder a varios sistemas operativos IBM i. Se incluye con System i Access y precisa configurar los sistemas que se quieren gestionar antes de poder acceder a ellos. A continuación se describe lo que se puede gestionar con cada versión: Navigator para i. Como esta consola está incrustada en el sistema operativo IBM i, puede gestionar solamente esta instancia. Hay unas cuantas excepciones: el usuario puede utilizar Navigator para i para gestionar instancias remotas de IBM i mediante la instancia actual (mediante el asesor de URL), además de gestionar los servidores Windows y Linux integrados. System i Navigator. Como esta consola está instalada en una máquina Windows remota, puede gestionar un puñado de instancias de IBM i directamente o muchas instancias de IBM i usando la función Management Central. Las capacidades exclusivas de cada una son las siguientes: Navigator para i. Las dos funciones principales disponibles únicamente en Navigator para i son JUNIO-JULIO 2009 PowerNEWS 1
IBM Systems Director Navigator para i
Perforación Data Investigator y High Availability Solutions Manager (HASM). Además, también se incluyen mejoras en la facilidad de uso, como la posibilidad de especificar una página de inicio exclusiva y de personalizar las tareas favoritas. System i Navigator. Las funciones de Management Central sólo están disponibles en System i Navigator. Sin embargo, muchas de las cosas que ofrece Management Central también están disponibles en IBM Director y se mejorarán en el próximo release de IBM Systems Director (explicaré más cosas sobre este tema en un próximo artículo). Asimismo, Navigator para i no incluye funciones de la base de datos que impliquen el uso de gráficos y diagramas, vistas gráficas de la gestión de los discos ni diagramas de capacidad. Le propongo que utilice Navigator para i para las tareas específicas de IBM i que han de realizarse diariamente y que utilice System i Navigator o IBM Director para los trabajos de supervisión, actualización e inventario.
FIGURA 1 System i Navigator mostrando trabajos del servidor QHTTPSVR
FIGURA 2 Página de bienvenida con las tareas principales a la izquierda
Para empezar Para empezar a utilizar Navigator para i sólo tiene que apuntar el navegador a la dirección web: http://nombresistema:2001. Navigator para i forma parte de la opción 3 del sistema operativo base (5761SS1 0003). FIGURA 3 Navigator para i necesita algunos progra- Página de resumen de las tareas del sistema mas, pero estos productos ya deberían es• J2SE 5.0 de 32 bits (5761JV1 opción 8) tar en nuestro sistema. Sin embargo, si tiene algún • IBM Toolbox para Java (5761JC1) problema, puede echar mano de esta lista: • Host Servers (5761SS1 opción 12) • IBM HTTP Server para i5/OS (5761DG1) Si necesita resolver algún problema relacionado con • QShell (5761SS1 opción 30) el trabajo servidor que ejecuta Navigator, busque los • PASE (5761SS1 opción 33) trabajos Admin de QHTTPSVR. En la Figura 1, • IBM Developer Kit para Java (5761JV1) 2 PowerNEWS JUNIO-JULIO 2009
FIGURA 4 Página de estado del sistema que muestra valores en tiempo real
FIGURA 5 Tabla de trabajos del servidor
puede ver varios trabajos Admin de QHTTPSVR. El primero ejecuta HTTP Web, LDAP, Web Navigator y funciones de IPP. Admin2 ejecuta IBM Systems Director Navigator, Secure Perspective, Cluster Services y HASM. El trabajo Admin3 ejecuta IBM Access para Web. Puede finalizar y reiniciar el servidor HTTP desde los trabajos del servidor TCP/IP.
Primer contacto: moverse por Navigator para i Cuando abra Navigator para i verá un montón de tareas parecidas, como las que se se muestran en la Figura 2. Le alegrará saber que no hemos elimina-
do el puerto 2001. Navigator para i se apoderó del puerto para el portal de gestión. El enlace a la antigua página de tareas de i5/OS que aparecía antes en el puerto 2001 ahora es la página de bienvenida. En el área de navegación de la izquierda verá tareas que se parecen mucho a las carpetas de System i Navigator. Si pulsa en una obtendrá un resumen de las tareas más utilizadas, con un botón debajo para consultar todas las tareas de esta categoría. En la Figura 3 puede verse un buen ejemplo: en el marco de navegación de la izquierda pulse en Work Management (Gestión de trabajos) para ver la página de resumen que le guiará por las tareas más habituales. Aquí también puede desplazarse hasta tareas más detalladas. Si dese ejecutar una tarea, pulse el enlace para abrir una pestaña nueva. Cada página que se abre en una pestaña puede guardarse como página de inicio; por lo tanto, en cuanto inicie la sesión, Navigator automáticamente abrirá las tareas principales. En la Figura 4 se muestran cuatro de mis tareas favoritas: Users (Usuarios), Server Jobs (Trabajos de servidor), TCP/IP Servers (Servidores TCP/IP) y System Status (Estado del servidor). Como todas las tareas que se muestran en Navigator para i en su propia pestaña pueden guardarse como una página de inicio, tiene una gran variedad de tareas entre las que elegir. Para eliminar una página de inicio o cambiar la que aparece en primer lugar, simplemente seleccione My Startup Pages (Mis páginas de inicio), en la zona de navegación de la izquierda.
La experiencia del usuario normal Ahora es el momento de dar un vistazo rápido a algunos de los controles más habituales que verá. Como JUNIO-JULIO 2009 PowerNEWS 3
IBM Systems Director Navigator para i
se puede observar en la Figura 4, las páginas de propiedades pueden tener varias pestañas. Se comportan de la misma forma que las páginas de propiedades de System i Navigator y, de hecho, ¡se trata de los mismos archivos binarios! Pulse en las pestañas que le apetezca consultar. Aunque las tablas tienen un aspecto algo diferente, siguen teniendo prácticamente las mismas funciones. Como se puede ver en la Figura 5, la tabla muestra varias páginas. Desde la esquina superior derecha del portlet (el icono del lapicero), se puede editar el número de filas que se mostrarán en cada página. El valor predeterminado es de 15 filas, pero puede cambiarse hasta un máximo de 100. También se pueden añadir o eliminar columnas. La ordenación por columnas funciona bien y a la derecha de cada nombre hay un widget de menú contextual. Pulse en el widget para obtener el menú contextual, tal como haría en System i Navigator. Casi todo lo demás es muy parecido a lo que está acostumbrado a ver. Los asistentes parecen asistentes y los recuadros de edición, las listas desplegables y los botones de selección también son parecidos. Un característica exclusiva de Navigator para i es que mediante un URL es posible acceder directamente a cualquier tarea, no importa lo detallada que sea. En el URL se pueden establecer opciones personalizadas, como criterios de inclusión (por ejemplo, ver solamente los trabajos de Andrés). Además, el asesor de URL le ayudará a componer el URL que la aplicación necesite crear.
Introducción a las funciones del producto Ahora, vamos a profundizar un poco en cada función. De algunas funciones simplemente haré un resumen; de otras daré más detalles porque tienen características nuevas. En artículos futuros profundizaré aún más sobre algunas de estas posibilidades. 4 PowerNEWS JUNIO-JULIO 2009
FIGURA 6 Ejecución de un mandato en IBM i
FIGURA 7 Mostrar todas las tareas de gestión de trabajos
FIGURA 8 Servidores TCP/IP del sistema
FIGURA 9 Interfaz de usuario de Detección de intrusiones del release 6.1
FIGURA 10 Página de resumen de bases de datos
Gestión del sistema permite llevar a cabo tareas generales del sistema. Ejemplos de estas tareas son el estado del sistema, las anotaciones históricas y el estado del disco. En la categoría Sistema la función Ejecutar mandato (Figura 6) es nueva. Esta función no es igual que una línea de mandatos interactiva. Se necesita una sesión 5250 para ejecutar una línea de mandatos interactiva. Pero Ejecutar mandato permite escribir un mandato, consultar los mandatos anteriores e incluso solicitar los parámetros de un mandato. Después de ejecutar un mandato, el sistema nos indica si se ha ejecutado correctamente. En caso contrario, la función muestra un mensaje de error para que el usuario sepa qué ha sucedido. Para ver la salida o detalles de un mandato, puede consultar las anotaciones del trabajo del usuario actual. Operaciones básicas permite gestionar mensajes, la salida de la impresora, impresoras y los trabajos del usuario. Estas tareas son parecidas a las de System i Navigator. Gestión de trabajos permite gestionar los trabajos de IBM i, las colas de trabajo, las colas de salida, los subsistemas y las agrupaciones de memoria. Como pasa con las páginas de resumen, la página de gestión de trabajos tiene un botón en la parte inferior que permite mostrar todas las tareas de esta categoría. En este caso, el botón se denomina Mostrar todas las tareas de gestión de trabajos. En la Figura 7 aparece la pantalla resultante, que muestra todas las tareas de la categoría Gestión de trabajos en formato de árbol. Aquí, se ha abierto la categoría de tareas Jobs (Trabajos) y se muestran todas las tareas que pueden ejecutarse para un trabajo. Si selecciona una tarea y pulsa Aceptar, ésta se ejecutará. En el caso de algunas tareas, como Active Jobs (Trabajos activos), la ventana de la tarea se abre inmediatamente. En el de otras, como Hold Job
JUNIO-JULIO 2009 PowerNEWS 5
IBM Systems Director Navigator para i
(Retener trabajo), Navigator solicita al usuario información adicional antes de ejecutar la tarea. Configuración y servicio permite llevar a cabo la configuración del sistema. Desde aquí, puede gestionar valores del sistema, husos horarios y el reloj del sistema. Una función basada en web nueva en este release permite gestionar las unidades de disco. Desde aquí, pueden verse las unidades de disco y las agrupaciones de discos, y añadir tanto unidades de disco como agrupaciones de discos nuevas. Como ocurría con System i Navigator, es necesario un ID usuario y una contraseña de las DST. Si tiene una cuenta, se le pedirá el ID y verá la tabla de unidades de disco. Si no tiene ninguna, recibirá un mensaje con un enlace a una página del Information Center en que se ofrecen instrucciones sobre cómo añadir el ID. FIGURA 11 Le recuerdo que la vista gráfica, donde pueden Visión general del entorno de la base de datos verse imágenes de las torres y de dónde se encuentran las unidades de disco, no está disponible en Navigator para i. Para disponer de esta posibilidad tendrá que seguir usando System i Navigator. Gestión de red permite gestionar TCP/IP e Internet. Se incluyen tareas para redes IPv4 e IPv6, líneas, servidores DNS, IBM Tivoli Directory Server (LDAP) y una de mis favoritas, Servidores TCP/IP. En la Figura 8 puede verse la tabla TCP/IP Servers que muestra uno de los menús contextuales del servidor. Teniendo esta tarea como una de las páginas de inicio, es fácil gestionar el entorno TCP/IP. Administrador del servidor integrado per- FIGURA 12 mite gestionar los servidores alojados en el IBM. Tarea Investigar datos con distintas perspectivas Esta característica permite ejecutar ni más ni menos que 37 tareas distintas. Puede gestionar Seguridad permite configurar y gestionar la conlos servidores integrados y los servidores iSCSI, así como los discos virtuales y los que usan los servido- figuración de seguridad del sistema. Algunas de las res integrados. Asimismo, puede gestionar el servi- tareas que se incluyen son la gestión de listas de audor de red, los adaptadores del sistema principal y torizaciones, el cambio de permisos sobre objetos, la los procesadores de servicio, así como la inscripción gestión de servicios criptográficos y claves, y la configuración del coprocesador criptográfico. en dominios de Windows. 6 PowerNEWS JUNIO-JULIO 2009
Una de las nuevas interfaces de usuario disponibles en el release 6.1 es Detección de intrusiones. Permite configurar y gestionar políticas para notificar al usuario si se detectan intrusiones en el servidor. Esta nueva característica es más fácil de utilizar que en versiones anteriores porque no es necesario usar el Supervisor de intrusiones ni el diario de auditoría. Todo lo necesario está en la interfaz de usuario Detección de intrusiones, tal y como se ve en la Figura 9. Gestión de usuarios y grupos permite gestionar los usuarios y grupos del IBM i. Esto incluye consultar todos los usuarios y grupos así como los usuarios que no pertenecen a un grupo. Desde aquí también se pueden crear usuarios o grupos. Si está familiarizado con la interfaz de usuario de grupos de System i Navigator, observará un gran parecido. Lo único que hay que recordar es que sólo es la lista directa de usuarios y grupos, como una conexión directa con una instancia del IBM i. En Navigator para i no se dispone de ninguna de las funciones de Management Central que sirven para buscar usuarios, editar múltiples usuarios, enviar usuarios o realizar un inventario de usuarios. Gestión de la base de datos permite especificar qué base de datos desea que usen todas las tareas de la base de datos. Basta con pulsar el botón Set Database|Schema to Use with Database Tasks (Establecer base de datos|Esquema a utilizar con las tareas de base de datos) que se ve en la parte inferior de la Figura 10. Una vez establecida la base de datos correcta, ya es posible trabajar con objetos, tablas, vistas e índices. Además, en Navigator para i existen supervisores del rendimiento de la base de datos y Database Health Center. Database Health Center proporciona indicadores históricos y en tiempo real del estado de la base de datos. Por ejemplo, en la Figura 11 se muestra la visión general del entorno de la base de datos. También hay vistas de actividades que permiten consultar la actividad actual, así como las páginas de límites de entorno, tamaño y diseño. Cada pági-
na puede mostrar datos en tiempo real o históricos. Sistemas de archivos permiten gestionar el sistema de archivos. Esta función incluye tareas como la consulta del contenido del sistema de archivos y la gestión de los permisos de los objetos del sistema de archivos. También permite gestionar compartimientos de archivos (es decir, carpetas compartidas). Navigator para i proporciona un árbol y una tabla para explorar el sistema de archivos, además de una función de búsqueda para buscar en todas las columnas de la tabla. Tareas de configuración de Internet incluye la gestión y configuración de los servidores HTTP y los servidores de aplicaciones, la gestión de certificados digitales, la configuración de IBM IPP Server, la administración del servidor de ayuda basada en web y el uso del asistente de configuración de Internet para configurar el entorno de Internet. Desde esta ventana también se puede acceder al asesor de URL de System i Navigator, que permite añadir tareas de Navigator para i en sus propias aplicaciones web.
Plug-ins adicionales Además de todas las funciones base, existen otros plug-ins, incluidos estos: Gestión del rendimiento permite gestionar servicios de recogida, los objetos de datos y la frecuencia con que recogen los datos. Una vez recopilados los datos, esta función permite investigar los datos de rendimiento del sistema. En la Figura 12 se muestra la tarea Investigar datos. Esta tarea tiene docenas de perspectivas entre las que elegir. Las tareas le ayudarán a centrarse en los datos de rendimiento de maneras especiales. Esta característica ofrece una descripción de cada perspectiva y, a continuación, permite elegir qué objeto de recogida utilizar a la hora de visualizar la perspectiva. Yo he elegido CPU Utilization and Waits Overview (Visión general de utilización de CPU y tiempos de espera) y he especificado los datos de los servicios de recogida más recientes. En los resultados JUNIO-JULIO 2009 PowerNEWS 7
IBM Systems Director Navigator para i
de la Figura 13 se muestra la perspectiva seleccionada y la leyenda que explica que la gráfica representa un periodo de tiempo de doce horas. Una función permite activar la ayuda flotante y, al pasar el ratón sobre el gráfico, se ven detalles de los valores, así como una explicación de cada recuadro del gráfico. Cuando acabe de analizar esta perspectiva, puede cerrar el gráfico o guardarlo como una perspectiva personalizada. Servicios BRM (BRMS) es un viejo conocido de los usuarios de i. Nos ayuda a gestionar las copias de seguridad más complejas y cruciales, incluyendo las copias de seguridad en línea de los servidores Lotus. También permite recuperar el sistema completamente en caso de siniestro o de un error de hardware. Servicios de recurso de clúster permite configurar y gestionar la solución de alta disponibilidad creando y gestionando clusters, grupos de recurso de clúster, dominios de dispositivo, dominios de administración de clúster y realizar conmutaciones. High Availability Solutions Manager permite seleccionar, configurar y gestionar la solución de alta disponibilidad. Incluye una licencia de evaluación para poder ver si cubre sus necesidades. Como se puede ver en la Figura 14, puede dar unos cuantos pasos con la licencia de evaluación, incluso verificar qué solución de alta disponibilidad desea y validar si tiene el hardware necesario. Así, cuando esté listo para dar el salto, podrá adquirir la licencia completa y, seguidamente, instalar y gestionar su solución de alta disponibilidad.
Habrá más Navigator para i tiene algunas funciones nuevas asombrosas. Y ahora es más rápido, es personalizable y está basado en web. En el futuro inmediato, verá todas estas funciones integradas de manera transparente en IBM Systems Director, la herramienta estratégica multiplataforma que permite gestionar de forma centralizada los muchos sistemas de su entorno. En IBM Systems Director, encontrará funciones de supervisión, automatización, gestión de actualizaciones (PTF y firmware) 8 PowerNEWS JUNIO-JULIO 2009
FIGURA 13 Perspectiva Visión general de utilización de CPU y tiempos de espera
FIGURA 14 Página de resumen de High Availability Solutions Manager
y virtualización, no sólo del IBM i, sino de otras plataformas que usted o sus colegas gestionan. Para obtener más información, consulte el Information Center de IBM (publib.boulder.ibm.com/ iseries) o el sitio web de IBM Systems Director Navigator para i (ibm.com/systems/i/software/ navigator). ●
Greg Hintermeister trabaja en IBM como inventor y diseñador de mecanismos de interacción con el usuario. Tiene amplia experiencia en el diseño de mecanismos de interacción con el usuario para los productos de gestión de sistemas y virtualización de IBM, aplicaciones inalámbricas y numerosas aplicaciones web. Es un conferenciante habitual en grupos de usuarios y congresos técnicos.
Restringir la informática móvil Proteja sus dispositivos informáticos portátiles antes de que acaben con su empresa Por Mel Beckman
L
a situación siguiente se ha producido tantas veces que ya no es ni siquiera un poco excepcional. Sólo tiene que escoger de entre las opciones que se proponen para obtener alguna de las noticias publicadas recientemente: “Un trabajador de [un pequeño subcontratista/una gran corporación/un organismo gubernamental] se deja [el ordenador portátil/la unidad de disco duro/el teléfono móvil] en [un coche/un taxi/una biblioteca/una cafetería/un parque público] y [lo pierde/se lo roban/es abducido por extraterrestres]. Desgraciadamente, el dispositivo en cuestión contiene [10.000/100.000/ 2,1 millones de] registros confidenciales [personales/de la empresa/del gobierno] de naturaleza [personal/ criminal/financiera/relativa a la seguridad nacional]. Los datos no estaban cifrados, por lo que si alguien encuentra el dispositivo perdido, numerosas entidades deberán gastarse [miles/millones/miles de millones] de euros en compensar el daño causado a las personas [inocentes/culpables] afectadas.” La razón de que esta historia se repita una y otra vez es simple: pocas organizaciones se toman en serio la seguridad de sus recursos informáticos móviles. Sorprendentemente, apenas hay castigos graves por cometer estas barbaridades con los datos. Puede que se despida a alguien, pero a nadie se le multa y, a menos que se le declare culpable de robar realmente los datos, nadie va a la cárcel. Sin embargo, muchísima gente resulta perjudicada. Los datos perdidos pueden acabar
convertidos en cuentas bancarias vacías, pensiones de jubilación evaporadas, identidades robadas, beneficios fiscales desaparecidos e incluso en empresas cerradas. La perdida de información confidencial, cuando protegerla es tan trivial, es una negligencia que tiene espantosas consecuencias pero no un castigo como se merece. Lamentablemente, los informáticos somos culpables en gran medida de esta falta de interés. Somos los responsables de desplegar cientos e incluso miles de dispositivos móviles en nuestras organizaciones y, aún así, muchos de nosotros (incluido un servidor) ponemos la seguridad en un segundo plano. No debería ser así. Los profesionales de la informática pueden adoptar un papel protagonista en este asunto mostrando a los ejecutivos los riesgos de poner en peligro un dispositivo móvil y proporcionándoles opciones de cifrado factibles. La tecnología está de nuestro lado; las velocidades de los procesadores y de las comunicaciones son tan rápidas que el rendimiento no ha de ser un problema con la tecnología de cifrado móvil. A continuación, vamos a explicar cómo se pueden limitar los recursos móviles y las responsabilidades legales hoy en día.
Algo es mejor que nada La protección de la información es un compromiso entre seguridad y conveniencia. Cuanto mayor sea la seguridad, más engorrosas serán las interacciones JUNIO-JULIO 2009 PowerNEWS 9
Restringir la informática móvil
de los usuarios con los ordenadores. Sin embargo, incluso un poco de seguridad es mejor que nada. Puede que no le proteja en todas las situaciones, pero puede paliar las vulnerabilidades más graves. Por desgracia, muchos profesionales de las TIC detestan instalar las medidas de seguridad más simples porque están trabajando en un sublime plan maestro de protección máxima. No caiga en esta trampa tan simple. Haga lo que tenga que hacer enseguida y siga luego progresando en sistemas de protección más sofisticadas. Algunos de los descuidos más comunes con los dispositivos móviles son los más fáciles de evitar. Un usuario pierde un ordenador portátil o un teléfono móvil mientras estaba conectado, lo que significa que cualquiera que encuentre el dispositivo podrá examinarlo atentamente y extraer su contenido. Las protecciones simples contra estos riesgos son sencillas: imponer buenas contraseñas de hardware (BIOS) y software (sistema operativo), tiempos cortos de inactividad para las sesiones interactivas y la obligatoriedad de iniciar sesión para salir de la modalidad de suspensión. Las conexiones VPN nunca debe almacenar contraseñas y deben requerir autenticación de dos factores. Un dispositivo perdido es un problema grave en tanto siga perdido. Lo ideal sería recuperar la unidad o destruir su contenido para garantizar que los datos no caen en malas manos. De lo contrario, deberá suponer lo peor y actuar en consecuencia (y, asimismo, del modo más costoso). Una característica de seguridad útil y barata que puede instalar tanto en portátiles como en teléfonos móviles es un software de rastreo y recuperación de robos de tipo “Lo-Jack” (http://en.wikipedia.org/wiki/LoJack). El programa de rastreo de robos automáticamente informa a una central cada vez que tiene acceso a Internet; las direcciones IP mediante las que se conecta se registran permanentemente y pueden ayudar a los responsables de seguridad a localizar el dispositivo. Algunos programas de rastreo tienen la capacidad de convertirse en una “píldora de cianuro”: una vez advertida la desaparición del dispositivo, se le puede solicitar 10 PowerNEWS JUNIO-JULIO 2009
que él mismo borre su contenido la próxima vez que se conecte. Prácticamente todos los teléfonos móviles tienen esta opción. Las VPN solían ser una tecnología compleja y sofisticada. En la actualidad, las funciones de las VPN forman parte de la mayoría de los ordenadores portátiles y móviles y actualmente las utilizan mucho los empleados que pasan mucho tiempo fuera de la empresa. Es fácil pasar por alto el riesgo que representa esta tecnología: una conexión VPN comprometida es un túnel que conecta directamente con el corazón de la red empresarial. Este riesgo exige aumentar el nivel de protección hasta las cotas mencionadas antes: la autenticación de dos factores (2FA). Esto se considera una medida simple porque la autenticación 2FA actualmente es omnipresente, aunque algo desaprovechada. Todo lo que hay que hacer es activarla. La 2FA más primitiva usa mensajes SMS de móvil para transmitir una contraseña de un solo uso cada vez que un usuario se conecta con la VPN. Un intruso debería hacerse con el ordenador portátil, la contraseña de la VPN y un teléfono móvil para poder conectarse. Otros métodos 2FA más sofisticados usan fichas de un solo uso, sensores biométricos como por ejemplo lectores de huellas digitales o una combinación de ambos. Si ejecuta Active Directory de Windows en la red corporativa, existe la posibilidad de que los ordenadores portátiles y, en algunos casos los smart phones, estén controlados por las políticas de AD. Esto simplifica la tarea de poner en marcha una seguridad básica porque basta con activar estas políticas más seguras en los ordenadores portátiles cuando se conecten al dominio de la sede central. También tiene la opción de impedir que los usuarios modifiquen valores de configuración como por ejemplo el tiempo de espera de sesión o el almacenamiento local de contraseñas. “¡Un momento!”, protestará ese hacker que lleva dentro. “Estas medidas pueden detener a un ladrón incidental, pero cualquier hacker que se precie puede saltárselas fácilmente con sólo iniciar el sistema mediante un disco de recuperación”. Tiene toda la
razón. Y es por ello que estos pasos sencillos no pueden ser nuestro último destino, pero al menos permiten reducir el riesgo hasta que se instalen protecciones más sofisticadas. Si no está aplicando todos estos métodos hoy en día, deje de leer y apúntese en algún sitio que de esta semana no pasa. Después, siga leyendo para averiguar cómo llevar la seguridad a un nuevo nivel.
La clave está en el cifrado Perdóneme por el juego de palabras, pero no se olvide de la idea. Aunque las medidas básicas arriba mencionadas son un comienzo, no existen datos realmente protegidos en un dispositivo móvil a menos que estén cifrados. Pero el problema con el cifrado es que es incómodo. Debe aprender su funcionamiento y enseñárselo a sus usuarios, y tendrá que ocuparse del temible problema de la distribución de las claves. La formación no puede obviarse cuando hablamos de cifrado. Los usuarios deben entender qué datos necesitan cifrarse, cómo cifrarlos y descifrarlos, cómo saber que están cifrados cuando no se están utilizando y cómo proteger las claves de cifrado que permiten acceder a los datos. Los usuarios sin este conocimiento están condenados a poner en peligro las protecciones criptográficas sin darse cuenta. La formación lleva tiempo y, como todos sabemos, el tiempo es oro. Deberá prever gastar algo de dinero en medidas de seguridad, al menos en formación. Las tecnologías de cifrado en sí son baratas. La mayoría de sistemas operativos móviles (Windows XP/Vista, Mac OS X y Linux) incluyen funciones de cifrado de datos. Microsoft ofrece el sistema de cifrado de archivos (EFS), Apple ofrece FileVault, y tanto Linux, como Windows y Mac OS X son compatibles con la herramienta de cifrado de datos de código libre OpenPGP (Open Pretty Good Privacy). Todas estas técnicas son variaciones de un mismo tema: agrupar los archivos para protegerlos en una carpeta común y luego cifrar toda la carpeta mediante una contraseña para generar una clave de cifrado segura utilizando un algoritmo de cifrado fuerte como AES. Debido a la fortaleza de los modernos estándares
abiertos de cifrado, este método de protección de datos es seguro, con tal de que los usuarios cooperen manteniendo los archivos confidenciales dentro de la carpeta cifrada, manteniendo en secreto la contraseña y descifrando los archivos solamente cuando sea necesario. La formación de los usuarios y las políticas publicadas han llegado muy lejos con objeto de satisfacer esta necesidad. Dependiendo de la antigüedad de los dispositivos móviles, el rendimiento no se verá afectado. Los ordenadores portátiles con procesadores de doble núcleo probablemente no sufrirán ninguna ralentización durante los cálculos asociados con el cifrado y descifrado porque uno de los procesadores puede dedicarse a ello. Algunos portátiles integran aceleradores de cifrado o se les puede añadir, en caso de que el rendimiento sea un factor crítico. Los productos comerciales pueden ampliar las capacidades básicas de cifrado de archivos del sistema operativo para añadir una característica denominada discos seguros virtuales. Mediante esta estrategia, el programa de utilidad monta el contenido de un almacenamiento de archivos cifrados como una unidad de disco virtual (por ejemplo, la unidad K:) después de que el usuario especifique la contraseña correcta. El usuario lee y graba datos en este disco virtual como si fuera uno real. En cuanto el usuario se desconecta, el sistema operativo desmonta el disco y vuelve a ser seguro. Una tercera opción es utilizar almacenamiento externo cifrado por hardware en forma de unidad de memoria USB o de disco duro portátil. Con este método, es el hardware especial de la unidad extraíble el que realiza todas las tareas de cifrado y descifrado -generalmente, sin que el rendimiento se vea afectado- usando una clave codificada permanentemente en un chip del dispositivo. Los dispositivos pueden programarse con varias contraseñas de usuario de modo que más de una persona (un trabajador y su jefe, por ejemplo) puedan acceder a los mismos datos. El dispositivo generalmente utiliza protecciones físicas especiales que impiden que pueda extraerse el chip con la clave codificada del soporte de datos, JUNIO-JULIO 2009 PowerNEWS 11
Restringir la informática móvil
sea éste una memoria flash o una unidad de disco. Si se extrajera, la clave se autodestruiría, con lo que no podrían recuperarse los datos. Algunos productos incluyen incluso servicios cifrados de copia de seguridad en red, lo que permite que los usuarios mantengan una copia de seguridad segura de los datos sin tener que hacer una copia intermedia sin cifrar. Quizá piense que el cifrado de archivos puede ofrecer toda la seguridad que se necesita y tal vez esté en lo cierto, siempre que confíe en sus usuarios y que use contraseñas seguras. En el campo de la seguridad no se ha encontrado ninguna forma real de explotar una vulnerabilidad para burlar el cifrado de archivos. No obstante, en ensayos de laboratorio se ha demostrado la existencia de una vulnerabilidad teórica relacionada con la seguridad de la clave utilizada durante el cifrado de los archivos.
claves de cifrado. El tiempo disponible para recuperar las claves podría ampliarse enfriando el equipo mediante refrigerantes líquidos comerciales. Por suerte, esta vulnerabilidad sigue siendo puramente teórica y exigiría un gran esfuerzo por parte de un hacker. Sin embargo, como pasa con todas las cuestiones tecnológicas, el esfuerzo y el dinero necesarios para sacar partido de esta vulnerabilidad serán cada vez menores. De manera que el cifrado de archivos está bien hoy en día, pero debería empezar a barajar otras posibilidades para el futuro.
Nada de nada es igual a nada Aunque usted no esté pensando en el futuro, afortunadamente otros sí lo han hecho: los miembros del Trusted Computing Group (TCG). Puede que no sepa quiénes son, pero indudablemente debería importarle. No venden productos a los usuarios finales sino que desarrollan y publican estándares para fabricantes de La protección de la información es un compromiso entre equipos originales (OEM) quienes, a seguridad y conveniencia. su vez, fabrican los productos que incorporan esos estándares. Cuando los usuarios adquirimos esos productos obtenemos acceso a las capacidades de Recuerde que la contraseña que utiliza el usuario protección desarrolladas por el TCG. para desbloquear un archivo cifrado no es la clave El principal objetivo del TCG es la especificación real sino solamente la “clave de la clave”, como si di- del circuito integrado (chip) denominado Trusted jéramos. La clave de cifrado real se conserva en me- Platform Module (TPM) que pueden integrar los famoria, donde permanece a disposición de los bricantes para ofrecer la función de cifrado completo controladores de cifrado. Si alguien pudiera recupe- del disco (FDE) para un almacenamiento conectado, rar esa clave de la memoria, podría acceder a todos como por ejemplo una memoria flash o una unidad los datos cifrados. A pesar de las concienzudas medi- de disco. El “trusted” (seguro, de confianza) de TPM das de seguridad tomadas por los proveedores de so- hace referencia al hecho de que la seguridad se le luciones de cifrado, los investigadores descubrieron confía únicamente al chip TPM que presumiblemente que es posible extraer las claves de la memoria, in- (y hasta ahora puede demostrarse que así es) es a cluso con el ordenador apagado. Resulta que la me- prueba de manipulaciones. Cada chip TPM contiene moria RAM “volátil” no es tan etérea como se pensa- una clave raíz de almacenamiento (SRK) permanenba. Los chips de memoria conservan su contenido te a partir de la que se obtiene la clave de cifrado entre unos pocos minutos y algunas horas, aunque real. El TPM usa la clave de cifrado obtenida para se va degradando gradualmente con el paso del tiem- cifrar todos los datos del almacenamiento asociado... po. Así, aunque el ordenador esté apagado, un exper- incluido el sistema operativo en el caso de una unito podría peinar la memoria en busca de las valiosas dad de arranque. El chip TPM está físicamente 12 PowerNEWS JUNIO-JULIO 2009
protegido para impedir su extracción por fuerza bruta y si se intentara manipular simplemente destruiría la clave, convirtiendo los datos almacenados en un montón de números aleatorios. A un sistema operativo conectado, la unidad de disco duro le parece simplemente otro disco duro; cuando se usa con una unidad de disco que incluye algún sistema de cifrado integrado, el TPM modera todas las operaciones de cifrado y descifrado entre la unidad y el ordenador. Si el sistema incluye hardware de aceleración de las funciones de cifrado (normalmente incluidas en la unidad de disco duro), el cifrado se lleva a cabo a la velocidad máxima del disco. Los programas de utilidad denominados conjunto de aplicaciones FDE, que se ejecutan en el sistema operativo, interactúan con el TPM para almacenar los ID de usuario y las contraseñas que se necesitan para acceder al disco cuando se pone en marcha el ordenador. El TPM incorpora un sistema de cifrado de clave pública, de manera que puede autenticar de forma segura el ordenador en que está instalado. En caso de que el disco o el módulo TPM se separaran del equipo físico, los datos cifrados dejarían instantáneamente de ser legibles. Por lo tanto, un atacante no puede sacar el disco duro y leerlo en otro ordenador. El módulo TPM pide al usuario una contraseña durante el inicio de la BIOS (denominada autenticación previa al inicio). Sin la contraseña correcta, no se puede desbloquear la clave obtenida, no se puede descifrar la unidad y no se puede iniciar el ordenador. Vale la pena indicar que la protección mediante TPM cumple un objetivo normalmente inalcanzable: mejorar la seguridad a la vez que la simplifica. La protección mediante TPM es sólida y a prueba de errores de usuario. Los usuarios finales sólo tienen que escribir una contraseña antes del inicio (posiblemente con un segundo factor de autenticación) para poder acceder a todos los datos. Si el equipo se reinicia por alguna razón o se utiliza algún soporte (por ejemplo, un CD o un DVD) la unidad se vuelve a bloquear instantáneamente hasta que se suministra la contraseña correcta para el módulo TPM. El TPM impone estrictos intervalos de tiempo antes de poder volver
a especificar la contraseña, lo que hace prácticamente inviables los ataques por fuerza bruta para obtener la contraseña. Además, es posible programar el TPM para que destruya la clave maestra después de determinado número de intentos no válidos de especificar la contraseña. Sin embargo, una vez se inicia el ordenador, el contenido de la unidad es perfectamente legible, por lo que sigue siendo vital solicitar contraseñas al finalizar el tiempo de espera de sesión para impedir que nadie utilice el ordenador si se deja solo. El TPM también resuelve uno de los problemas más molestos para los responsables de informática: la destrucción de datos de forma fiable en dispositivos móviles retirados del servicio activo o que se van a dedicar a otros propósitos. Borrar los datos magnéticos de un disco físico no es tan fácil como se piensa. Incluso después de sobrescribir varias veces un disco, quedan suficientes señales magnéticas residuales como para recuperar mucha información útil. De manera que simplemente inicializar o borrar un disco no es un método fiable de borrar datos confidenciales si un ordenador se retira del servicio o se va a dedicar a otros propósitos. Incluso la destrucción física de una unidad de disco duro es difícil: se han recuperado datos de unidades quemadas a altas temperaturas. El TPM elude elegantemente este problema al permitir que el propietario del sistema simplemente genere una clave nueva, destruyendo la que había antes y, por lo tanto, perdiendo los datos del disco para siempre. Otro quebradero de cabeza administrativo que elimina el TPM es el de mantener el control de los dispositivos protegidos mediante TPM. La primera vez que se inicializa un equipo compatible con TPM se puede establecer una contraseña maestra que tendrá el control último sobre todas las funciones de TPM y, a continuación, proporcionar al usuario una contraseña secundaria con la que podrá iniciar sesión. El usuario final no puede cambiar la clave de TPM aunque sí puede cambiar la contraseña personal. Los administradores siempre podrán desbloquear el ordenador usando la contraseña maestra. JUNIO-JULIO 2009 PowerNEWS 13
Internamente, el TPM es bastante complejo, pero los distribuidores de sistemas operativos han cogido el toro por los cuernos y han simplificado el uso del TPM integrándolo con herramientas de cifrado de nivel de archivos tradicionales. El cifrado de unidades basado en BitLocker de Microsoft en Windows Vista y Windows Server 2008 pueden utilizar TPM para cifrar un volumen del sistema operativo del equipo y proporciona un control absoluto de la ruta de inicio. Varios conjuntos de aplicaciones FDE de otros proveedores también son compatibles con TPM. Pero, ¿cómo puede adquirirse TPM? Desde el año 2006, muchas empresas han integrado TPM versión 1.2 en las placas base de muchos ordenadores portátiles nuevos. La mayoría de smart phones también incorporan TPM en sus arquitecturas. A la tecnología TPM se la conoce como propiedad intelectual en el argot de los desarrolladores de chips. Esto significa que los proveedores pueden licenciar una implementación concreta de TPM y luego integrarla en sus propios chips –circuitos integrados de aplicación específica (ASIC) o conjuntos de puertas lógicas programables (FPGA)– e incluso incrustarlo en el núcleo de una CPU. Cualquier producto con el logotipo de TPM cumple los rigurosos requisitos de certificación de TPM, incluyendo la resistencia a la manipulación y es una plataforma TPM fiable. Aunque el hardware TPM está integrado en la mayoría de los ordenadores portátiles, debe usar un programa suministrado por el sistema operativo o un conjunto de aplicaciones FDE de terceros para activarlo. En Windows XP Pro, Vista (Enterprise y Ultimate) y 2008 Server, el programa BitLocker de Microsoft ofrece esta capacidad. El conjunto de aplicaciones FDE permite configurar el TPM, asignar contraseñas maestras y de usuario, y establecer una ruta de cifrado que usa el procesador del ordenador para el cifrado. Este nivel de cifrado proporciona una buena protección ante todos los atacantes menos los más capacitados. Los proveedores de conjuntos de aplicaciones FDE también ofrecen aplicaciones de gestión de categoría empresarial que permiten gestionar las claves de un gran número de usuarios finales. 14 PowerNEWS JUNIO-JULIO 2009
Para obtener todas las ventajas de seguridad que ofrece TPM debe utilizarse con soportes de almacenamiento compatibles con TPM, una combinación resistente a todos los métodos de ataque conocidos. Una unidad de disco duro compatible con TPM, por ejemplo, integra hardware de cifrado de gran velocidad que usa la clave suministrada por el TPM para cifrar datos sin que resulte afectado el rendimiento de la unidad. Una unidad compatible con TPM también es más segura ya que la clave obtenida no puede compartirse con el sistema operativo y, por lo tanto, hace inútil el proceso de recuperación de la RAM descrito antes. Aunque no existían unidades compatibles con TPM en la presentación de la tecnología en el año 2006, actualmente hay una gran oferta y con frecuencia pueden adaptarse a ordenadores compatibles con TPM más antiguos.
¿Es seguro? Se dice que para que la información esté perfectamente protegida hay que apagar el ordenador, encerrarlo en una habitación y tirar la llave. Esto maximiza tanto la seguridad como los inconvenientes. Los profesionales de la informática deben buscar un camino intermedio y esto significa que, en primer lugar, tendrán que incorporarse al camino. Si no ha puesto en marcha las medidas mínimas de restricción de la seguridad móvil esbozadas al inicio de este artículo, significa que ni siquiera ha salido del garaje. Debería dar estos pasos inmediatamente y, a continuación, tendría que empezar a hacer planes para disponer de las mejores prácticas de seguridad a la hora de cifrar datos: primero archivos pero, gradualmente y en última instancia, el objetivo sería el cifrado completo del disco basado en TPM. Si no lo hace, pronto lo veremos en las noticias. ●
Mel Beckman es redactor técnico de ServerNEWS.