viernes, 15 de abril de 2011

Utilidad CHGOBJAUT

La utilidad CHGOBJAUT nos permite cambiar los permisos de uno, o varios, objetos de una biblioteca.
Por ejemplo el mandato:
CHGOBJAUT LIB(MYLIB) OBJ(XYZ*) TYPE(*FILE) USER(AN_USER) AUT(*CHANGE)
Otorgara autorización *CHANGE al usuario AN_USER a todos los objetos tipo *FILE de la biblioteca MYLIB que su nombre de objeto empiece por XYZ.

La diferencia con el mandato GRTOBJAUT, es que CHGOBJAUT solo cambiara la autorización si esta es diferente, para comprobar esta diferencia utiliza la utilidad CMPOBJAUT publicada anteriormente en este blog.

Cuando finaliza la ejecución del mandato CHGOBJAUT envía el mensaje CPF9897 informando del resultado de su ejecución: 
Procesados 0000000018 objetos. No se ha otorgado autorización a 0000000000 objetos.

Podéis bajar el código de esta utilidad del grupo Recursos AS400 en IBM developersWorks

sábado, 9 de abril de 2011

Utilidad CMPOBJAUT

El mandato CMPOBJAUT nos permite, dentro de un programa, comparar la autorización de un objeto para un usuario concreto.
Por ejemplo con el siguiente mandato:
CMPOBJAUT LIB(MYLIB) OBJ(AN_OBJECT) TYPE(*FILE) USER(AN_USER) AUT(*USE) LGL (&MATCH)
Verificaremos si el usuario AN_USER tiene autorización *USE al archivo MYLIB/AN_OBJECT, si es así devolverá un '0' en la variable &MATCH, si es diferente devuelve '1'.

Podéis bajar el código de esta utilidad del grupo Recursos AS400 en IBM developersWorks