Gracias por tu aportación. A ver si, de paso, aprendo algo.
Un saludo. Rafael de Juan El 8 de enero de 2009 16:02, MARTINEZ Nora (MM) < [email protected]> escribió: > Muchísimas gracias por tu trabajo y tus explicaciones. > > > > Feliz Año!!! > > > ------------------------------ > > *De:* [email protected] [mailto: > [email protected]] *En nombre de *Javier Mora > *Enviado el:* jueves, 08 de enero de 2009 15:43 > *Para:* Forum AS/400 en castellano > *Asunto:* Una utilidad interesante > > > > Feliz año 2009 a todos: > > > > Estimados colegas, Año Nuevo, Espíritu Nuevo. Me he propuesto (no sé si lo > conseguiré) participar más activamente en este foro y compartir algunos de > mis escasos conocimientos sobre el iSeries. Empiezo mi colaboración > proporcionando a esta comunidad dos utilidades, una necesita de la otra. > > > > La primera consiste, principalmente, en el mandato SU. Su funcionalidad es > muy similar al comando "su" de los sistema Unix/Linux. Permite ejecutar un > mandato o abrir una línea de mandatos con los privilegios de otro usuario. > Al finalizar la ejecución se recuperan las autorizaciones originales. En mi > instalación utilizo este mandato para ejecutar mandatos que necesitan las > autorizaciones de QSECOFR sin la necesidad de tener que abrir una nueva > sesión. Existen sistemas que impiden el inicio de sesión a QSECOFR desde > cualquier dispositivo que no sea la consola, esta utilidad les permite su > uso. > > > > El mandato requiere de tres parámetros: el identificador del perfil de > usuario, su contraseña y el mandato a ejecutar. Inevitablemente para obtener > los privilegios de un usuario debo conocer su contraseña, sino estaríamos > tratando con una utilidad peligrosa para la seguridad del sistema. Para > conseguir esta funcionalidad se emplean varias APIs del sistema que permiten > cambiar el usuario actual que ejecuta el trabajo. Estas APIs se encargan de > realizar los controles de seguridad necesarios. Creo que en los fuentes hay > suficiente documentación sobre su funcionamiento. > > > > No obstante el mandato SU tiene una funcionalidad controvertida y algunas > cosas por arreglar. En el primer caso está el valor especial *NOPWDCHK del > parámetro PWD. Este valor permite utilizar un perfil de usuario sin conocer > su contraseña pero con ciertas restricciones, una de ellas es tener > autorización *USE sobre el perfil. No sé hasta que punto esto es positivo o > negativo para la seguridad del sistema. Por ejemplo, QSECOFR podría > suplantar a un usuario sin conocer su contraseña. Esta es una cuestión que > podríamos debatir en este foro. > > > > Esta utilidad no es perfecta y tiene algunas cosas por arreglar. Por > ejemplo, se intenta informar al llamador si la ejecución del mandato fue > correcta o no. Para ello emite el mensaje de escape que produjo el error. > Este mecanismo sólo funciona bien si el mensaje se encuentra en el archivo > de mensajes QCPFMSG. Tampoco es capaz de informar si el mandato se ejecutó > satisfactoriamente. Estoy seguro de que existen más errores, así que podéis > colaborar en la solución de éstos enviando vuestras propuestas y sugerencias > en este foro. > > > > Creo que doy en los fuentes las instrucciones necesarias para compilar esta > utilidad. Pero para ello es necesario de otra utilidad más. Se trata de unos > miembros de copia (archivos de cabecera o /copy) con la declaración de las > APIs y estructuras de datos necesarias para su uso. Realmente para compilar > este mandato son necesarios solo algunos y solo incluyo esos. Mi propósito > era entregaros todos los fuentes pero "pesan" mucho y el foro no admite un > mesaje tan grande. Se trata de una serie de miembros fuentes con la relación > de todas las APIs del sistema y estructuras de datos que he necesitado > utilizar en alguna ocasión en mi instalación. Evidentemente no están todas > pero hay bastantes. He intentado agrupar las APIs según su funcionalidad y > el nombre de cada miembro intenta tener relación con la categoría de la API > (según el manual). También he intentado mantener ciertos estándares de > codificación pero no está del todo conseguido. Tengan en cuenta que algunos > fuentes nacieron hace cinco años. En mi caso, todos estos fuentes están > ubicados en un archivo que he llamado API, si se cambia de lugar, será > necesario realizar alguna adaptación. Ninguno de ellos se compila. > > > > Finalmente quisiera hacer un llamamiento a los BLOGers de nuestra > comunidad. Mi intención inicial era publicar estas utilidades en la web de > Recursos/400, pero todavía no es posible. Si alguno de nuestros prestigiosos > blogers (lo son todos) estuvieran interesados en publicar los fuentes en sus > blogs tienen mi permiso (aunque no es necesario darlo), para que aquellos > que no tengan acceso a este correo puedan descargarse los fuentes. Si así > fuera, entonces incluiría todos los fuentes con las declaraciones de > prototipos y estructuras de las APIs. > > > > Concluyo este extenso correo. Espero que sean de vuestro agrado estas dos > utilidades y que participéis en su mejora. Espero vuestras críticas, sean > del tipo que sean. > > > > Un saludo. > > > > *Javier Mora* > > > > __________________________________________________ > Forum.HELP400 es un servicio m&#225;s de NEWS/400. > &#169; Publicaciones Help400, S.L. - Todos los derechos reservados > http://www.help400.es > _____________________________________________________ > > Para darte de baja visita la siguente URL: > http://listas.combios.es/mailman/listinfo/forum.help400 >
__________________________________________________ Forum.HELP400 es un servicio m&#225;s de NEWS/400. &#169; Publicaciones Help400, S.L. - Todos los derechos reservados http://www.help400.es _____________________________________________________ Para darte de baja visita la siguente URL: http://listas.combios.es/mailman/listinfo/forum.help400

