Consulta

Anuncio
򔻐򗗠򙳰
Consulta
ii
Consulta
Contenido
Consulta . . . . . . . . . . . . . . 1
Funciones de accesibilidad de IBM Tivoli Identity
Manager . . . . . . . . . . . . . . . . 1
Ampliaciones de la aplicación . . . . . . . . 2
Interfaz WorkflowApplication . . . . . . . 2
Métodos de ampliación de la aplicación . . . . 3
Registro de ampliaciones . . . . . . . . . 3
Interfaces de programación de aplicaciones . . . . 4
API de aplicaciones . . . . . . . . . . . 5
API de autenticación. . . . . . . . . . . 7
API de servicios de datos . . . . . . . . . 7
API de IBM Directory Integration . . . . . . 7
API de JavaScript . . . . . . . . . . . . 7
API de correo . . . . . . . . . . . . . 8
API de reglas de contraseña . . . . . . . . 8
API de análisis de política . . . . . . . . . 8
API de proveedor de servicios . . . . . . . 9
API de inicio de sesión único . . . . . . . . 9
API de flujo de trabajo . . . . . . . . . . 9
Diccionario para una política de contraseña . . . 10
Atributos dataservices para recertificación . . . . 11
Ampliaciones de flujos de trabajo para
recertificación. . . . . . . . . . . . . . 12
Personalización del intervalo de fechas . . . . . 15
Identificadores dinámicos en plantillas de correo . . 15
Plantillas de correo . . . . . . . . . . . 20
Mensajes predeterminados de un servicio manual 21
Mensajes predeterminados de recertificación . . 23
Mensajes predeterminados de flujo de trabajo . . 28
Visión general de las ampliaciones JavaScript . . . 38
Ampliaciones empaquetadas. . . . . . . . 39
Registro de ampliaciones JavaScript . . . . . 46
Configuración de scriptframework.properties . . 47
Migración de ampliaciones FESI personalizadas
en IBM JSEngine. . . . . . . . . . . . 48
Descarga y utilización de fesi.jar desde un origen
que no es de IBM . . . . . . . . . . . 52
Consulta de ampliaciones JavaScript . . . . . . 53
Cómo leer las páginas de consulta . . . . . . 55
Ampliaciones JavaScript . . . . . . . . . 56
Casos de ejemplo de uso de parámetros de política
de suministro . . . . . . . . . . . . . 113
Parámetros de titularidad de la política de
suministro . . . . . . . . . . . . . . 115
Constante de la política de suministro . . . . 115
Tipos Null (nulo) de política de suministro . . 115
Funciones JavaScript de la política de suministro 116
Expresiones regulares de la política de
suministro . . . . . . . . . . . . . 118
Política de selección de servicios JavaScript . . . 119
Objetos de la política de selección de servicios
JavaScript . . . . . . . . . . . . . 119
Ejemplo de script de política de selección de
servicios . . . . . . . . . . . . . . 119
Tipo de control Subformulario. . . . . . . . 120
Parámetros contextuales de Subformulario . . 120
Convenio de denominación de parámetros de
solicitud HTTP . . . . . . . . . . . .
Escritura de un Subformulario. . . . . . .
Archivos de propiedades suplementarios . . . .
Comprensión de los archivos de propiedades
Archivos de propiedades modificables . . . .
Archivos de propiedades no modificables . . .
adhocreporting.properties . . . . . . . .
crystal.properties . . . . . . . . . . .
CustomLabels.properties . . . . . . . .
DataBaseFunctions.conf . . . . . . . . .
enroleAuditing.properties . . . . . . . .
enRoleAuthentication.properties . . . . . .
enRoleDatabase.properties . . . . . . . .
enRoleLDAPConnection.properties . . . . .
enRoleLogging.properties . . . . . . . .
enRoleMail.properties . . . . . . . . .
enrolepolicies.properties . . . . . . . . .
enroleworkflow.properties . . . . . . . .
fesiextensions.properties (en desuso) . . . .
helpmappings.properties . . . . . . . .
reportingLabels.properties . . . . . . . .
reporttabledeny.properties . . . . . . . .
scriptframework.properties (recomendado) . .
SelfServiceHelp.properties . . . . . . . .
SelfServiceHomePage.properties . . . . . .
SelfServiceScreenText.properties . . . . . .
SelfServiceUI.properties . . . . . . . . .
ui.properties. . . . . . . . . . . . .
Configuración de propiedades del sistema en
enRole.properties . . . . . . . . . . . .
Comprensión de los archivos de propiedades
Propiedades de WebSphere Application Server
Propiedades del servidor de aplicaciones . . .
Propiedades de la organización . . . . . .
Propiedades del servidor LDAP . . . . . .
Propiedades del control LDAP y de la búsqueda
Propiedades de perfil de persona . . . . . .
Propiedades de la caché y del esquema y del
perfil . . . . . . . . . . . . . . .
Propiedades de mensajería . . . . . . . .
Propiedades de planificación . . . . . . .
Propiedades de supervisión de la transacción de
contraseñas . . . . . . . . . . . . .
Propiedades XML y DTD . . . . . . . .
Propiedades de la agrupación de conexiones
LDAP . . . . . . . . . . . . . . .
Propiedades de cifrado de contraseñas . . . .
Propiedades de codificación de preguntas y
respuestas de contraseña . . . . . . . .
Propiedades del puerto de escucha del sistema
Propiedades de correo . . . . . . . . .
Propiedades de flujo de trabajo . . . . . .
Propiedades de conciliación . . . . . . .
Propiedades del secreto compartido . . . . .
Propiedades de la regla de ciclo vital . . . .
121
122
122
122
123
125
127
134
135
136
137
139
141
144
147
159
162
165
166
168
168
168
169
171
172
172
172
175
181
181
181
184
186
186
188
190
191
192
194
195
196
196
198
200
201
201
201
208
212
212
iii
Propiedades del nombre de producto . . .
Propiedades de solicitud del cliente de
aplicación . . . . . . . . . . . .
Propiedades de sincronización inversa de
contraseñas . . . . . . . . . . . .
Propiedades de oficina de correos . . . .
Propiedades del paquete de recursos de la base
de datos . . . . . . . . . . . . .
Propiedades de limpieza de la base de datos
Propiedades de restauración de cuentas . .
iv
Consulta
. 213
. 213
. 213
. 214
. 215
216
. 216
Propiedades de recuadro de selección para crear
contraseñas . . . . . . . . . . . . .
Propiedades de alimentación de identidades . .
Propiedades de actualización . . . . . . .
Propiedades de varios agentes de sincronización
de contraseñas . . . . . . . . . . . .
217
217
218
218
Índice. . . . . . . . . . . . . . . 221
Consulta
La información de consulta está organizada para ayudar a localizar datos concretos
de forma rápida, como por ejemplo, la descripción de un parámetro de línea de
mandatos particular.
La información de consulta está disponible a lo largo de la documentación. Para
su comodidad, está recopilada y repetida en este tema de navegación de
Consulta. Se proporcionan varias categorías de información para una búsqueda
rápida. Para obtener una descripción de cada categoría de información de
consulta, haga clic en el nombre de la categoría en la navegación.
Funciones de accesibilidad de IBM Tivoli Identity Manager
Las funciones de accesibilidad facilitan a los usuarios con una discapacidad, como
por ejemplo, movilidad restringida o visión limitada, a utilizar los productos de
tecnología de la información satisfactoriamente.
Funciones de accesibilidad
La lista siguiente incluye las funciones de accesibilidad más importantes en IBM®
Tivoli Identity Manager:
v Soporte para la aplicación de lector de pantalla Freedom Scientific JAWS
v Funcionalidad sólo con teclado
v Interfaces utilizadas normalmente por lectores de pantalla
v Teclas que son discernibles al pulsarlas pero que no se activan con la simple
pulsación
v Dispositivos estándar del sector para puertos y conectores
v La conexión de dispositivos de entrada y salida alternativos
IBM Tivoli Identity Manager Centro de información y sus publicaciones relacionadas,
son accesibles.
Navegación con el teclado
Este producto utiliza teclas de navegación estándar de Microsoft® Windows®.
Información de accesibilidad relacionada
Puede visualizar las publicaciones de IBM Tivoli Identity Manager en formato
Adobe Portable Document Format (PDF) mediante el Adobe Acrobat Reader. Los
PDF están disponibles en el centro de información.
Las funciones de accesibilidad y navegación de teclado siguientes están disponibles
en el diseñador de formularios:
v Puede utilizar las teclas de tabulación y las teclas de flecha para moverse entre
los controles de la interfaz de usuario.
v Puede utilizar las teclas Inicio, Fin, Avanzar Página y Retroceder Página para
una navegación adicional.
1
v Puede iniciar cualquier applet, como el applet del diseñador de formularios, en
una ventana independiente para habilitar la pulsación de Alt+Tabulación para
conmutar entre este applet y la interfaz web y también para utilizar más espacio
de trabajo en pantalla. Para iniciar la ventana, haga clic en Iniciar como ventana
separada.
v Puede cambiar la apariencia de los applets, como el diseñador de formularios,
utilizando temas, que proporcionan esquemas de color de alto contraste para
facilitar que los usuarios con problemas de visión distingan entre los controles.
IBM y accesibilidad
Consulte IBM Human Ability and Accessibility Center para obtener más
información acerca del compromiso que IBM tiene acerca de la accesibilidad.
Ampliaciones de la aplicación
Las ampliaciones de la aplicación se pueden definir en los archivos de clase Java™
y ejecutar en un flujo de trabajo.
Las ampliaciones de la aplicación se definen habitualmente en uno o más archivos
de clases Java y se utilizan cuando un conjunto de funcionalidades se tiene que
ejecutar desde un flujo de trabajo. La funcionalidad se puede implementar para
recibir parámetros de entrada desde un flujo de trabajo y devuelve los parámetros
al flujo de trabajo.
Interfaz WorkflowApplication
Las ampliaciones de la aplicación que necesitan acceso a la información de
contexto de flujo de trabajo actual deben implementar la interfaz
WorkflowApplication.
Si la ampliación no necesita información de contexto de flujo de trabajo, no es
necesario implementar esta interfaz. A continuación, se muestra un fragmento de
código para implementar la interfaz WorkflowApplication. Para obtener un
ejemplo más completo, consulte la información del directorio de ampliaciones
(extensions).
public class CustomEmail implements WorkflowApplication {
public CustomEmail() {
}
Cuando se implementa la interfaz WorkflowApplication, debe definir un método
setContext que acepte un objeto WorkflowExecutionContext. Este objeto debe
almacenarse en una variable del miembro de la clase de implementación.
// The context of the workflow. Passed in from the workflow engine
protected WorkflowExecutionContext ctx;
/**
* Passes the workflow execution context to the application.
*
* @param context WorklowExecutionContext holding information about the
* currently executing activity.
*/
public void setContext(WorkflowExecutionContext ctx) {
this.ctx = ctx;
}
2
Consulta
Métodos de ampliación de la aplicación
La aplicación puede contener cualquier proceso necesario para cumplir la tarea.
Una ampliación puede contener todos los métodos que se pueden exponer al flujo
de trabajo.
A continuación, se muestra un fragmento de código de un método que estará
disponible en el flujo de trabajo por medio del nodo de ampliación. Para obtener
un ejemplo más completo, consulte la información del directorio de ampliaciones
(extensions).
/**
* Method sendMailByProperty.
* This method is called to send an e-mail to an e-mail address specified by the
* "recipient" property in the specified property file.
* @param person - the requestee's person object
* @param mailTag - the mailtag for this message. Used to look up properties
* @param propertyFileName - the name of the property file that contains
* this message's data
* @param attrList - an optional list of tag/value pairs
* @return ActivityResult - a workflow activity result object
*/
public ActivityResult sendMailByProperty(Person person,
String mailTag,
String propertyFileName,
String attrs) {
String recipient_email = "";
try {
processSendMail(person,mailTag,propertyFileName,recipient_email,
attrs);
return new ActivityResult(ActivityResult.STATUS_COMPLETE,
ActivityResult.SUCCESS,
"Sent Mail",
null);
} catch (CustomEMailDataException e) {
return new ActivityResult(ActivityResult.STATUS_COMPLETE,
ActivityResult.FAILED,
e.getMessage(),
null);
}
}
Los métodos de la ampliación de la aplicación pueden recibir entradas desde el
flujo de trabajo. Las entradas definidas en la ventana de la ampliación del flujo de
trabajo se correlacionarán con los argumentos del método (asegúrese de que los
tipos coinciden). Tenga en cuenta que el método sendMailByProperty devuelve un
objeto ActivityResult. Esto permite a la aplicación enviar a la parte que inicia la
comunicación un estado y, si es necesario, un valor de retorno. El objeto
ActivityResult tiene variables de miembro para el estado (int), resumen (String),
detalle (List) y descripción (String). Los valores de retorno se devuelven en la lista
de detalles. El orden de los valores de la lista debe corresponder con el orden de
los parámetros de salida, tal y como está definido en la ventana de ampliación.
Consulte la documentación de las API de IBM Tivoli Identity Manager para
obtener una descripción completa de la clase ActivityResult.
Registro de ampliaciones
Para que el flujo de trabajo haga que la ampliación esté disponible por medio del
nodo de ampliación, debe estar antes registrada en el archivo ITIM_HOME/data/
workflowextensions.xml.
Cada método requiere una entrada de actividad en el archivo xml. A continuación,
se describe la entrada de actividad:
Consulta
3
ID de actividad
Un ID de actividad es obligatorio y debe ser exclusivo en el flujo de
trabajo. Este nombre aparecerá en el menú de tipo de actividad de la
ventana de ampliación.
Tipo de implementación
El tipo de implementación contiene el nombre de clase y el nombre de
método que invocará esta ampliación.
Secciones de parámetros
En las secciones de parámetros aparecen los parámetros de entrada y
salida y sus tipos de datos. Son los parámetros que aparecen en la ventana
de ampliación Parámetros de entrada/salida.
Restricción de transición
La restricción de transición define el tipo de unión (también se puede
definir el tipo de división). Para obtener más información, consulte la
información del directorio de ampliaciones (extensions).
<ACTIVITY ACTIVITYID="SendMailByProperty" LIMIT="600000">
<IMPLEMENTATION_TYPE>
<APPLICATION
CLASS_NAME="com.ibm.itim.CustomWorkflowExtensions.CustomEmail"
METHOD_NAME="sendMailByProperty"/>
</IMPLEMENTATION_TYPE>
<PARAMETERS>
<IN_PARAMETERS PARAM_ID="inperson" TYPE="Person"/>
<IN_PARAMETERS PARAM_ID="mailtag" TYPE="String"/>
<IN_PARAMETERS PARAM_ID="propertyfilename" TYPE="String"/>
<IN_PARAMETERS PARAM_ID="attributelist" TYPE="String"/>
</PARAMETERS>
<TRANSITION_RESTRICTION JOIN="XOR"/>
</ACTIVITY>
El archivo de clase de ampliación de la aplicación debe colocarse en un archivo jar
que se debe colocar en la vía de acceso de clases en IBM Tivoli Identity Manager.
Una vez completados todos estos cambios, el servidor debe reiniciarse y, a
continuación, la ampliación pasará a estar disponible en el flujo de trabajo.
Interfaces de programación de aplicaciones
Las interfaces de programación de aplicaciones (API) son parte de un modelo de
plug-in que puede utilizar para agregar aplicaciones sin interferir con las
aplicaciones existentes.
Los programas de aplicación remotos se ejecutan fuera de la máquina virtual Java
(JVM) del servidor de IBM Tivoli Identity Manager. Las clases externas a los
paquetes de aplicación no están pensadas para ser invocadas por una aplicación remota.
La documentación sobre las clases a utilizar en aplicaciones remotas se encuentra
en los paquetes de aplicación de IBM Tivoli Identity Manager. Las ampliaciones del
servidor, que se ejecutan en la JVM del servidor de IBM Tivoli Identity Manager,
pueden utilizar cualquiera de las clases que aparecen en la documentación
publicada de la API (JavaDoc). Son clases Java que se ejecutan en la misma JVM
que el que realiza la llamada. Estas API se utilizan para desarrollar la
personalización y ampliaciones de IBM Tivoli Identity Manager que se pueden
conectar en la aplicación IBM Tivoli Identity Manager.
4
Consulta
Una aplicación remota puede invocar varias API de aplicación. En el paquete
dataservices, también se incluyen algunas API de ampliación del servidor. Las API
de aplicación siguientes están pensadas para ser invocadas por una aplicación
remota:
API de política de suministro
Proporciona la posibilidad de buscar, añadir, modificar y suprimir políticas
de suministro en IBM Tivoli Identity Manager desde aplicaciones remotas.
API de grupo
Proporciona la posibilidad de buscar, añadir, modificar y suprimir un
grupo de IBM Tivoli Identity Manager.
API de ACI
Proporciona la posibilidad de buscar, añadir, modificar y suprimir una lista
de elementos de control de accesos (permisos de acceso), pero no
proporciona la posibilidad de comprobar la autorización.
API de conciliación
Proporciona la posibilidad de obtener, añadir y modificar una planificación
de conciliación para un servicio concreto, y proporciona la posibilidad de
desencadenar una conciliación.
Se incluyen las API de ampliación del servidor siguientes:
v com.ibm.itim.common.ComplexAttributeValue
v com.ibm.itim.dataservices.model.ComplexAttributeHandler
v com.ibm.itim.dataservices.model.domain.access.Access
v com.ibm.itim.dataservices.model.domain.access.ProvisioningConfiguration
v com.ibm.itim.dataservices.model.domain.access.NotificationOption
API de aplicaciones
Puede crear interfaces de usuario personalizadas adicionales o alternativas,
utilizando la API de aplicaciones, que proporciona una interfaz para la plataforma
de suministro de IBM Tivoli Identity Manager.
La API de aplicaciones proporciona un conjunto de clases Java que abstraen las
funciones de la plataforma de suministro utilizadas con más frecuencia, como por
ejemplo, la gestión de identidades, de contraseñas y de cuentas. Las clases de las
que consta esta API son las mismas que utiliza IBM Tivoli Identity Manager para
su interfaz de usuario.
Para obtener más información, consulte la documentación proporcionada con la
API de aplicaciones en el directorio <ITIM_HOME>/extensions/doc/applications.
Para ver códigos de ejemplo, consulte el directorio <ITIM_HOME>/extensions/
examples/apps.
API de autoregistro
Parte de la API de aplicaciones, la API de autoregistro proporciona una interfaz
para crear una persona en la plataforma de suministro sin un contexto de usuario.
La API de autoregistro se puede invocar sin un contexto de usuario, ya que está
configurada para ser invocada sin iniciar sesión en el sistema con nombre de
usuario y contraseña de cuenta de IBM Tivoli Identity Manager. La API de
autoregistro es parte de un proceso personalizable que proporciona una página de
Consulta
5
ejemplo de Página de JavaServer (JSP), como una ampliación de producto basada
en la clase inetOrgPerson predeterminada. La JSP invocará la API de autoregistro
para crear un usuario.
API de lista de elementos de control de accesos (ACI)
La API de ACI proporciona una interfaz para la gestión de la lista de control de
accesos de IBM Tivoli Identity Manager, contenedor por contenedor.
Un cliente remoto puede utilizar operaciones básicas de añadir, listar, modificar y
suprimir para la gestión de la lista de control de accesos. No obstante, la API de
ACI no proporciona la posibilidad de comprobar la autorización para el usuario.
Esta API está dentro de la clase com.ibm.itim.apps.acl.AccessControlListManager.
API de grupo de IBM Tivoli Identity Manager
La API de grupo de IBM Tivoli Identity Manager proporciona posibilidades de
gestión de roles del sistema, es decir, para crear un rol del sistema y para buscar
roles del sistema existentes.
La API de grupo de IBM Tivoli Identity Manager proporciona una interfaz para la
gestión del grupo de IBM Tivoli Identity Manager. Puede buscar, añadir, modificar
o suprimir el grupo, y puede añadir y eliminar un usuario en un grupo de IBM
Tivoli Identity Manager.
La API existe dentro de las clases siguientes:
v com.ibm.itim.apps.system.SystemRoleManager
v com.ibm.itim.apps.system.SystemRoleMO
v com.ibm.itim.apps.system.SystemUserMO
API de política de suministro
La API de política de suministro de IBM Tivoli Identity Manager proporciona una
interfaz para gestionar políticas de suministro definidas en IBM Tivoli Identity
Manager.
Esta API proporciona la posibilidad de buscar, añadir, modificar y suprimir
políticas de suministro. La API existe dentro de las clases siguientes:
v com.ibm.itim.apps.policy.ProvisioningPolicyManager
v com.ibm.itim.apps.policy.ProvisioningPolicyMO
API de conciliación
La API de conciliación proporciona la posibilidad de crear y consultar
conciliaciones y parámetros de conciliación.
La API de conciliación proporciona una interfaz para gestionar las planificaciones
de conciliación de servicios. Puede utilizarla para obtener y establecer
planificaciones de conciliación de un servicio, haciendo modificaciones al conjunto
de planificaciones de conciliación, incluidas adiciones y supresiones, y
estableciendo un conjunto nuevo. Puede desencadenar la ejecución de una
planificación de conciliación específica.
La API existe dentro de las clases siguientes:
v com.ibm.itim.apps.recon.ReconManager
v com.ibm.itim.apps.recon.ReconUnitData
6
Consulta
API de autenticación
Utilice la API de autenticación para trabajar con distintos almacenes de identidad
de confianza, como la información de identidad almacenada en un servidor de
dominio de Windows o en un directorio LDAP, incluido el uso de distintos tipos
de claves, por lo general contraseñas, para desbloquear la aplicación para un
usuario.
La API de autenticación contiene la API de cliente de autenticación, que lleva a
cabo las solicitudes de autenticación y la API de proveedor de autenticaciones, que
implementa las solicitudes de autenticación.
API de servicios de datos
La API de servicios de datos proporciona una interfaz para el modelo de datos de
IBM Tivoli Identity Manager.
Esta API abstrae las entidades de modelo de datos más frecuentemente utilizadas,
como identidades, cuentas, acceso y servicios en el proceso de suministro. Incluye
una interfaz genérica para gestionar atributos complejos. La sincronización de
datos depende de las API de servicios de datos. Además, la API de servicios de
datos proporciona el modelo de datos que utiliza la API de aplicaciones.
Aunque dentro de esta API se proporciona la posibilidad de cambiar el modelo de
datos, dicha posibilidad no es su objetivo. La API de servicios de datos es de bajo
nivel, y abstrae el diseño físico del almacén de datos (estructura de directorios),
pero no proporciona la lógica empresarial que proporcionan las aplicaciones de
suministro con la plataforma.
API de IBM Directory Integration
Utilice la API de IBM Directory Integration para utilizar IBM Tivoli Directory
Integrator para importar información de identidad en IBM Tivoli Identity Manager
y para gestionar cuentas en el almacén de datos de IBM Tivoli Identity Manager en
recursos externos que utilicen Directory Integrator.
En la API de IBM Directory Integration se incluyen las características siguientes:
Nota: Directory Service Markup Language versión 2 (DSMLv2) está en desuso.
v Un proveedor de servicios de Directory Service Markup Language versión 2
(DSMLv2), que puede utilizar para importar datos en IBM Tivoli Identity
Manager, con IBM Tivoli Identity Manager actuando como cliente DSMLv2 e
IBM Tivoli Directory Integrator actuando como servidor DSMLv2.
v Implementación de un manejador de sucesos de IBM Tivoli Identity Manager de
DSMLv2, que puede utilizar para importar datos en IBM Tivoli Identity
Manager, con IBM Tivoli Identity Manager actuando como servidor DSMLv2 e
IBM Tivoli Directory Integrator actuando como cliente DSMLv2.
v Soporte para esquemas listos para utilizar, para la comunicación con IBM Tivoli
Directory Integrator. Puede utilizar IBM Tivoli Directory Integrator como un
punto final y definir IBM Tivoli Directory Integrator como una instancia de
servicio dentro de la interfaz de usuario de IBM IBM Tivoli Identity Manager
para la alimentación de identidades.
API de JavaScript
La API de JavaScript™ amplía los componentes de script que son específicos del
lenguaje de script configurado con el producto.
Consulta
7
IBM Tivoli Identity Manager proporciona un método para registrar nuevas
ampliaciones de JavaScript en el servidor. Puede utilizar la API de JavaScript para
añadir objetos y funciones adicionales al glosario del intérprete. Un cliente puede
crear y registrar funciones y objetos adicionales en el intérprete para ejecutarlos en
tiempo de ejecución.
La API de JavaScript proporciona información sobre los participantes de acceso,
como el tipo de participante, los participantes de flujo de trabajo, la gestión de
accesos de grupos y el contexto de notificación de acceso.
API de correo
Utilice la API de correo para personalizar el contenido, formato y destinatarios de
notificación del correo.
Los clientes que utilizan esta API pueden realizar solicitudes de notificación y
ampliar la construcción de mensajes de notificación. La API de correo contiene la
API de cliente de correo, que hace solicitudes de notificación y la API de
proveedor de correo, que implementa solicitudes de notificación.
La API de correo también contiene una función denominada oficina de correos que
evita que los participantes del flujo de trabajo reciban varias notificaciones de
correo electrónico que tengan un contenido parecido. Los correos electrónicos
similares se almacenan, se combinan en una única notificación de correo
electrónico y se reenvían a un usuario.
API de reglas de contraseña
La API de reglas de contraseña proporciona una interfaz para personalizar la regla
de contraseña estándar establecida y el proceso de generación de contraseñas
aleatorias.
Puede utilizar la infraestructura de reglas de contraseña para personalizar el
mecanismo de generación de contraseñas por parte del servidor de IBM Tivoli
Identity Manager. Utilice una de las formas siguientes para añadir lógica
personalizada a la infraestructura de contraseña:
v Una regla personalizada
v Un generador personalizado
v Reglas personalizadas y un generador personalizado
API de análisis de política
La API de análisis de política proporciona una interfaz a la información sobre las
políticas definidas en el servidor de IBM Tivoli Identity Manager, y es una interfaz
para el acceso otorgado a un individuo específico.
La API contiene un conjunto de clases Java que recuperan y abstraen la
información de política de suministro que controla el acceso a los recursos
gestionados. La API de política de suministro informa sobre la imposición de
política de suministro del sistema, pero no da soporte a la modificación de la
política por parte de los clientes. Un cliente puede utilizar la información a efectos
de auditoría, o bien para tomar decisiones sobre cambios potenciales de la
imposición de política.
8
Consulta
API de proveedor de servicios
La API de proveedor de servicios proporciona conectores personalizados que
pueden utilizarse desde la plataforma de suministro de IBM Tivoli Identity
Manager o cualquier otra plataforma de suministro basada en Java que dé soporte
a la misma interfaz.
Las API de proveedor de servicios definen la interfaz que el adaptador de IBM
Tivoli Identity Manager debe implementar y comunicar a los agentes de adaptador
remoto. La implementación del agente de adaptador no depende de las API de
IBM Tivoli Identity Manager, salvo por el conjunto de API de notificación
asíncrona proporcionadas en las API de proveedor de servicios.
En la interfaz entre la plataforma de suministro y el conector se incluyen las
operaciones siguientes:
v Agregar
v
v
v
v
v
v
Cambiar contraseña
Suprimir
Modificar
Restaurar
Buscar
Suspender
v Probar
La plataforma de suministro lleva a cabo todas las operaciones necesarias para
determinar las acciones y sus parámetros que se deben ejecutar contra los recursos.
El conector ejecuta aquellas operaciones en el recurso que cumplan los requisitos
relacionados con el recurso.
API de inicio de sesión único
La API de inicio de sesión único proporciona una interfaz de inicio de sesión único
a los recursos accesibles.
Es posible que se requiera que algunas instalaciones de IBM Tivoli Identity
Manager estén integradas con proveedores de inicio de sesión único de terceros.
Normalmente, dichos proveedores de inicio de sesión único protegen un conjunto
de recursos basados en web mediante un almacenamiento de datos de
autenticación que se gestiona aparte de IBM Tivoli Identity Manager. La primera
vez que un cliente trata de acceder a un recurso protegido, el proveedor de inicio
de sesión único proporciona autenticación. Si se permite el acceso, el proveedor
pasa una señal que indica la identidad del usuario autenticado a todos los recursos
a los que acceda posteriormente.
API de flujo de trabajo
Utilice la API de flujo de trabajo para el código personalizado que se puede
invocar desde un proceso de flujo de trabajo como una aplicación personalizada de
Java o una función JavaScript. De este modo, este código personalizado puede
realizar lógica empresarial especial, consultar almacenamientos de datos externos o
proporcionar integración con otros motores de flujo de trabajo.
La API de flujo de trabajo consta de un conjunto de clases Java que abstraen los
conceptos del entorno de flujo de trabajo que se utilizan con más frecuencia, como
por ejemplo, procesos, actividades y datos relevantes.
Consulta
9
La API de flujo de trabajo dan soporte a los tipos de solicitud de acceso nuevo. El
propietario del acceso es de tipo participante.
La API de flujo de trabajo proporciona la actualización del estado de recertificación
y proporciona información de auditoría para recertificación. Los registros de
auditoría contienen información sobre la configuración de recertificación, así como
el “quién, qué y cuándo” de las tareas de recertificación. Estas auditorías
proporcionan informes más útiles sobre el cumplimiento de la recertificación de
usuarios, cuentas y accesos. También se puede auditar el proceso de recertificación
de los consumidores de políticas de recertificación, a modo de informe.
Diccionario para una política de contraseña
Puede crear un diccionario para una regla de política de contraseña que prohíba el
uso de ciertos términos como contraseñas.
Para utilizar un diccionario para una regla de política de contraseña, primero debe
crear y cargar un archivo dictionary.ldif en el IBM Tivoli Identity Manager Server.
Para crear un diccionario y utilizarlo en una regla de política de contraseña:
1. Mediante un editor de texto ASCII o sin formato, cree un diccionario que
contenga la lista de términos, como un archivo con formato LDIF (LDAP Data
Interchange Format).
Por ejemplo, cree un archivo similar al siguiente archivo dictionary.ldif, en el
que se especifica el dominio como dc=com:
dn: erword=test,erdictionaryname=password, ou=itim, dc=com
erWord: test
objectclass: top
objectclass: erDictionaryItem
dn: erword=secret,erdictionaryname=password, ou=itim, dc=com
erWord: secret
objectclass: top
objectclass: erDictionaryItem
dn: erword=password,erdictionaryname=password, ou=itim, dc=com
erWord: password
objectclass: top
objectclass: erDictionaryItem
2. Cargue el archivo dictionary.ldif en el IBM Tivoli Identity Manager Server
mediante uno de estos procedimientos:
v Utilice un navegador LDAP para importar el archivo dictionary.ldif.
v En el indicador de mandados del IBM Tivoli Identity Manager Server, escriba
este mandato LDAP en una sola línea:
ITDS_HOME/bin/ldapadd.exe -h nombre_host -D cn=usuario_admin
-w contraseña_admin -V 3 -f dictionary.ldif
-h nombre_host
Especifica el nombre de host del sistema donde se está ejecutando el
servidor LDAP.
-D cn=usuario_admin
Especifica el nombre distinguido del administrador que se enlazará
con el directorio LDAP.
-w contraseña_admin
Especifica la contraseña del nombre distinguido del administrador,
para la autenticación simple.
10
Consulta
-V versión_ldap
Especifica la versión del protocolo LDAP que se debe utilizar. El
valor predeterminado es 3, que indica el protocolo LDAP v3. El valor
2 utiliza el protocolo LDAP v2.
-f archivo
Lee la información de modificación de entrada desde un archivo,
como dictionary.ldif, en lugar de hacerlo desde la entrada estándar.
A continuación, el archivo de diccionario puede utilizarse en la regla de intensidad
de contraseñas.
Atributos dataservices para recertificación
IBM Tivoli Identity Manager proporciona atributos opcionales en la clase de objeto
erAccountItem para representar valores diferentes para recertificación.
Visión general
Los atributos de dataservices para recertificación son relevantes sólo si la
recertificación está habilitada para las cuentas y accesos específicos.
Se proporcionan los atributos opcionales siguientes:
v
v
v
v
erLastCertifiedDate
erRecertificationLastAction
erAccessLastCertifiedDate
erAccessRecertificationLastAction
erLastCertifiedDate
El atributo erLastCertifiedDate sólo lo actualiza el proceso de recertificación de
cuentas, pero no de accesos. Un atributo opcional para la indicación de fecha y
hora de la última vez que la cuenta se marcó como recertificado; este atributo se
actualiza en recertificaciones aprobadas independientemente del tipo de
planificación de la política de recertificación, ya sea de estilo de rotación o de
calendario.
Este atributo se actualiza para ambas aprobaciones durante el ciclo de
recertificación normal y a través de la opción recertificationOverride fuera de la
ejecución de la política normal de recertificación. La ausencia de un valor significa
que la recertificación nunca se aprobó para esta cuenta. El objeto de servicios de
datos Account del paquete com.ibm.itim.dataservices.model.domain define los
métodos setLastCertifiedDate() y getLastCertifiedDate() para acceder a este
atributo. Cuando una cuenta está certificada, este atributo se debe actualizar junto
con erRecertificationLastAction.
erRecertificationLastAction
El atributo erRecertificationLastAction sólo lo actualiza el proceso de recertificación
de cuentas, pero no de accesos. Este atributo precisa un método getter y setter
definidos en el paquete com.ibm.itim.dataservices.model.domain de la clase de
objeto de servicios de datos de cuenta:
public void setRecertificationLastAction(String recertificationAction)
public String getRecertficiationLastAction()
Consulta
11
Este atributo adicional describe la acción realizada la última vez que se ejecutó la
recertificación. Los valores siguientes son válidos:
v com.ibm.itim.dataservices.model.domain.Account.CERTIFIED = 'CERTIFIED'
v com.ibm.itim.dataservices.model.domain.Account.CERTIFIED_ADMIN =
'CERTIFIED_ADMIN'
v com.ibm.itim.dataservices.model.domain.Account.REJECTED_MARK =
'REJECTED_MARK'
v com.ibm.itim.dataservices.model.domain.Account.REJECTED_SUSPEND =
'REJECTED_SUSPEND'
erAccessLastCertifiedDate
El atributo erAccessLastCertifiedDate es específico de los accesos definidos en una
cuenta determinada. Este atributo de varios valores contiene el nombre distinguido
de la definición de grupo de acceso y la indicación de fecha y hora que muestra
cuándo se certificó ese acceso por última vez como una cadena delimitada.
Ejemplo
eraccesslastcertifieddate: erntlocalname=users,
erglobalid=7281584268561021074,ou=services,
erglobalid=00000000000000000000,ou=hawk,o=ibm,
c=us;;200711202115Z
Este ejemplo muestra la última fecha de recertificación del acceso que está asociado
con el acceso definido para el grupo especificado por el nombre distinguido. Sólo
se define un valor de este atributo por acceso para la cuenta.
erAccessRecertificationLastAction
El atributo erAccessRecertificationLastAction es específico del estado de
recertificación de los accesos definidos en una cuenta determinada. Este atributo de
varios valores contiene el nombre distinguido de la definición de grupo de acceso
y la última acción de recertificación realizada como una cadena delimitada y sirve
para el mismo propósito que erRecertificationLastAction tiene para las cuentas.
Ejemplo
eraccessrecertificationlastaction: erntlocalname=users,
erglobalid=7281584268561021074,
ou=services,erglobalid=00000000000000000000,
ou=hawk,o=ibm,c=us;;CERTIFIED
Este ejemplo muestra la última acción de recertificación del acceso que está
asociado con el nombre distinguido de la definición de grupo. Los valores para la
acción son los mismos que los descritos para el atributo
erRecertificationLastAction. Sólo se define un valor de este atributo por acceso para
la cuenta.
Ampliaciones de flujos de trabajo para recertificación
IBM Tivoli Identity Manager proporcione ampliaciones de flujos de trabajo para el
seguimiento del estado de las recertificaciones.
Visión general
Una ampliación de recertificación es código que se puede llamar directamente
desde un flujo de trabajo. Una ampliación definida para cuentas también maneja el
12
Consulta
estado de recertificación para accesos y utiliza dataservices para actualizar
atributos almacenados en el objeto de cuenta en servicios de datos. Estos métodos
de ampliación están integrados en la clase AccountExtensions en el paquete
com.ibm.itim.workflowextensions.
Debido a que el motor de flujo de trabajo considera las ampliaciones de
recertificación proporcionadas como actividades, cualquier anomalía en estas
ampliaciones se devuelve como una anomalía cuando finaliza la actividad. Este
resultado provoca que el flujo de trabajo de recertificación sea erróneo y su
anomalía se audita también en la tabla de auditoría RECERTIFICATIONLOG.
Se proporcionan las ampliaciones siguientes:
v recertificationMark
v recertificationMarkAccess
v recertificationSuspend
v recertificationCertify
v recertificationCertifyAccess
v recertificationAdminCertify
v recertificationAdminCertifyAccess
recertificationMark
La ampliación public ProcessResult recertificationMark(Account) actualiza
erLastRecertificationAction para el tipo de destino dado, actualizando el atributo
erLastRecertificationAction a:
com.ibm.itim.dataservices.model.domain.Account.REJECTED_MARK = 'REJECTED_MARK'
La acción de recertificación se audita en la tabla RECERTIFICATIONLOG para
utilizarla en informes.
recertificationMarkAccess
La ampliación de public ProcessResult recertificationMark(UserAccessAccount)
tiene la misma función para los accesos que recertificationMark() para usuarios y
cuentas. Actualiza el atributo erAccessLastRecertificationAction específico para
UserAccess pasado a:
com.ibm.itim.dataservices.model.domain.Account.REJECTED_MARK = 'REJECTED_MARK'
La acción de recertificación se audita en la tabla RECERTIFICATIONLOG para
utilizarla en informes.
Nota: Este método es para suspender sólo cuentas. No se proporciona ningún
método para suspender accesos.
recertificationSuspend
La ampliación public ProcessResult recertificationSuspend(Account) actualiza
erLastRecertificationAction para la cuenta dada. Actualiza el atributo
erLastRecertificationAction a:
com.ibm.itim.dataservices.model.domain.Account.REJECTED_SUSPEND = 'REJECTED_SUSPEND'
La acción de recertificación se audita en la tabla RECERTIFICATIONLOG para
utilizarla en informes.
Consulta
13
Nota: Este método es para suspender sólo cuentas. No se proporciona ningún
método para suspender accesos.
recertificationCertify
La ampliación public ProcessResult recertificationCertify(Account) actualiza
erLastRecertificationAction para el tipo de destino dado. Actualiza el atributo
erLastRecertificationAction a:
com.ibm.itim.dataservices.model.domain.Account.CERTIFIED = 'CERTIFIED'
La acción de recertificación se audita en la tabla RECERTIFICATIONLOG para
utilizarla en informes.Esta ampliación también actualiza el atributo
erLastCertifiedDate con la indicación de fecha y hora actual.
recertificationCertifyAccess
La ampliación public ProcessResult recertificationCertify(UserAccessAccount)
actualiza erLastAccessRecertificationAction para el acceso dado. Actualiza el
atributo erLastRecertificationAction para UserAccess especificado a:
com.ibm.itim.dataservices.model.domain.Account.CERTIFIED = 'CERTIFIED'
La acción de recertificación se audita en la tabla RECERTIFICATIONLOG para
utilizarla en informes.Esta ampliación también actualiza el atributo
erAccessLastCertifiedDate para accessAttribute con la indicación de fecha y hora
actual.
Nota: Este método es la versión de acceso de recertificationCertify para usuarios y
cuentas.
recertificationAdminCertify
La ampliación public ProcessResult recertificationAdminCertify(Account)
actualiza erLastRecertificationAction para el tipo de destino dado. Actualiza el
atributo erLastRecertificationAction a:
com.ibm.itim.dataservices.model.domain.Account.CERTIFIED_ADMIN = 'CERTIFIED_ADMIN'
La acción de recertificación se audita en la tabla RECERTIFICATIONLOG para
utilizarla en informes.Esta ampliación también actualiza el atributo
erLastCertifiedDate con la indicación de fecha y hora actual.
recertificationAdminCertifyAccess
La ampliación public ProcessResult
recertificationAdminCertify(UserAccessAccount) actualiza
erLastRecertificationAction para el acceso dado. Actualiza el atributo
erAccessLastRecertificationAction para UserAccess pasado a:
com.ibm.itim.dataservices.model.domain.Account.CERTIFIED_ADMIN = 'CERTIFIED_ADMIN'
La acción de recertificación se audita en la tabla RECERTIFICATIONLOG para
utilizarla en informes.Esta ampliación también actualiza el atributo
erAccessLastCertifiedDate para accessAttribute con la indicación de fecha y hora
actual.
Nota: Este método es la versión de acceso de recertificationAdminCertify para
usuarios y cuentas.
14
Consulta
Personalización del intervalo de fechas
IBM Tivoli Identity Manager proporciona personalización de intervalo de fechas
adicional, no disponible en el applet del diseñador de formularios estándar.
Estas opciones le permiten un mayor control de los años disponibles para usuarios
en el widget de fechas. Las opciones a continuación se deben configurar
manualmente en la plantilla de formulario siguiente, que se almacena en el
servidor de directorios:
erformname=inetOrgPerson,ou=formTemplates,ou=itim,ou=tivsys,dc=com
Los widgets de entrada de fechas le permiten especificar opciones para definir el
intervalo de años que se mostrará. Estas opciones le permiten especificar el
intervalo de años estándar, así como un año máximo ampliado especial, como 9999
o un valor mínimo especial, como 1900. Existen dos opciones que le permiten
mostrar todos los años entre las fechas del intervalo estándar y el ampliado.
Las opciones son:
minYear
Año mínimo a mostrar.
spanMinYearRange
Cuando se establece un valor de false, se muestran todos los años entre
minYear y minRangeYear.
minRangeYear
Año de inicio del intervalo estándar de años. El valor predeterminado es
1990.
maxRangeYear
Año de finalización del intervalo estándar de años. El valor
predeterminado es 2010.
spanYearRange
Cuando el valor es false, se muestran todos los años entre maxRangeYear y
maxYear.
maxYear
Año máximo a mostrar.
Identificadores dinámicos en plantillas de correo
Las plantillas de correo de IBM Tivoli Identity Manager permiten la recuperación
dinámica, sustitución y toma de decisiones al crear un mensaje.
Identificadores de contenido dinámico y ejemplos
Tivoli Identity Manager proporciona identificadores de contenido dinámico para
permitir la sustitución de texto y habilitar la traducción. Los identificadores se
utilizan para los correos electrónicos generados por estas tareas:
v Diseño de flujos de trabajo
v
v
v
v
v
Especificación de actividades de correo
Notificación de servicio manual
Notificación de recertificación
Oficina de correos
Plantilla de recordatorio
Consulta
15
v Notificaciones del sistema predeterminadas
Los identificadores incluyen:
Código JavaScript
Maneja JavaScript y ejecuta el contenido de JavaScript que está entre los
identificadores de apertura y cierre. Este identificador contiene
identificadores hijo, a menos que devuelvan una cadena. Se llama al código
JavaScript dentro de los delimitadores <JS>CódigoJavaScript</JS>.
Tabla 1. Sintaxis y ejemplo de utilización de código JavaScript para sustituir el contenido del mensaje
Sintaxis
Ejemplo
<JS>texto/código JavaScript</JS>
Especifique cada sentencia <JS></JS> en una línea:
An account request has been initiated for
<JS>process.requesteeName;</JS>
<JS>if (var x=process.getParent() !=null)
return x
</JS>
<JS escapeentities="false">texto/código JavaScript</JS> Cuando se especifica como "false", cualquier texto
que devuelve la ejecución de JavaScript no tendrá los
códigos de entidad HTML con escape. Por ejemplo, el
carácter < no se devolverá como <. Esta opción
puede resulta útil cuando la ejecución del código
JavaScript devolverá XML (por ejemplo, notificaciones
de texto XHTML incorporadas en el texto XHTML de
la plantilla de correo).
El valor predeterminado para este atributo es "true",
por lo tanto, si no se especifica el código el
comportamiento será el normal.
Identificador de sustitución
Da formato al mensaje representado por la clave, permitiendo la
sustitución de cadena. La cadena formateada puede tener cero o más
parámetros. Los parámetros pueden contener cadenas, ID de actividades o
JavaScript. Debe existir la cadena dentro de la clave en el archivo
CustomLabels.properties. Las cadenas se toman de un archivo de paquete
de recursos de CustomLabels.properties o del archivo Labels.properties.
La clave de la sustitución de cadena se puede especificar mediante el
atributo de clave o agregando un identificador KEY entre los
identificadores RE. Si especifica una clave que utiliza tanto el atributo
como el identificador a la vez, se producirá una excepción.
El identificador tiene estos parámetros:
Identificador Key
Representa la clave de paquete de recurso para un identificador
RE. Por ejemplo:
<RE key="key">
</RE>
Identificador PARM
Representa los parámetros para un identificador RE. Por ejemplo:
<RE key="key">
<PARM>with plain text</PARM>
</RE>
16
Consulta
Tabla 2. Sintaxis y ejemplos de utilización de un identificador RE para sustituir el contenido
del mensaje
Sintaxis
Ejemplo
<RE key="message key">
<PARM>text or JavaScript tag</PARM>
</RE>
<RE key="message key">
<PARM>with plain text</PARM>
<PARM><JS>process.requesteeName;
</JS></PARM></RE>
o (especifique cada sentencia <KEY></KEY>
en una línea):
<RE><KEY>message key or
JavaScript tag to return a key
</KEY>
<PARM>text or JavaScript tag</PARM>
</RE>
Salida:
This is a formatted string replacement
example with plain text and
JavaScript code for requestee name
John Smith.
KEY se puede especificar con un atributo en el
identificador RE, o como subelemento del
identificador RE utilizando el identificador
KEY.
Si desea habilitar la sustitución de cadenas de
texto para la traducción, hay que especificar
una etiqueta personalizada en el archivo
CustomLabels.properties para que prevalezca
sobre una clave de Labels.properties.
<RE key="readOnlyDateFormat">
<PARM><JS>if (process.scheduled !=null)
return process.scheduled.getTime();
else
return "";</JS></PARM></RE>
Por ejemplo, si el archivo Labels.properties
contiene este par clave/valor:
Salida:
Apr 18, 2005 05:20:52 EDT
readOnlyDateFormat=MMM dd, yyy hh:mm:ss z
Para que otro formato prevalezca sobre este,
añada la misma clave al archivo
CustomLabels.properties.
Identificador de mensaje de no conformidad
Representa un mensaje que describe los atributos de no conformidad de
una cuenta. Por ejemplo:
<CAMessage/>
Identificadores de mensajes de contenido dinámico
Los identificadores vienen delimitados en la sintaxis <TAG/>, como los
ejemplos siguientes:
Tabla 3. Sintaxis y ejemplo de utilización de identificadores para sustituir el contenido del
mensaje
Sintaxis
<TagName/>
Ejemplo
<CAMessage/>
Devuelve una cadena que describe los atributos de no
conformidad de una cuenta.
<ManualServiceAddAccount/>
Devuelve una cadena de texto con el cuerpo de texto de una
notificación de correo electrónico de un servicio manual.
<rfiActivityHasBeenSubmitted/>
Devuelve una cadena de texto con el cuerpo de texto de una
actividad de RFI que se ha enviado en un flujo de trabajo de
solicitud de cuenta.
Consulta
17
Identificador ID
Representa el ID de actividad en el formulario: Process.ActivityId Por
ejemplo:
<ID/>
Identificador ITIMURL
Basado en la pertenencia a grupos de una persona, representa el URL del
Tivoli Identity Manager.Un URL forzado se puede aplicar mediante el
atributo ″forcedurl″ del identificador. Este atributo contiene valores
constantes como el valor console o el valor enduser.
Tabla 4. Sintaxis y ejemplos de ITIMURL
Sintaxis
Ejemplo
<ITIMURL/>
Basado en la pertenencia a grupos de una
persona, representa el URL del Tivoli Identity
Manager Server.
<ITIMURL forcedurl="enduser"/>
Representa el URL de la interfaz gráfica de
usuario en el Tivoli Identity Manager Server. Si
se utiliza el atributo forcedurl, el URL no se
genera a partir de la pertenencia a grupos de la
persona.
Los valores de este atributo son:
enduser
El URL apunta a la interfaz gráfica de
usuario de autoservicio.
console
El URL apunta a la interfaz gráfica de
usuario del administrador.
<ITIMURL forcedurl="console"/>
Representa el URL de la interfaz gráfica de
usuario en el Tivoli Identity Manager Server. Si
se utiliza el atributo forcedurl, el URL no se
genera a partir de la pertenencia a grupos de la
persona.
Los valores de este atributo son:
enduser
El URL apunta a la interfaz gráfica de
usuario de autoservicio.
console
El URL apunta a la interfaz gráfica de
usuario del administrador.
Valores del archivo de propiedades
Para poder cambiar las plantillas, puede agregar las sentencias key=value en el
archivo CustomLabels.properties, o cree sus propias propiedades y valores.
Caracteres de escape necesarios y JavaScript
Es necesario utilizar caracteres de escape con los siguientes caracteres (utilizando el
formulario de entidad HTML apropiado que tiene el formato &entidad;) para
asegurarse de que el XML de plantilla de notificación está bien formado.
18
Consulta
Tabla 5. Caracteres de escape
Carácter de escape
Carácter
<
Menor que (<)
>
Mayor que (>)
&quote;
Comillas (″)
'
Apóstrofo (’)
&
Carácter &
Por ejemplo, para utilizar el siguiente código JavaScript:
if (i<4) return "less than four";
El identificador de contenido dinámico se formaría de la siguiente manera:
<JS> if (i<4) return &quote;less than four&quote;;</JS>
Patrones de formato comunes en el cuerpo XHTML
A los mensajes predeterminados se les da formato con un patrón común en el
cuerpo XHMTL y también contienen sentencias únicas de mensaje.
Por ejemplo, el XHTML para la plantilla de recordatorio de tareas pendientes llama
a una hoja de estilo común (el archivo imperatives.css) y a logotipos. Las
sentencias de mensaje único son parecidas a estas:
<!-- Start of notification body -->
<textBody/>
<RE key="escalation_note"/> <escalationTime/>
</td>
</tr>
<!-- End of notification body -->
Un ejemplo de un conjunto completo de sentencias en un cuerpo XHTML es el
siguiente:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>$TITLE</title>
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type" />
<link type="text/css" title="Styles" rel="stylesheet"
href="$BASE_URL/console/css/imperative.css" />
</head>
<!-- Put Next statement on one line -->
<body topmargin="0" marginheight="0" leftmargin="0" marginwidth="0"
bgcolor="ffffff">
<!-- Block for the Template Header part -->
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tbody>
<tr>
<!-- Tivoli logo -->
<td width="186" background="$BASE_URL/console/html/images/mid-part-1.gif">
<img src="$BASE_URL/console/html/images/left-tiv-1.gif" alt="$LOGO_ALT" /></td>
<!-- Middle part -->
<td background="$BASE_URL/console/html/images/mid-part-1.gif" width="692"></td>
Consulta
19
<!-- IBM logo -->
<td background="$BASE_URL/console/html/images/ibm_banner.gif" width="96"></td>
</tr>
</tbody>
</table>
<!-- Title Bar -->
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tbody>
<tr>
<td background="$BASE_URL/console/html/images/titlebar_middle.gif"
height="23" width="8">
<img border="0" src="$BASE_URL/console/html/images/titlebar_left.gif"
width="10" height="23" /></td>
<!-- ITIM Notification Lable -->
<td background="$BASE_URL/console/html/images/titlebar_middle.gif"
height="23" classpath="portfolio-header" width="979">$TITLE</td>
<td background="$BASE_URL/console/html/images/titlebar_middle.gif"
height="23" width="5"><img
border="0" src="$BASE_URL/console/html/images/titlebar_right.gif"
width="5" height="23" /></td>
</tr>
</tbody>
</table>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tbody>
<tr>
<!-- Backgroud for the template body -->
<td background="$BASE_URL/console/html/images/portfolio_background.gif"
height="148">
<table border="0" cellspacing="0" cellpadding="0" width="100%">
<tr>
<td align="left" class="text-description" height="65">
<!-- Start of notification body -->
<textBody/>
<RE key="escalation_note"/> <escalationTime/>
</td>
</tr>
<!-- End of notification body -->
</table>
</td>
</tr>
</tbody>
</table>
<!-- Copy Right Table -->
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tbody>
<tr bgcolor="#9d9d9d" align="center" valign="middle">
<td class="text-description"><span class="cont1" id="W57ea57ea"><span
class="txt" id="text">IBM Copyright 2007</span></span></td>
</tr>
</tbody>
</table>
</body>
</html>
Plantillas de correo
Se definen las plantillas de correo para entregar notificaciones de mensaje
personalizadas. Las plantillas utilizan varias funciones de personalización.
Las plantillas tienen los siguientes componentes principales:
Asunto
Describe una actividad a un destinatario de la notificación. El asunto
20
Consulta
puede ser texto sin formato e identificadores de contenido dinámico. Para
actividades de servicio manual, si no se especifica asunto, no se envía
ningún correo electrónico.
Cuerpo del texto
Describe el resultado de una actividad, como la aprobación de una cuenta.
El contenido puede ser texto sin formato, identificadores de contenido
dinámico y código JavaScript.
Cuerpo XHTML
Proporciona el contenido del correo electrónico como un mensaje HTML.
El contenido dinámico incluye identificadores de mensajes de contenido dinámico,
código JavaScript e identificadores que sustituyen variables con otros valores, o
hacen referencia a una propiedad que permite la traducción mediante el uso de un
archivo CustomLabels.properties.
Mensajes predeterminados de un servicio manual
IBM Tivoli Identity Manager proporciona plantillas de notificación
predeterminadas para mensajes que reciben los participantes que son propietarios
del servicio cuando se producen cambios en cuentas o contraseñas
correspondientes a los servicios manuales que poseen.
Plantillas de notificación predeterminadas
IBM Tivoli Identity Manager proporciona estas plantillas de notificación
predeterminadas:
<ManualServiceAddAccount/>
Proporciona un texto predeterminado que se envía al participante cuando
se añade una cuenta para el usuario de un servicio manual.
<ManualServiceModifyAccount/>
Proporciona un texto predeterminado que se envía al participante cuando
se modifica una cuenta para el usuario de un servicio manual.
<ManualServiceDeleteAccount/>
Proporciona un texto predeterminado que se envía al participante cuando
se suprime una cuenta para el usuario de un servicio manual.
<ManualServiceRestoreAccount/>
Proporciona un texto predeterminado que se envía al participante cuando
se restaura una cuenta para el usuario de un servicio manual.
<ManualServiceSuspendAccount/>
Proporciona un texto predeterminado que se envía al participante cuando
se suspende una cuenta para el usuario de un servicio manual.
<ManualServiceChangePassword/>
Proporciona un texto predeterminado que se envía al participante cuando
se produce un cambio de contraseña para el usuario de un servicio
manual.
Propiedades utilizadas para traducción
Si existen las propiedades en el archivo CustomLabels.properties, se utilizan sus
valores. De lo contrario, se utilizarán los valores de las propiedades en el archivo
Labels.properties. Estas propiedades contienen las versiones traducidas de los
mensajes (con sustitución de parámetros) que forman los identificadores dinámicos.
Consulta
21
Cambie sus valores en el archivo CustomLabels.properties si quiere que aparezca
texto diferente. No se deben cambiar los valores predeterminados que se
proporcionan en el archivo Labels.properties.
Las propiedades incluyen los siguientes elementos:
manualServiceWorkOrderAddOperationMessage
manualServiceAttributeName
manualServiceAttributeValue
manualServiceAttributeAction
manualServiceAddAction
manualServiceRemoveAction
manualServiceReplaceAction
manualServiceWorkOrderChangePwdOperationMessage
manualServiceWorkOrderPwdValueMessage
manualServiceWorkOrderDeleteOperationMessage
manualServiceWorkOrderModifyOperationMessage
manualServiceWorkOrderRestoreOperationMessage
manualServiceWorkOrderSuspendOperationMessage
manualServiceUnknownPerson
Ejemplo de script de notificación
Un script de notificación predeterminado correspondiente a un servicio manual
proporciona un mensaje que se envía a un participante. Por ejemplo, la salida de la
notificación ManualServiceAddAccount es similar a la de este ejemplo:
Nombre de atributo: Valor de atributo
myattr: TT
Contraseña: secret
Propietario: Auditor
ID de usuario: auditor1
Descripción: operación de servicio manual
Persona a la que se solicita: Auditor
Asunto: auditor1
Solicitud iniciada: 28 de jun, 2007 05:11:05 IST
Solicitada por el proceso:
Nombre de proceso: Agregar cuenta
Descripción: Proceso de adición de cuentas
Solicitante: Administrador del sistema
Persona a la que se solicita: Auditor
Asunto: auditor1
Ejemplo de salida
La plantilla <ManualServiceAddAccount/> proporciona un mensaje que utiliza
algunos de los valores en el archivo Labels.properties:
manualServiceWorkOrderAddOperationMessage
manualServiceAttributeName : manualServiceAttributeValue
{inserte aquí nombres de atributo reales} : {inserte aquí valores de atributo reales}
El identificador <ManualServiceModifyAccount/> generaría:
manualServiceWorkOrderModifyOperationMessage
{Coloque los siguientes atributos en una línea:}
manualServiceAttributeName : manualServiceAttributeValue
22
Consulta
: manualServiceAttributeAction
{inserte aquí nombres de atributo reales} : {inserte aquí valores de atributo reales} :
{en función de lo que se necesite hacer, una de las siguientes: }
{Coloque los siguientes atributos en una línea:}
{manualServiceAddAction,manualServiceReplaceAction,
manualServiceRemoveAction}
Mensajes predeterminados de recertificación
IBM Tivoli Identity Manager proporciona plantillas de mensaje predeterminadas
para los mensajes de recertificación.
Plantillas de recertificación predeterminadas
IBM Tivoli Identity Manager proporciona plantillas de mensaje predeterminadas
para los mensajes de recertificación. No puede cambiar las plantillas siguientes:
Suspender cuenta
Proporciona un texto predeterminado en el que se solicita al participante
que recertifique el uso de una cuenta. Si se rechaza la solicitud, se
suspenderá la cuenta.
Por ejemplo, el participante recibe este mensaje:
La cuenta myaccount del servicio shortword-linux requiere certificación
Ha recibido una solicitud de recertificación para la cuenta myaccount del servicio
shortword-linux cuyo propietario es firstname lastname.
Si se rechaza la solicitud de recertificación, se suspenderá
la cuenta myaccount en shortword-linux.
Actividad: Recertificación de cuenta/acceso
Fecha de envío: 26 abr 2007 10:34:51 IST
Tipo de solicitud: Recertificación
Solicitada para: firstname lastname
Solicitada por: SYSTEM
Acceso/Cuenta: myaccount
Descripción:
Fecha de vencimiento: 27 abr 2007 10:34:57 IST
Suprimir cuenta
Proporciona un texto predeterminado en el que se solicita al participante
que recertifique el uso de una cuenta. Si se rechaza la solicitud, se
suprimirá la cuenta.
Por ejemplo, el participante recibe este mensaje:
La cuenta myaccount del servicio shortword-linux requiere certificación
Ha recibido una solicitud de recertificación para la cuenta myaccount
del servicio shortword-linux cuyo propietario es firstname lastname.
Si se rechaza la solicitud de recertificación, se suprimirá
la cuenta myaccount en shortword-linux.
Actividad: Recertificación de cuenta/acceso
Fecha de envío: 26 abr 2007 10:34:51 IST
Tipo de solicitud: Recertificación
Solicitada para: firstname lastname
Solicitada por: SYSTEM
Acceso/Cuenta: myaccount
Descripción:
Fecha de vencimiento: 27 abr 2007 10:34:57 IST
Consulta
23
Marcar cuenta
Proporciona un texto predeterminado que se envía a un participante para
que recertifique el uso de una cuenta. Rechazar la solicitud marcará la
cuenta para una acción posterior en la cuenta.
Por ejemplo, el participante recibe este mensaje:
La cuenta myaccount del servicio shortsword-linux requiere certificación.
Ha recibido una solicitud de recertificación para la cuenta myaccount del servicio
shortword-linux cuyo propietario es firstname lastname.
Si se rechaza la solicitud de recertificación,
la cuenta myaccount en shortword-linux se marcará como rechazada
para recertificación.
Actividad: Recertificación de cuenta/acceso
Fecha de envío: 26 abr 2007 10:34:51 IST
Tipo de solicitud: Recertificación
Solicitada para: firstname lastname
Solicitada por: SYSTEM
Acceso/Cuenta: myaccount
Descripción:
Fecha de vencimiento: 27 abr 2007 10:34:57 IST
Marcar acceso
Proporciona un texto predeterminado que se envía a un participante para
que recertifique el uso de una cuenta en un acceso. Rechazar la solicitud
marcará el acceso para una acción posterior en la cuenta.
Por ejemplo, el participante recibe este mensaje:
La cuenta myaccount del acceso myaccess requiere certificación.
Ha recibido una solicitud de recertificación para la cuenta myaccount
del acceso myaccess cuyo propietario es firstname lastname.
Si se rechaza la solicitud de recertificación,
el acceso myaccess se marcará como rechazado para recertificación.
Actividad:
Fecha de envío: 26 abr 2007 10:34:51 IST
Tipo de solicitud:
Solicitada para:
Solicitada por:
Acceso/Cuenta:
Descripción:
Fecha de vencimiento: 27 abr 2007 10:34:57 IST
Suprimir acceso
Proporciona un texto predeterminado que solicita un participante para que
recertifique el uso de una cuenta en un acceso. Si se rechaza la solicitud, se
suprime la cuenta en el acceso.
Por ejemplo, el participante recibe este mensaje:
La cuenta myaccount del acceso myaccess requiere certificación.
Ha recibido una solicitud de recertificación para la cuenta myaccount
del acceso myaccess cuyo propietario es firstname lastname.
Si se rechaza la solicitud de recertificación, se suprimirá
el acceso myaccess.
Actividad:
Fecha de envío: 26 abr 2007 10:34:51 IST
Tipo de solicitud:
Solicitada para:
24
Consulta
Solicitada por:
Acceso/Cuenta:
Descripción:
Fecha de vencimiento: 27 abr 2007 10:34:57 IST
Cuenta suspendida
Proporciona un texto predeterminado que se envía a un participante,
confirmando la suspensión de una cuenta, después de que el participante
haya rechazado la solicitud de recertificación.
Por ejemplo, el participante recibe este mensaje:
La cuenta myaccount del servicio shortword-linux se ha suspendido
porque se ha rechazado una solicitud de recertificación.
La cuenta myaccount del servicio shortword-linux cuyo propietario es
firstname lastname se ha suspendido porque se ha rechazado
una solicitud de recertificación.
Actividad: Recertificación de cuenta/acceso
Fecha de envío: 26 abr 2007 10:34:51 IST
Tipo de solicitud: Recertificación
Solicitada para: firstname lastname
Solicitada por: SYSTEM
Acceso/Cuenta: myaccount
Descripción:
Cuenta suprimida
Proporciona un texto predeterminado que se envía a un participante,
confirmando la supresión de una cuenta, después de que el participante
haya rechazado la solicitud de recertificación.
Por ejemplo, el participante recibe este mensaje:
La cuenta myaccount del servicio shortword-linux se ha suprimido porque
se ha rechazado una solicitud de recertificación
La cuenta myaccount del servicio shortword-linux cuyo propietario es
firstname lastname se ha suprimido porque se ha rechazado
una solicitud de recertificación.
Actividad: Recertificación de cuenta/acceso
Fecha de envío: 26 abr 2007 10:34:51 IST
Tipo de solicitud: Recertificación
Solicitada para: firstname lastname
Solicitada por: SYSTEM
Acceso/Cuenta: myaccount
Descripción:
Fecha de vencimiento: 27 abr 2007 10:34:57 IST
Cuenta marcada
Proporciona texto predeterminado que se envía a un participante,
confirmando que una cuenta se ha marcado para la suspensión, después de
que el participante rechace una solicitud de recertificación.
Por ejemplo, el participante recibe este mensaje:
La cuenta myaccount del servicio shortword-linux se marcado como rechazada
para recertificación porque se ha rechazado una solicitud de recertificación
La cuenta myaccount del servicio shortword-linux cuyo propietario es
firstname lastname se ha marcado como rechazada para recertificación
porque se ha rechazado una solicitud de recertificación.
Actividad: Recertificación de cuenta/acceso
Fecha de envío: 26 abr 2007 10:34:51 IST
Tipo de solicitud: Recertificación
Solicitada para: firstname lastname
Solicitada por: SYSTEM
Consulta
25
Acceso/Cuenta: myaccount
Descripción:
Fecha de vencimiento: 27 abr 2007 10:34:57 IS
Acceso marcado
Proporciona texto predeterminado que se envía a un participante,
confirmando que una cuenta en un acceso se ha marcado para acción
posterior, después de que el participante rechace una solicitud de
recertificación.
Por ejemplo, el participante recibe este mensaje:
La plantilla contiene estas sentencias:
La cuenta myaccount del acceso myaccess se ha suprimido
porque se ha rechazado una solicitud de recertificación.
La cuenta myaccount del acceso myaccess cuyo propietario es firstname lastname
se ha marcado como rechazada para recertificación porque se ha rechazado
una solicitud de recertificación.
Actividad:
Fecha de envío: 26 abr 2007 10:34:51 IST
Tipo de solicitud:
Solicitada para:
Solicitada por:
Acceso/Cuenta:
Descripción:
Fecha de vencimiento: 27 abr 2007 10:34:57 IST
Acceso eliminado
Proporciona texto predeterminado que se envía a un participante,
confirmando la supresión de una cuenta en un acceso, después de que el
participante rechace una solicitud de recertificación.
Por ejemplo, el participante recibe este mensaje:
La cuenta myaccount del acceso myaccess se ha suprimido porque se ha
rechazado una solicitud de recertificación.
La cuenta myaccount del acceso myaccess cuyo propietario es firstname lastname
se ha suprimido porque se ha rechazado una solicitud de recertificación.
Actividad:
Fecha de envío: 26 abr 2007 10:34:51 IST
Tipo de solicitud:
Solicitada para:
Solicitada por:
Acceso/Cuenta:
Descripción:
Fecha de vencimiento: 27 abr 2007 10:34:57 IST
Recertificación de usuario pendiente
Proporciona texto predeterminado que se envía a un participante,
confirmando que una recertificación de usuario está pendiente, después de
que se inicie una solicitud de recertificación.
Por ejemplo, el participante recibe este mensaje:
Ha recibido una solicitud de recertificación para firstname lastname del usuario.
La recertificación incluye los miembros del/los rol(es) y la propiedad
de la/las cuenta(s) Y. Indique si el usuario todavía necesita estos
recursos:
La cuenta myaccount del acceso myaccess cuyo propietario es firstname lastname
se ha suprimido porque se ha rechazado una solicitud de recertificación.
Actividad: Recertificación de cuenta/acceso/usuario
26
Consulta
Fecha de envío: 08 sep, 2008 04:10:32 EDT
Tipo de solicitud: Recertificación
Solicitada para: firstname lastname
Solicitada por: Sistema
Fecha de vencimiento: 18 sep, 2008 04:10:34 EDT
Recertificación de usuario rechazada
Proporciona un texto predeterminado que se envía a un participante,
confirmando que uno o más recursos se han rechazado en una solicitud de
recertificación.
Por ejemplo, el participante recibe este mensaje:
Uno o más recursos para firstname lastname del usuario han sido rechazados
durante la recertificación.
La cuenta myaccount del acceso myaccess cuyo propietario es firstname lastname
se ha suprimido porque se ha rechazado una solicitud de recertificación.
Actividad: Recertificación de cuenta/acceso/usuario
Fecha de envío: 08 sep, 2008 06:30:07 EDT
Tipo de solicitud: Recertificación
Solicitada para: firstname lastname
Solicitada por: Sistema
Los siguientes roles han sido rechazados:
rolename
Las siguientes cuentas han sido rechazadas, junto con todos los grupos
asociados con las cuentas:
Cuenta "uid" en el servicio "servicename"
Los siguientes grupos han sido rechazados pero la cuenta ha sido aceptada:
Grupo "groupname" para cuenta "uid" en el servicio "servicename"
Valores del archivo de propiedades
Para poder cambiar las plantillas, puede utilizar todas las sentencias key=value en
el archivo CustomLabels.properties, o cree sus propias propiedades y valores.
Las propiedades incluyen los siguientes elementos (en una línea):
recertOn={0} en {1}
recertTemplateSubject=La cuenta {0} del servicio {1}
requiere recertificación
recertTemplateAccessSubject=La cuenta {0} del acceso {1}
requiere recertificación
recertTemplateBody=Ha recibido una solicitud de recertificación
para la cuenta {0} del servicio {1} cuyo propietario es {2}.
recertTemplateAccessBody=Ha recibido una solicitud de recertificación
para la cuenta {0} del acceso {1} cuyo propietario es {2}.
recertDeclineSuspendsBody=Si se rechaza la solicitud de recertificación,
se suspenderá la cuenta {0} en {1}.
recertDeclineDeletesBody=Si se rechaza la solicitud de recertificación,
se suprimirá la cuenta {0} en {1}.
recertDeclineMarksBody=Si se rechaza la solicitud de recertificación,
la cuenta {0} en {1} se marcará como rechazada para recertificación.
recertDeclineDeletesAccessBody=Si se rechaza la solicitud de recertificación,
se suprimirá el acceso {0}.
recertDeclineMarksAccessBody=Si se rechaza la solicitud de recertificación,
el acceso {0} se marcará como rechazado para recertificación.
recertDeclinedAcctSuspendedSubj=La cuenta {0} del servicio {1}
se ha suspendido porque se ha rechazado una solicitud de recertificación
recertDeclinedAcctDeletedSubj=La cuenta {0} del servicio {1}
se ha suprimido porque se ha rechazado una solicitud de recertificación
recertDeclinedAcctMarkedSubj=La cuenta {0} del servicio {1}
se ha marcado como rechazada para recertificación porque se ha rechazado
Consulta
27
una solicitud de recertificación
recertDeclinedAccessDeletedSubj=La cuenta {0} del acceso {1} se ha
suprimido porque se ha rechazado una solicitud de recertificación
recertDeclinedAccessMarkedSubj=La cuenta {0} del servicio {1}
se ha marcado como rechazada para recertificación porque se ha rechazado
una solicitud de recertificación
recertDeclinedAcctSuspendedBody=La cuenta {0} del
servicio {1} cuyo propietario es {2} se ha suspendido porque se ha rechazado
una solicitud de recertificación.
recertDeclinedAcctDeletedBody=La cuenta {0} del servicio {1}
cuyo propietario es {2} se ha suprimido porque se ha rechazado una solicitud de
recertificación.
recertDeclinedAcctMarkedBody=La cuenta {0} del servicio {1}
cuyo propietario es {2} se ha marcado como rechazada para recertificación
porque se ha rechazado una solicitud de recertificación.
recertDeclinedAccessDeletedBody=La cuenta {0} del acceso {1}
cuyo propietario es {2} se ha suprimido porque se ha rechazado una solicitud de
recertificación.
recertDeclinedAccessMarkedBody=La cuenta {0} del acceso {1}
cuyo propietario es {2} se ha marcado como rechazada para recertificación
porque se ha rechazado una solicitud de recertificación.
userRecertTemplateSubject=Se requiere recertificación para el
usuario {0}
userRecertTemplateBody=Ha recibido una solicitud de recertificación
para el usuario {0}. La recertificación incluye los miembros del/los rol(es) {1}
y la propiedad de {2} cuenta(s). Indique si el usuario aún necesita estos recursos.
userRecertDeclinedSubj=Se ha rechazado la solicitud de recertificación para el
usuario {0}
userRecertDeclinedBody=Uno o más recursos del usuario {0} han sido
rechazados durante la recertificación.
userRecertRolesRejectedLabel=Los siguientes roles han sido rechazados:
userRecertAccountsRejectedLabel=Las siguientes cuentas han sido rechazadas,
junto con todos los grupos asociados a las cuentas:
userRecertGroupsRejectedLabel=Los siguientes grupos se han rechazado,
pero la cuenta ha sido aceptada:
userRecertAcctLabel=La cuenta "{0}" en el servicio "{1}"
userRecertGroupLabel=El grupo "{0}" para la cuenta "{1}" en el servicio "{2}"
Definiciones de clave de la plantilla de recertificación
Las plantillas de recertificación utilizan las definiciones de clave siguientes:
name=Actividad
timeScheduled=Fecha de envío
recertRequestType=Tipo de solicitud
recertRequestedFor=Solicitada para
recertRequestedBy=Solicitada por
recertAccountAccess=Acceso/Cuenta
recertDueDate=Fecha de vencimiento
recertRequestTypeName=Recertificación
readOnlyDateFormat=dd MMM yyyy hh:mm:ss z
Mensajes predeterminados de flujo de trabajo
IBM Tivoli Identity Manager proporciona mensajes de flujo de trabajo
predeterminados.
Plantillas de flujo de trabajo predeterminadas
Todas las plantillas de avisos de flujo de trabajo se pueden personalizar. IBM Tivoli
Identity Manager proporciona estas plantillas de flujo de trabajo predeterminadas
de avisos:
28
Consulta
Plantilla de tiempo de espera de actividad
Proporciona información de que la actividad del flujo de trabajo ha
excedido el tiempo de espera y terminará. De forma predeterminada, esta
plantilla está habilitada.
Por ejemplo, la plantilla proporciona este mensaje:
Se ha excedido el tiempo de espera de la actividad de flujo de trabajo
y el sistema de flujo de trabajo la finalizará.
La siguiente actividad ha excedido el tiempo de espera. El sistema de flujo de trabajo
finalizará la actividad y el resultado se establecerá en Terminado.
Información de la actividad
Ver cambios: http://localhost:9090/itim/console
ID de actividad: ADApproval
Actividad: Aprobación de cuenta de AD
Hora de inicio: 09 jun 2007 12:28:45 IST
Hora de finalización:
Resumen de resultado: Intensificado
Estado: En ejecución
Tipo de actividad: Aprobación/Rechazo manual
Información del proceso
ID de proceso: 1099575082113388748
Actividad: Flujo de trabajo de aprobación de cuenta de predeterminado
Descripción:
Estado: En ejecución
Fecha de envío: 09 jun 2007 12:23:41 IST
Hora de finalización:
Resumen de resultado:
Solicitante: 1099572462907357646
Persona a la que se solicita: firstname lastname
Asunto:
Comentario:
Detalles:
La sentencia del asunto es:
<RE key="activity_timeout_subject" />
El texto sin formato es:
<RE key="activity_timeout_message" />
<RE key="activity_timeout_detail" />
<RE key="activityInformation" />
<ITIMURL/>
<RE key="activityID"/>: <JS>activity.id;</JS>
<RE key="name"/>: <JS>activity.name;</JS>
<RE key="timeStarted"/>: <RE key="readOnlyDateFormat"><PARM>
<JS>if (activity.started != null)
return activity.started.getTime();
else return '';</JS></PARM></RE>
<RE key="timeCompleted"/>: <RE key="readOnlyDateFormat"><PARM>
<JS>if (activity.completed != null)
return activity.completed.getTime();
else return '';</JS></PARM></RE>
<RE key="resultSummary"/>: <RE><KEY>
<JS>process.STATE_PREFIX + activity.resultSummary;
</JS></KEY></RE>
<RE key="state"/>: <RE><KEY><JS>process.STATE_PREFIX+activity.state;
</JS></KEY></RE>
<RE key="activityType"/>: <RE><KEY>
<JS>activity.TYPE_PREFIX + activity.type;</JS>
</KEY></RE>
<RE><KEY><JS>activity.TYPE_PREFIX + activity.subtype;</JS></KEY></RE>
<RE key="processInformation" />
<RE key="processID"/>: <JS>process.id;</JS>
<RE key="name"/>: <RE><KEY><JS>process.name;</JS></KEY></RE>
<RE key="description"/>: <RE><KEY>
<JS>process.description;</JS></KEY></RE>
Consulta
29
<RE key="state"/>: <RE><KEY><JS>process.STATE_PREFIX + process.state;
</JS></KEY></RE>
<RE key="timeScheduled"/>: <RE key="readOnlyDateFormat"><PARM>
<JS>if (process.scheduled != null) return process.scheduled.getTime();
else return '';</JS></PARM></RE>
<RE key="timeCompleted"/>: <RE key="readOnlyDateFormat"><PARM>
<JS>if (process.completed != null) return process.completed.getTime();
else return '';</JS></PARM></RE>
<RE key="resultSummary"/>: <RE><KEY>
<JS>process.STATE_PREFIX + process.resultSummary;
</JS></KEY></RE>
<RE key="requester"/>: <JS>process.requestorName;</JS>
<RE key="requestedFor"/>: <JS>process.requesteeName;</JS>
<RE key="subject"/>: <JS>process.subject;</JS>
<RE key="comment"/>: <JS>process.comment;</JS>
<RE key="detail"/>: <JS>process.resultDetail;</JS>
Plantilla de cambio de cuenta
Proporciona información de que la actividad de flujo de trabajo ha
modificado información de cuenta. De forma predeterminada, esta plantilla
está inhabilitada.
Por ejemplo, la plantilla proporciona este mensaje:
Información de la cuenta modificada de IBM Tivoli Identity Manager
Se ha modificado la cuenta de ITIM Service [ITIM] siguiente:
Ver cambios: http://localhost:9090/itim/console
Referencia del proceso: 875016861865594505
ID de cuenta: myaccount
Nombre de propietario: firstname lastname
Hora de finalización: 08 jun 2007 09:52:24 IST
La sentencia del asunto es:
<RE key="change_account_subject"/>
El texto sin formato es:
<RE key="account_changed"><PARM>
<RE key="service_name_with_profile_name"><PARM>
<JS>EmailContext.getAccountServiceName();</JS></PARM>
<PARM><RE><KEY><JS>EmailContext.getAccountServiceProfileName();
</JS></KEY></RE></PARM></RE></PARM></RE>
<ITIMURL/>
<RE key="processRef"/>: <JS>process.id;</JS>
<JS>if (EmailContext.getTransactionId() != '0')
{ '<RE key="TRANSACTION_ID_LABEL"/>: ' + EmailContext.getTransactionId(); }
</JS>
<RE key="accountID"/>: <JS>EmailContext.getAccountUserId();</JS>
<RE key="accountOwnerName"/>: <JS>EmailContext.getAccountOwnerName();</JS>
<RE key="timeCompleted"/>: <RE key="readOnlyDateFormat"><PARM>
<JS>(new Date()).getTime();</JS></PARM></RE>
<JS>if (EmailContext.hasNewAccess()) { '<RE key="accountNewAccess"/>:
<JS>EmailContext.getAccountNewAccessAsString();</JS>\n'; }</JS>
<JS>if (EmailContext.hasRemovedAccess()) { '<RE key="accountRemovedAccess"/>:
<JS>EmailContext.getAccountRemovedAccessAsString();</JS>\n'; }</JS>
<JS>if (EmailContext.getTransactionId() != '0')
{ '<RE key="RETRIEVE_PASSWORD_TITLE"/>: ' +
EmailContext.getPasswordRetrievalUrl(); }
</JS>
<JS>if (EmailContext.getTransactionId() != '0')
{ '<RE key="passwordExpireLabel"/>:
<JS>if (EmailContext.getPasswordExpirePeriod() == 0)
{ '<RE key="passwordneverexpire"/>'; }
else { EmailContext.getPasswordExpirePeriod(); }</JS>'; }</JS>
<JS>if (EmailContext.getTransactionId() != '0')
{ '<JS>if (EmailContext.getPasswordExpirePeriod() == 0)
{ '<RE key="additionalMsgForPwdRetrieval"/>'; }</JS>'; }</JS>
Plantilla de conformidad
Proporciona información de que una cuenta no cumple con una política de
suministro. De forma predeterminada, esta plantilla está habilitada.
Por ejemplo, la plantilla proporciona este mensaje:
30
Consulta
Alerta de conformidad para winlocal
La cuenta [helpdesk35] no cumple la política de suministro.
El valor [Rendimiento usuarios de registro] del atributo [Grupos locales]
se debe [eliminar].
Ver cambios: http://99.99.999.99:80/itim/console
La sentencia del asunto es:
<RE key="compliance_alert_subject" >
<PARM><JS>var service = context.getService();
return service.getProperty("erservicename")[0];</JS>
</PARM>
</RE>
El texto sin formato es:
<CAMessage/>
<RE key="itimUrl"/>:<ITIMURL/>
Plantilla de eliminación de suministro de cuenta
Proporciona información de que la actividad de flujo de trabajo ha
eliminado una cuenta. De forma predeterminada, esta plantilla está
habilitada.
Por ejemplo, la plantilla proporciona este mensaje:
La cuenta ha sido eliminada por IBM Tivoli Identity Manager.
Ha dejado de darse suministro a la cuenta de Odessa Service [ADProfile] siguiente.
Ver cambios: http://host:9080/itim/self
Referencia del proceso: 5870349043636872731
ID de cuenta: myaccount
Nombre de propietario: myname
Motivo: Imposición de política
Hora de finalización: 03 may 2007 03:54:22 IST
La sentencia del asunto es:
<RE key="remove_account_subject" />
El texto sin formato es:
<RE key="account_deprovisioned">
<PARM><RE key="service_name_with_profile_name">
<PARM><JS>EmailContext.getAccountServiceName();</JS></PARM>
<PARM><RE><KEY><JS>EmailContext.getAccountServiceProfileName();
</JS></KEY></RE></PARM></RE></PARM></RE>
<ITIMURL/>
<RE key="processRef"/>: <JS>process.id;</JS>
<RE key="accountID"/>: <JS>EmailContext.getAccountUserId();</JS>
<RE key="accountOwnerName"/>: <JS>EmailContext.getAccountOwnerName();</JS>
<RE key="reason"/>: <JS>EmailContext.getReason();</JS>
<RE key="deprovisionCompleted"/>: <RE key="readOnlyDateFormat">
<PARM><JS>(new Date()).getTime();</JS></PARM></RE>
Plantilla de aprobación de actividad manual
Proporciona información de que el usuario debe proporcionar información
de una solicitud. De forma predeterminada, esta plantilla está habilitada.
Por ejemplo, la plantilla proporciona este mensaje:
Acción de flujo de trabajo pendiente: caso 884088984804067042.884090864796694775
Se le ha solicitado que envíe información para la solicitud siguiente
Ver cambios: http://localhost:9090/itim/console
Descripción:
Persona a la que se solicita: firstname lastname
Asunto: subject
Solicitud iniciada: 08 jun 2007 10:27:29 IST
Referencia del proceso: 884088984804067042
Solicitada por el proceso:
ID de proceso: 884066904196868932
Nombre de proceso: Suministrar cuenta
Consulta
31
Descripción: Proceso de suministro de cuentas
Solicitante: Administrador del sistema
Persona a la que se solicita: firstname lastname
Asunto: subject
La sentencia del asunto es:
<RE key="pending_workitem_subject"><PARM><ID /></PARM></RE>
El texto sin formato es:
<RE key="wiApproval_message" />
<ITIMURL/>
<RE key="description"/>: <RE><KEY><JS>process.description;</JS></KEY></RE>
<RE key="requestedFor"/>: <JS>process.requesteeName;</JS>
<RE key="subject"/>: <JS>process.subject;</JS>
<JS>if (process.subjectAccess!=null) if (process.subjectAccess.length>0)
{ '<RE key="accessName"/>: <JS>process.subjectAccess;</JS>\n'; }</JS>
<RE key="requestInit"/>: <RE key="readOnlyDateFormat"><PARM>
<JS>if (process.started != null) return process.started.getTime();
else return '';</JS></PARM></RE>
<RE key="processRef"/>: <JS>process.id;</JS>
<JS>if (process.parentId == '0') { '<RE key="requestedBy"/>:
<JS>process.requestorName;</JS>'; }</JS>
<JS>if (process.parentId != '0') { '<RE key="parent_process"/>'; }</JS>
<JS>if (process.parentId != '0')
{ '<RE key="processID"/>: ' + process.parentId; }</JS>
<JS>if (process.parentId != '0') { '<RE key="processName"/>:
<RE><KEY><JS>if (process.parentId != '0') { process.getParent().name; }
</JS></KEY></RE>'; }</JS>
<JS>if (process.parentId != '0') { '<RE key="description"/>:
<RE><KEY><JS>if (process.parentId != '0')
{ process.getParent().description; } </JS></KEY></RE>'; }</JS>
<JS>if (process.parentId != '0')
{ '<RE key="requester"/>: ' + process.getParent().requestorName; }
</JS>
<JS>if (process.parentId != '0')
{ '<RE key="requestedFor"/>: ' + process.getParent().requesteeName; }
</JS>
<JS>if (process.parentId != '0')
{ '<RE key="subject"/>: ' + process.getParent().subject; }</JS>
Plantilla de RFI de actividad manual
Proporciona la plantilla predeterminada para solicitar información de
actividades de flujo de trabajo. De forma predeterminada, esta plantilla
está habilitada.
Por ejemplo, la plantilla proporciona este mensaje:
Se le ha solicitado que envíe información para la solicitud siguiente
http://localhost:9080/itim/self/ReviewActivities.do?
activity=3053543743245419023
Descripción:
Persona a la que se solicita: Shoe Flower
Asunto: shoe1
Solicitud iniciada: 03 ago 2007 11:48:52 IST
Referencia del proceso: 3053543339468639238
Solicitada por el proceso:
ID de proceso: 3053541330639294422
Nombre de proceso: Suministrar cuenta
Descripción: Proceso de suministro de cuentas
Solicitante: Administrador del sistema
Persona a la que se solicita: Shoe Flower
Asunto: shoe1
La sentencia del asunto es:
<RE key="pending_workitem_subject"><PARM><ID /></PARM></RE>
El texto sin formato es:
<RE key="wiRFI_message" />
<ITIMURL/>
<RE key="description"/>: <RE><KEY>
32
Consulta
<JS>process.description;</JS></KEY></RE>
<RE key="requestedFor"/>: <JS>process.requesteeName;</JS>
<RE key="subject"/>: <JS>process.subject;</JS>
<JS>if (process.subjectAccess!=null)
if (process.subjectAccess.length>0)
{ '<RE key="accessName"/>:
<JS>process.subjectAccess;</JS>\n'; }</JS>
<RE key="requestInit"/>: <RE key="readOnlyDateFormat"><PARM>
<JS>if (process.started != null) return process.started.getTime();
else return '';</JS></PARM></RE>
<RE key="processRef"/>: <JS>process.id;</JS>
<JS>if (process.parentId == '0') { '<RE key="requestedBy"/>:
<JS>process.requestorName;</JS>'; }</JS>
<JS>if (process.parentId != '0') { '<RE key="parent_process"/>'; }
</JS>
<JS>if (process.parentId != '0')
{ '<RE key="processID"/>: ' + process.parentId; }</JS>
<JS>if (process.parentId != '0') { '<RE key="processName"/>:
<RE><KEY><JS>if (process.parentId != '0') { process.getParent().name; }
</JS></KEY></RE>'; }</JS>
<JS>if (process.parentId != '0') { '<RE key="description"/>:
<RE><KEY><JS>if (process.parentId != '0')
{ process.getParent().description; }
</JS></KEY></RE>'; }</JS>
<JS>if (process.parentId != '0')
{ '<RE key="requester"/>: ' + process.getParent().requestorName; }
</JS>
<JS>if (process.parentId != '0')
{ '<RE key="requestedFor"/>: ' + process.getParent().requesteeName; }
</JS>
<JS>if (process.parentId != '0')
{ '<RE key="subject"/>: ' + process.getParent().subject; }</JS>
Plantilla de orden de trabajo de actividad manual
Proporciona la plantilla predeterminada para la orden de trabajo de
actividad manual de flujo de trabajo. De forma predeterminada, esta
plantilla está habilitada.
Por ejemplo, la plantilla proporciona este mensaje:
Acción de flujo de trabajo pendiente:
caso 1401993364658803275.1402011582339065124
Ha recibido una solicitud de orden de trabajo
La sentencia del asunto es:
<RE key="pending_workitem_subject"><PARM><ID /></PARM></RE>
El texto sin formato es:
<RE key="wiWorkOrder_message" />
Plantilla de cuenta nueva
Proporciona información de que la actividad de flujo de trabajo ha creado
una cuenta nueva. De forma predeterminada, esta plantilla está habilitada.
Por ejemplo, la plantilla proporciona este mensaje:
Información de la nueva cuenta de IBM Tivoli Identity Manager
Se ha creado la siguiente cuenta nueva de ITIM Service [ITIM]:
Ver cambios: http://localhost:80/itim/console
Referencia del proceso: 8498649245880216244
Contraseña: bAMI#gai
ID de cuenta: myaccount
Nombre de propietario: firstname lastname
Hora del suministro de servicio: 29 jun 2007 10:55:58 IST
La sentencia del asunto es:
<RE key="new_account_subject"/>
El texto sin formato es:
Consulta
33
<RE key="account_created"><PARM>
<RE key="service_name_with_profile_name">
<PARM><JS>EmailContext.getAccountServiceName();</JS></PARM>
<PARM><RE><KEY><JS>EmailContext.getAccountServiceProfileName();
</JS></KEY></RE></PARM></RE></PARM></RE>
<ITIMURL/>
<RE key="processRef"/>: <JS>process.id;</JS>
<JS>if (EmailContext.getTransactionId() != '0')
{ '<RE key="TRANSACTION_ID_LABEL"/>: '
+ EmailContext.getTransactionId(); } </JS>
<RE key="password"/>: <JS>EmailContext.getAccountPassword();</JS>
<RE key="accountID"/>: <JS>EmailContext.getAccountUserId();</JS>
<RE key="accountOwnerName"/>:
<JS>EmailContext.getAccountOwnerName();</JS>
<RE key="timeofprovision"/>: <RE key="readOnlyDateFormat">
<PARM><JS>(new Date()).getTime();</JS></PARM></RE>
<JS>if (EmailContext.hasNewAccess()) { '<RE key="accountNewAccess"/>:
<JS>EmailContext.getAccountNewAccessAsString();</JS>\n'; }</JS>
<JS>if (EmailContext.getTransactionId() != '0')
{ '<RE key="RETRIEVE_PASSWORD_TITLE"/>: '
+ EmailContext.getPasswordRetrievalUrl(); }</JS>
<JS>if (EmailContext.getTransactionId() != '0')
{ '<RE key="passwordExpireLabel"/>:
<JS>if (EmailContext.getPasswordExpirePeriod() == 0)
{ '<RE key="passwordneverexpire"/>'; }
else { EmailContext.getPasswordExpirePeriod(); }</JS>'; }</JS>
<JS>if (EmailContext.getTransactionId() != '0')
{ '<JS>if (EmailContext.getPasswordExpirePeriod() == 0)
{ '<RE key="additionalMsgForPwdRetrieval"/>'; }</JS>'; }</JS>
Plantilla de contraseña nueva
Proporciona información de que hay una contraseña nueva para una
cuenta. De forma predeterminada, esta plantilla está habilitada.
Por ejemplo, la plantilla proporciona este mensaje:
Información de la contraseña nueva de la cuenta
A continuación se muestra su nueva contraseña para la cuenta myaccount:
Ver cambios: http://localhost:9090/itim/console
Referencia del proceso: 2855285841498421007
Contraseña nueva: secret
ID de cuenta: myaccount
Servicio de cuenta: Servicio de ITIM
Perfil de servicio de cuenta: ITIM
Nombre de propietario: firstname lastname
Hora del suministro de servicio: 25 abr 2007 12:54:05 IST
La sentencia del asunto es:
<RE key="password_change_subject"/>
El texto sin formato es:
<RE><KEY><JS>if (EmailContext.getTransactionId() == '0')
{ 'newAccountPassword' } else { 'newAccountPasswordPickUp'; }
</JS></KEY>
<PARM><JS>process.subject;</JS></PARM></RE>
<ITIMURL/>
<RE key="processRef"/>: <JS>process.id;</JS>
<JS>if (EmailContext.getTransactionId() != '0')
{ '<RE key="TRANSACTION_ID_LABEL"/>: ' +
EmailContext.getTransactionId(); }
</JS>
<RE key="newPassword"/>: <JS>EmailContext.getAccountPassword();</JS>
<RE key="accountID"/>: <JS>EmailContext.getAccountUserId();</JS>
<RE key="accountService"/>:
<JS>EmailContext.getAccountServiceName();</JS>
<RE key="accountServiceProfile"/>: <RE><KEY>
<JS>EmailContext.getAccountServiceProfileName();</JS></KEY></RE>
<RE key="accountOwnerName"/>:
<JS>EmailContext.getAccountOwnerName();</JS>
<RE key="timeofprovision"/>: <RE key="readOnlyDateFormat">
<PARM><JS>(new Date()).getTime();</JS></PARM></RE>
<JS>if (EmailContext.getTransactionId() != '0')
{ '<RE key="RETRIEVE_PASSWORD_TITLE"/>: '
34
Consulta
+ EmailContext.getPasswordRetrievalUrl(); }</JS>
<JS>if (EmailContext.getTransactionId() != '0')
{ '<RE key="passwordExpireLabel"/>:
<JS>if (EmailContext.getPasswordExpirePeriod() == 0)
{ '<RE key="passwordneverexpire"/>'; }
else { EmailContext.getPasswordExpirePeriod(); }</JS>'; }</JS>
<JS>if (EmailContext.getTransactionId() != '0')
{ '<JS>if (EmailContext.getPasswordExpirePeriod() == 0)
{ '<RE key="additionalMsgForPwdRetrieval"/>'; }</JS>'; }</JS>
Plantilla de finalización de proceso
Proporciona información de que la actividad de flujo de trabajo ha
finalizado. De forma predeterminada, esta plantilla está habilitada.
Por ejemplo, la plantilla proporciona este mensaje:
El proceso de flujo de trabajo, 1416721862784240178, ha finalizado.
Resumen de resultado: Correcto
El proceso siguiente se ha completado
Información del proceso
Ver cambios: http://localhost:9090/itim/console
ID de proceso: 1416721862784240178
Actividad:
Descripción: Proceso de modificación de política de suministro
Estado: Completado
Fecha de envío: 16 may 2007 12:22:58 IST
Hora de finalización: 16 may 2007 01:44:17 IST
Resumen de resultado: Correcto
Solicitante: Administrador del sistema
Persona a la que se solicita:
Asunto: Política de suministro predeterminada para el servicio Perfil local de Win
Comentario:
Detalles:
La sentencia del asunto es:
<RE key="processCompletedSubject"><PARM><JS>process.id;</JS></PARM>
<PARM><RE key="resultSummaryValue"><PARM><RE><KEY>
<JS>process.STATE_PREFIX + process.resultSummary;
</JS></KEY></RE></PARM></RE></PARM></RE>
El texto sin formato es:
<RE key="process_completed_message" />
<RE key="processInformation" />
<ITIMURL/>
<RE key="processID"/>: <JS>process.id;</JS>
<RE key="name"/>: <RE><KEY><JS>process.name;</JS></KEY></RE>
<RE key="description"/>: <RE><KEY><JS>process.description;</JS>
</KEY></RE>
<RE key="state"/>: <RE><KEY>
<JS>process.STATE_PREFIX + process.state;</JS></KEY></RE>
<RE key="timeScheduled"/>: <RE key="readOnlyDateFormat"><PARM>
<JS>if (process.scheduled != null)
return process.scheduled.getTime();
else return '';</JS></PARM></RE>
<RE key="timeCompleted"/>: <RE key="readOnlyDateFormat"><PARM>
<JS>if (process.completed != null)
return process.completed.getTime();
else return '';</JS></PARM></RE>
<RE key="resultSummary"/>: <RE><KEY>
<JS>process.STATE_PREFIX + process.resultSummary;</JS>
</KEY></RE>
<RE key="requester"/>: <JS>process.requestorName;</JS>
<RE key="requestedFor"/>: <JS>process.requesteeName;</JS>
<RE key="subject"/>: <JS>process.subject;</JS>
<RE key="comment"/>: <JS>process.comment;</JS>
<RE key="detail"/>: <JS>process.resultDetail;</JS>
Consulta
35
Plantilla de tiempo de espera de proceso
Proporciona información de que el proceso de flujo de trabajo ha excedido
el tiempo de espera. De forma predeterminada, esta plantilla está
habilitada.
Por ejemplo, la plantilla proporciona este mensaje:
Se ha excedido el tiempo de espera de la actividad de flujo de trabajo
y el sistema de flujo de trabajo la finalizará.
Información de la actividad
Ver cambios: http://localhost:9080/itim/console
ID de actividad: RECERTAPPROVAL
Actividad: $ITIM_RECERTIFY
Hora de inicio: 02 ago 2007 03:18:54 IST
Hora de finalización:
Resumen de resultado: Pendiente
Estado: En ejecución
Tipo de actividad: Aprobación/Rechazo manual
Información del proceso
ID de proceso: 8566433417513336819
Actividad: Recertificación de cuenta/acceso
Descripción: Recertificación de cuenta/acceso
Estado: En ejecución
Fecha de envío: 02 ago 2007 03:18:54 IST
Hora de finalización:
Resumen de resultado:
Solicitante: org
Persona a la que se solicita: Person B
Asunto: personb
Comentario:
Detalles:
La sentencia del asunto es:
<RE key="process_timeout_subject" />
El texto sin formato es:
<RE key="process_timeout_message" />
<RE key="processInformation" />
<ITIMURL/>
<RE key="processID"/>: <JS>process.id;</JS>
<RE key="name"/>: <RE><KEY><JS>process.name;</JS></KEY></RE>
<RE key="description"/>: <RE><KEY><JS>process.description;</JS></KEY></RE>
<RE key="state"/>: <RE><KEY>
<JS>process.STATE_PREFIX + process.TIMEOUT;</JS></KEY></RE>
<RE key="timeScheduled"/>: <RE key="readOnlyDateFormat"><PARM>
<JS>if (process.scheduled != null) return process.scheduled.getTime();
else return '';</JS></PARM></RE>
<RE key="timeCompleted"/>: <RE key="readOnlyDateFormat"><PARM>
<JS>if (process.completed != null) return process.completed.getTime();
else return '';</JS></PARM></RE>
<RE key="resultSummary"/>: <RE><KEY>
<JS>process.STATE_PREFIX + process.resultSummary;</JS></KEY></RE>
<RE key="requester"/>: <JS>process.requestorName;</JS>
<RE key="requestedFor"/>: <JS>process.requesteeName;</JS>
<RE key="subject"/>: <JS>process.subject;</JS>
<RE key="comment"/>: <JS>process.comment;</JS>
<RE key="detail"/>: <JS>process.resultDetail;</JS>
Plantilla de restauración de cuenta
Proporciona información de que se ha restaurado una cuenta. De forma
predeterminada, esta plantilla está habilitada.
Por ejemplo, la plantilla proporciona este mensaje:
Información de la cuenta restaurada de IBM Tivoli Identity Manager
Se ha restaurado la cuenta de ITIM Service [ITIM] siguiente:
Ver cambios: http://localhost:9090/itim/console
Referencia del proceso: 2857890686820910405
36
Consulta
Contraseña nueva: secret
ID de cuenta: myaccount
Nombre de propietario: firstname lastname
Hora de finalización: 25 abr 2007 01:04:08 IST
La sentencia del asunto es:
<RE key="restore_account_subject"/>
El texto sin formato es:
<RE key="restore_account"><PARM>
<RE key="service_name_with_profile_name"><PARM>
<JS>EmailContext.getAccountServiceName();</JS></PARM>
<PARM><RE><KEY>
<JS>EmailContext.getAccountServiceProfileName();
</JS></KEY></RE></PARM></RE></PARM></RE>
<ITIMURL/>
<RE key="processRef"/>: <JS>process.id;</JS>
<JS>if (EmailContext.getTransactionId() != '0')
{ '<RE key="TRANSACTION_ID_LABEL"/>: '
+ EmailContext.getTransactionId(); } </JS>
<RE key="newPassword"/>: <JS>EmailContext.getAccountPassword();</JS>
<RE key="accountID"/>: <JS>EmailContext.getAccountUserId();</JS>
<RE key="accountOwnerName"/>:
<JS>EmailContext.getAccountOwnerName();</JS>
<RE key="timeCompleted"/>: <RE key="readOnlyDateFormat">
<PARM>
<JS>(new Date()).getTime();</JS></PARM></RE>
<JS>if (EmailContext.getTransactionId() != '0')
{ '<RE key="RETRIEVE_PASSWORD_TITLE"/>: '
+ EmailContext.getPasswordRetrievalUrl(); }</JS>
<JS>if (EmailContext.getTransactionId() != '0')
{ '<RE key="passwordExpireLabel"/>:
<JS>if (EmailContext.getPasswordExpirePeriod() == 0)
{ '<RE key="passwordneverexpire"/>'; }
else { EmailContext.getPasswordExpirePeriod(); }</JS>'; }
</JS>
<JS>if (EmailContext.getTransactionId() != '0')
{ '<JS>if (EmailContext.getPasswordExpirePeriod() == 0)
{ '<RE key="additionalMsgForPwdRetrieval"/>'; }</JS>'; }</JS>
Plantilla de suspensión de cuenta
Proporciona información de que se ha suspendido una cuenta. De forma
predeterminada, esta plantilla está habilitada.
Por ejemplo, la plantilla proporciona este mensaje:
La cuenta ha sido suspendida por IBM Tivoli Identity Manager
Se ha suspendido la cuenta de AD Service (RFI) [ADProfile] siguiente:
Ver cambios: http://localhost:9090/itim/console
Referencia del proceso: 2857497715286893521
ID de cuenta: myaccount
Nombre de propietario: firstname lastname
Hora de finalización: 25 abr 2007 01:02:43 IST
La sentencia del asunto es:
<RE key="suspend_account_subject" />
El texto sin formato es:
<RE key="account_suspended"><PARM>
<RE key="service_name_with_profile_name">
<PARM><JS>EmailContext.getAccountServiceName();</JS></PARM>
<PARM><RE><KEY><JS>EmailContext.getAccountServiceProfileName();
</JS></KEY></RE></PARM></RE></PARM></RE>
<ITIMURL/>
<RE key="processRef"/>: <JS>process.id;</JS>
<RE key="accountID"/>: <JS>EmailContext.getAccountUserId();</JS>
<RE key="accountOwnerName"/>:
<JS>EmailContext.getAccountOwnerName();</JS>
<RE key="timeCompleted"/>: <RE key="readOnlyDateFormat"><PARM>
<JS>(new Date()).getTime();</JS></PARM></RE>
Consulta
37
Plantilla de recordatorio de tareas pendientes
Proporciona la plantilla predeterminada para los recordatorios de flujo de
trabajo, los cuales son correos electrónicos que recuerdan a los usuarios
actividades pendientes que no han respondido. De forma predeterminada,
esta plantilla está inhabilitada.
Por ejemplo, la plantilla proporciona este mensaje:
Asunto: Acción de flujo de trabajo pendiente:
caso 6167063972298972180.6167064647650050990
Se ha enviado la siguiente solicitud para obtener su aprobación
Ver cambios: http://localhost:9080/itim/console
Descripción: Flujo de trabajo de aprobación
Persona a la que se solicita: anil
Asunto: anil
Solicitud iniciada: 05 sep 2007 05:42:18 IST
Referencia del proceso: 6167063972298972180
Solicitada por el proceso:
ID de proceso: 6167052766519381908
Nombre de proceso: Suministrar cuenta
Descripción: Proceso de suministro de cuentas
Solicitante: Administrador del sistema
Persona a la que se solicita: anil
Asunto: anil
Este elemento de trabajo se intensificará en: Sábado, 8 de septiembre de 2007.
La sentencia del asunto es:
<originalSubject/>
El texto sin formato es:
<textBody/>
<RE key="escalation_note"/> <escalationTime/>
Visión general de las ampliaciones JavaScript
JavaScript se utiliza en IBM Tivoli Identity Manager para especificar políticas de
identidad, parámetros de política de suministro, políticas de selección de servicios,
reglas de colocación para las alimentaciones de identidades y adopción de cuentas
huérfanas.
Además, JavaScript se utiliza en los flujos de trabajo para especificar las
condiciones de transición, condiciones de bucle, actividades de JavaScript,
postscript de actividad y notificación de flujo de trabajo. IBM Tivoli Identity
Manager proporciona una variedad de ampliaciones de script para exponer los
servicios y datos útiles de cada uno de estos scripts. Además de estas
ampliaciones, los administradores del sistema pueden configurar IBM Tivoli
Identity Manager para cargar ampliaciones JavaScript personalizadas. Para obtener
información adicional acerca de las ampliaciones JavaScript personalizadas,
consulte la información del archivo ITIM_HOME/data/scriptframework.properties.
IBM Tivoli Identity Manager da soporte a dos intérpretes de scripts de Java: IBM
JSEngine y Free EcmaScript Interpreter (FESI, ahora en desuso). Ambos intérpretes
tienen soporte para la tercera edición (diciembre de 1999) de la especificación
ECMA-262.
La Tabla 6 en la página 39 enumera los componentes de host con soporte y las
ampliaciones de script.
38
Consulta
Tabla 6. Componentes de host y ampliaciones de script
Componente de host
Ampliación de script con soporte
Descripción
AccountTemplate
ProvisioningPolicyExtension
Los parámetros de la plantilla
predeterminada de cuenta cargan las
ampliaciones registradas por medio de
esta clave.
ServiceExtension
SubjectExtension
HostSelection
ServiceModelExtension
SubjectExtension
IdentityPolicy
IdentityPolicyExtension
AttributesExtension
Las políticas de selección de servicios
cargan las ampliaciones registradas por
medio de esta clave
Las políticas de identidad cargan las
ampliaciones registradas por medio de
esta clave.
ServiceExtension
SubjectExtension
OrphanAdoption
Paquete de ampliaciones de modelo
ServiceExtension
Los scripts de adopción cargan las
ampliaciones registradas por medio de
esta clave.
SubjectExtension
PersonPlacementRules
PersonPlacementRulesExtension
ServiceExtension
AttributesExtension
Las reglas de colocación cargan las
ampliaciones registradas por medio de
esta clave durante las alimentaciones de
identidades.
PostOffice
PostOfficeExtension
Las plantillas de oficina de correos
cargan las ampliaciones registradas por
medio de esta clave.
ProvisioningPolicy
ProvisioningPolicyExtension
Los parámetros de la política de
suministro cargan las ampliaciones
registradas por medio de esta clave.
Paquete de ampliaciones de modelo
ServiceExtension
SubjectExtension
AttributesExtension (en desuso)
Reminder
ReminderExtension
SubjectExtension
Workflow
WorkflowExtension
Paquete de ampliaciones de modelo
LoopCountExtension
Notificación de flujos de trabajo
WorkflowExtension
EmailContextExtension
Las plantillas de recordatorio por correo
electrónico cargan las ampliaciones
registradas por medio de esta clave.
Los scripts de flujo de trabajo que
incluyen las Notificaciones de tareas
pendientes de flujo de trabajo cargan
las ampliaciones registradas por medio
de esta clave.
Las ampliaciones cargadas están
codificadas internamente y se cargan
todas las ampliaciones con soporte.
PersonModelExtension
Notificación de tareas pendientes WorkflowExtension
(Approval/RFI/
Paquete de ampliaciones de modelo
ComplianceAlert/WorkOrder)
LoopCountExtension
Las ampliaciones cargadas son las
mismas que las de Workflow.
Ampliaciones empaquetadas
Esta sección describe las ampliaciones de script proporcionadas por IBM Tivoli
Identity Manager, los objetos JavaScript que ponen a disposición y los scripts a los
que se pueden aplicar estas ampliaciones en IBM Tivoli Identity Manager.
Consulta
39
Estas ampliaciones no se deben eliminar del archivo de propiedades que configura,
porque son necesarias para el funcionamiento estándar del producto. Todas las
ampliaciones están preconfiguradas para las nuevas instalaciones.
AttributesExtension
El nombre completo de la ampliación es
com.ibm.itim.script.extensions.AttributesExtension.
Esta ampliación es responsable de hacer disponible el objeto ATTRIBUTES para
scripts. ATTRIBUTES es un objeto de tipo correlación (Map) y se utiliza
internamente para implementar los métodos en desuso Enrole.getAttributeValue() y
Enrole.getAttributeValues().
AttributesExtension y el objeto de script ATTRIBUTES están en desuso y no se
deben utilizar en ningún script nuevo.
Disponibilidad
IdentityPolicy
PersonPlacementRules
ProvisioningPolicy
Objetos JavaScript
ATTRIBUTES
EmailContextExtension
El nombre completo de la ampliación es
com.ibm.itim.workflow.script.EmailContextExtension.
EmailContextExtension proporciona el objeto EmailContext que proporciona
información acerca de la actividad y proceso del flujo de trabajo que está
realizando la notificación. EmailContext es de tipo WorkflowRuntimeContext,
aunque puede ser un subtipo más específico, dependiendo de qué tipo de cambio
ha desencadenado la notificación.
Disponibilidad
Notification
Objetos JavaScript
EmailContext
EnroleExtension
El nombre completo de la ampliación es
com.ibm.itim.script.extensions.EnroleExtension.
Esta ampliación se carga automáticamente para todos los scripts y no aparece en el
archivo scriptframework.properties.
Esta ampliación pone a disposición el objeto Enrole para los scripts. Este objeto
proporciona varias funciones para convertir al formato de hora generalizada, y
desde este formato.
Disponibilidad
Todos los scripts
Objetos JavaScript
Enrole
40
Consulta
Error
IdentityPolicyExtension
El nombre completo de la ampliación es
com.ibm.itim.policy.script.IdentityPolicyExtension.
Esta ampliación pone a disposición el objeto IdentityPolicy para los scripts de
política de identidad. Este objeto proporciona un método para probar la existencia
de un ID de usuario.
Disponibilidad
Política de identidad
Objetos JavaScript
IdentityPolicy
LoopCountExtension
El nombre completo de la ampliación es
com.ibm.itim.workflow.script.LoopCountExtension.
Esta ampliación proporciona el objeto de script loopcount. El objeto es un entero
que le dice al script cuántas veces tiene que ejecutarse un bucle.
Disponibilidad
Workflow
Objetos JavaScript
loopcount
Paquete de ampliaciones de modelo
Las ampliaciones de modelo ponen a disposición objetos JavaScript que se pueden
utilizar para buscar personas, cuentas, servicios y unidades organizativas como
organizaciones, unidades del negocio y ubicaciones.
Importante: Los objetos expuestos por estas ampliaciones permiten el acceso a
datos de identidad y de servicio sin tener en cuenta las reglas de control de
accesos especificadas para estos datos. Los objetos deben considerarse
privilegiados. Los elementos de control de accesos deben definir el acceso de
gestión a los scripts de IBM Tivoli Identity Manager.
Todas las ampliaciones de modelo tienen la misma disponibilidad y se pueden
utilizar con los puntos de ampliación siguientes:
v AccountTemplate
v ProvisioningPolicy
v HostSelection
v OrphanAdoption
v Workflow
v Notification
AccountModelExtension:
El nombre completo de la ampliación es
com.ibm.itim.script.extensions.model.AccountModelExtension.
Consulta
41
La ampliación pone a disposición el constructor Account y el constructor
AccountSearch para los scripts aplicables. Una vez construido, un objeto Account
representa un objeto de directorio Account en scripts. El objeto AccountSearch
proporciona métodos para buscar cuentas existentes basadas en varios parámetros,
ID de usuario, propietario y servicio.
Objetos JavaScript
v AccountSearch
v Account
PersonModelExtension:
El nombre completo de la ampliación es
com.ibm.itim.script.extensions.model.PersonModelExtension.
La ampliación pone a disposición el constructor Person y el constructor
PersonSearch para los scripts aplicables. Una vez construido, un objeto Person
representa un objeto de directorio Person en scripts. El objeto PersonSearch
proporciona métodos para buscar personas existentes basadas en un filtro LDAP
proporcionado.
Objetos JavaScript
v PersonSearch
v Person
OrganizationModelExtension:
El nombre completo de la ampliación es
com.ibm.itim.script.extensions.model.OrganizationModelExtension.
Esta ampliación pone a disposición el constructor ContainerSearch para los scripts
aplicables. El objeto ContainerSearch proporciona métodos para buscar
contenedores organizativos basados en filtros LDAP.
Objetos JavaScript
ContainerSearch
RoleModelExtension:
El nombre completo de la ampliación es
com.ibm.itim.script.extensions.model.RoleModelExtension.
La ampliación pone a disposición el constructor Role y el constructor RoleSearch
para scripts aplicables. Una vez construido, el objeto Role representa un objeto de
directorio Role en scripts. El objeto RoleSearch proporciona un método para buscar
roles basados en el nombre de rol.
Objetos JavaScript
v RoleSearch
v Role
ServiceModelExtension:
El nombre completo de la ampliación es
com.ibm.itim.script.extensions.model.ServiceModelExtension.
42
Consulta
La ampliación pone a disposición el constructor Service y el constructor
ServiceSearch para scripts aplicables. Una vez construido, el objeto Service
representa un objeto de directorio Service en scripts. El objeto ServiceSearch
proporciona métodos para buscar servicios basándose en varios parámetros, filtro
LDAP y nombre del servicio.
Objetos JavaScript
v ServiceSearch
v Service
PersonPlacementRulesExtension
El nombre completo de la ampliación es
com.ibm.itim.remoteservices.script.PersonPlacementRulesExtension.
Esta ampliación proporciona el objeto entry para el entorno de scripts. El objeto
entry es de tipo correlación (Map) y contiene los valores de atributo para la
persona que se especifica.
Disponibilidad
PersonPlacementRules
Objetos JavaScript
entry
PostOfficeExtension
El nombre completo de la ampliación es
com.ibm.itim.mail.postoffice.script.PostOfficeExtension.
La función de la oficina de correos reduce el número de mensajes de correo
electrónico recibidos por los participantes de flujo de trabajo por medio de la
combinación de notificaciones parecidas en un único correo electrónico. Los correos
electrónicos se combinan por medio de una plantilla especificada en los paneles de
configuración del sistema. Esta ampliación pone a disposición un objeto JavaScript,
PostOffice, para los fragmentos de código JavaScript dentro de estas plantillas. Este
objeto proporciona métodos para acceder a los diferentes correos electrónicos, la
dirección de correo electrónico del destinatario, el tema del correo electrónico y los
datos del destinatario.
Disponibilidad
Plantilla de oficina de correos
Objetos JavaScript
PostOffice
ProvisioningPolicyExtension
El nombre completo de la ampliación es
com.ibm.itim.policy.script.ProvisioningPolicyExtension.
Esta ampliación proporciona los objetos de script reason y parameters para el
entorno de scripts. El objeto reason es un entero que permite a un script conocer el
motivo por el cual se está realizando la evaluación: 0 si es una cuenta nueva o 1 si
es una cuenta existente. El objeto parameters es una correlación (Map) que contiene
la información acerca de la cuenta que se está evaluando. Actualmente, sólo se
soporta el campo uid.
Disponibilidad
Consulta
43
AccountTemplate
ProvisioningPolicy
Objetos JavaScript
parameters
reason
ReminderExtension
El nombre completo de la ampliación es
com.ibm.itim.script.extensions.ReminderExtension.
Esta ampliación pone a disposición el objeto reminderCtx para los fragmentos de
código JavaScript contenidos en los recordatorios de correo electrónico. Este objeto
proporciona métodos para acceder al texto y el asunto del correo electrónico
original junto con la fecha y hora de vencimiento de la tarea pendiente asociada.
Disponibilidad
Recordatorios de correo electrónico
Objetos JavaScript
reminderCtx
ServiceExtension
El nombre completo de la ampliación es
com.ibm.itim.script.extensions.ServiceExtension.
Esta ampliación exporta el objeto service para el entorno de scripts. El objeto
service es de tipo DirectoryObject y representa el servicio asociado a una operación
de suministro.
Disponibilidad
IdentityPolicy
OrphanAdoption
PersonPlacementRules
AccountTemplate
ProvisioningPolicy
Objetos JavaScript
service
SubjectExtension
El nombre completo de la ampliación es
com.ibm.itim.script.extensions.SubjectExtension.
Esta ampliación proporciona el objeto de script subject. En todos los contextos de
scripts excepto para OrphanAdoption, subject es de tipo DirectoryObject. En el
contexto de OrphanAdoption, subject es una correlación (Map) de los atributos
devueltos por una conciliación.
Disponibilidad
HostSelection
IdentityPolicy
OrphanAdoption
Reminder
AccountTemplate
ProvisioningPolicy
44
Consulta
Objetos JavaScript
subject
WorkflowExtension
El nombre completo de la ampliación es
com.ibm.itim.workflow.script.WorkflowExtension.
Esta ampliación pone a disposición los objetos JavaScript que se pueden utilizar
para acceder a datos desde un proceso de flujo de trabajo en curso. Además, pone
a disposición objetos que se pueden utilizar para obtener o establecer el estado y el
resultado de una actividad o proceso de flujo de trabajo.
Disponibilidad
Workflows
Objetos JavaScript
v process
v activity
v participant
v Datos relevantes
Nota: Los datos relevantes son objetos definidos por el diseñador de
flujos de trabajo. Compruebe con el administrador del sistema los
nombres de objetos de datos relevantes específicos.
Objetos de datos relevantes de JavaScript:
Cada proceso dispone de un conjunto de datos relevantes o parámetros específicos
del proceso, que pueden leerse o cambiarse desde un script de flujo de trabajo.
El nombre y la sintaxis de estos parámetros, o los elementos de datos relevantes, se
definen en el diseñador de flujos de trabajo y normalmente son específicos para el
proceso del flujo de trabajo. Por ejemplo, al añadir un usuario, un objeto que
contiene todos los atributos del nuevo usuario puede ser un elemento de datos
relevantes. Sin embargo, cuando se suprime un usuario, el único elemento de datos
relevantes necesario puede ser el nombre distinguido de un usuario que debe
suprimirse.
Cada elemento de datos relevantes se representará en el script de flujo de trabajo
como una variable, con el mismo ID de datos relevantes definido en el diseñador
de flujos de trabajo. Estos elementos de datos relevantes tendrán las funciones
siguientes.
get()
Esta función devuelve un objeto JavaScript que representa el valor del
elemento de datos relevantes. Aunque existe una variable presente para
cada elemento de datos relevantes en el contexto del script, por motivos de
rendimiento los valores no se recuperan del motor de flujo de trabajo hasta
que el script lo solicita explícitamente, mediante esta llamada. El objeto
JavaScript devuelto tendrá la misma sintaxis que se ha definido en el
diseñador de flujos de trabajo.
Uso:
dn = subjectDN.get();
Donde subjectDN está definido como elemento de datos relevantes para el
proceso actual.
Consulta
45
set(Object value)
La función set(Object value) cambia el valor del elemento de datos
relevantes. Actualiza el elemento de datos relevantes no sólo en el script,
sino también en el motor de flujo de trabajo. El nuevo valor es un
parámetro para la función. El nuevo valor debe ser compatible con la
sintaxis del elemento de datos relevantes definida en el diseñador de flujos
de trabajo. Por ejemplo, si el elemento de datos relevantes es un entero, el
valor ″cat″ no podrá ser un parámetro válido para esta función.
Uso:
ou.set("engineering");
Donde ou está definido como un elemento de datos relevantes para el
proceso actual.
Registro de ampliaciones JavaScript
Es posible que las ampliaciones JavaScript no sean útiles o no resulten de
aplicación para cada función de script de IBM Tivoli Identity Manager.
Por ejemplo, una ampliación utilizada por las plantillas de oficina de correos
puede no ser aplicable en los parámetros de Política de suministro. Una ampliación
diseñada para una clase de script podría no cargarse o comportarse correctamente
cuando se carga en otro tipo de script.
IBM Tivoli Identity Manager tiene las clases de script que se enumeran en la
Tabla 7 en la página 47. Las ampliaciones JavaScript se pueden registrar para
cargarse y ejecutarse con cualquier combinación de estas clases de script.
Las ampliaciones JavaScript están configuradas en estos archivos:
scriptframework.properties (recomendado)
Para todas las ampliaciones nuevas. Utilice este archivo para configurar las
ampliaciones de script y otras funciones de scripts.
Las ampliaciones JavaScript están registradas en el archivo
ITIM_HOME/data/scriptframework.properties. Este archivo tiene el
formato estándar de propiedades de Java clave[.subclave]=valor, donde
la clave es el nombre asignado a la clase de script de destino, descrito en la
Tabla 7 en la página 47 y el valor es el nombre completo de clase de la
interfaz ScriptExtension. La subclave opcional se utiliza cuando se registra
más de una ampliación para una clase de script.
Nota:
1. IBM Tivoli Identity Manager se instala con un conjunto de ampliaciones
para cada clase de script ya registrado en el archivo
scriptframework.properties. No las elimine del archivo, ya que son
necesarias para que el producto funcione correctamente.
2. Para evitar la posibilidad de un ataque por inyección de código, no
utilice la función de JavaScript eval().
fesiextensions.properties (en desuso)
Proporciona soporte para las ampliaciones JavaScript Free EcmaScript
Interpreter (FESI) para versiones anteriores a la 5.0 de IBM Tivoli Identity
Manager. No cree nuevas ampliaciones utilizando esta arquitectura en
desuso.
46
Consulta
Si continua utilizando el archivo en desuso fesiextensions.properties,
guarde la biblioteca fesi.jar en el directorio ITIM_HOME/lib antes de
actualizar a la versión 5 de IBM Tivoli Identity Manager. Reemplace el
archivo nuevo instalado por el archivo personalizado fesi.jar después de
que se haya completado la actualización.
La línea siguiente registra una ampliación única para utilizar en los scripts de IBM
Tivoli Identity Manager:
ITIM.extension.IdentityPolicy=com.ibm.itim.policy.script.IdentityPolicyExtension
Estas líneas de ejemplo registran varias ampliaciones para utilizar en los scripts de
IBM Tivoli Identity Manager:
ITIM.extension.IdentityPolicy.1=com.ibm.itim.policy.script.IdentityPolicyExtension
ITIM.extension.IdentityPolicy.2=com.yourcompany.script.YourCustomExtension
Tabla 7. Claves de clase de script
Componente de host
Clave de clase de script
AccountTemplate
ITIM.extension.AccountTemplate
HostSelection
ITIM.extension.HostSelection
IdentityPolicy
ITIM.extension.IdentityPolicy
OrphanAdoption
ITIM.extension.OrphanAdoption
PersonPlacementRules
ITIM.extension.PersonPlacementRules
PostOffice
ITIM.extension.PostOffice
ProvisioningPolicy
ITIM.extension.ProvisioningPolicy
Reminder
ITIM.extension.Reminder
Workflow
ITIM.extension.Workflow
Notificación de flujos de trabajo
ITIM.extension.Notification
Notificación de tareas pendientes
(Approval/RFI/ComplianceAlert/
WorkOrder)
ITIM.extension.Notification
Configuración de scriptframework.properties
Utilice el archivo ITIM_HOME/data/scriptframework.properties, el cual
proporciona documentación ampliada para estas tareas, para configurar las
principales funciones de scripts.
Las funciones principales de scripts son:
Ampliaciones
Especifica las ampliaciones a cargar para cada componente de host. Para
cargar más de una única ampliación para cualquier componente de host
dado, agregue un sufijo a la clave de propiedades (cada clave debe ser
única). Por ejemplo:
ITIM.extension.IdentityPolicy=com.ibm.itim.policy.script.IdentityPolicyExtension
ITIM.extension.IdentityPolicy.service=com.ibm.itim.script.extensions.ServiceExtension
Intérpretes
Configura el intérprete a utilizar para cada componente de host. El valor
predeterminado es IBM JSEngine. La otra opción es FESI, que sólo se
puede utilizar si el archivo fesi.jar existe en ITIM_HOME/lib/ y sólo se
debe utilizar por clientes de la versión 4.6 de IBM Tivoli Identity Manager
y anteriores que escribieron sus propias ampliaciones personalizadas FESI.
Consulta
47
Derivadores
Todos los objetos disponibles para scripts son objetos Java reales, utilizados
por IBM Tivoli Identity Manager. Para evitar problemas de seguridad, IBM
Tivoli Identity Manager deriva estos objetos en derivadores. Utilice esta
sección del archivo scriptframework.properties para cambiar los
derivadores predeterminados utilizados por IBM Tivoli Identity Manager.
Los scripts predeterminados proporcionados por IBM Tivoli Identity
Manager, presuponen el uso de derivadores predeterminados, por lo que
realizar cambios puede causar que las funciones dejen de trabajar. Esta
sección sólo es para usuarios avanzados.
Varios Determina si la información de perfil se recoge e incluye en el registro
cronológico de rastreo y si se puede acceder a las contraseñas de texto sin
formato desde los objetos Person y Account.
Migración de ampliaciones FESI personalizadas en IBM
JSEngine
La migración de una ampliación FESI personalizada en una ampliación de script
hace que el código sea más corto, fácil de leer y entendible.
Para obtener información detallada y ejemplos acerca de cómo escribir
ampliaciones nuevas, consulte la documentación que está instalada en
ITIM_HOME/extensions/doc/javascript/javascript.html.
El ejemplo siguiente muestra los pasos de migración.
Método recomendado para manejar retornos de funciones
Un método recomendado puede minimizar los problemas que se puedan producir
debido a que existen diferencias en la forma en que FESI e IBM JSEngine manejan
JavaScript, e implica valores de retorno implícitos de funciones.
Por ejemplo, dadas estas sentencias:
function sumValue() {
var a = 3;
var b = 2;
a + b;
}
Con FESI, la función sumValue() devuelve 5 porque 5 es el resultado de la última
ejecución de la sentencia en la función. Con IBM JSEngine, la expresión sumValue()
devolverá null (nulo) porque no hay un retorno explícito. El código correcto para
IBM JSEngine incluye una sentencia de retorno explícita:
function sumValue() {
var a = 3;
var b = 2;
return a + b;
}
Para mantener el código JavaScript coherente, el método recomendado es utilizar
siempre un valor de retorno explícito en funciones. En el release anterior de Tivoli
Identity Manager, algunos de los ejemplos de script de selección de servicios no
utilizaban un valor de retorno explícito. Cualquier código JavaScript basado en
estos ejemplos debe actualizarse de forma que contenga un valor de retorno
explícito, para garantizar que el código siga funcionando después de una
actualización para utilizar IBM JSEngine.
48
Consulta
Ejemplo de POJO (Plain Old Java Object)
Empiece con un Plain Old Java Object (POJO, en este ejemplo) que contenga toda
la lógica empresarial para su ampliación.
Por ejemplo:
public class Extension {
public static void log(String msg) {
System.out.println(msg);
}
}
En este caso, el POJO contiene un único método. Una ampliación típica contendrá
mucha más lógica. Por ejemplo:
static class FESIExtension implements JSExtension {
public void initializeExtension(JSGlobalObject go) throws JSException {
// Create the prototype
final JSObject prototype = go.makeJSObject();
prototype.setMember("log", new JSFunctionAdapter() {
public Object doCall(JSObject thisObject, Object[] args)
throws JSException {
if (args.length >= 1) {
Extension.log(args[0].toString());
}
return null;
}
});
final JSObject obj = go.makeJSObject(prototype);
// This is the name of the object to be used in JavaScript Code
go.setMember("CustomExtension", obj);
go.setMember("log", new JSFunctionAdapter() {
public Object doCall(JSObject thisObject, Object[] args)
throws JSException {
if (args.length >= 1) {
Extension.log(args[0].toString());
}
return null;
}
});
go.setMember("Logger", new JSFunctionAdapter() {
public Object doNew(JSObject thisObject, Object[] args)
throws JSException {
JSGlobalObject go = thisObject.getGlobalObject();
JSObject proto = go.makeJSObject();
proto.setMember("log", new JSFunctionAdapter() {
public Object doCall(JSObject thisObject, Object[] args)
throws JSException {
if (args.length >= 1) {
Extension.log(args[0].toString());
}
return null;
}
});
final JSObject obj = go.makeJSObject(proto);
return obj;
Consulta
49
}
});
}
}
Esta ampliación FESI tiene tres partes principales:
1. Primero, la ampliación crea un objeto JSObject denominado prototype y agrega
el método ″log″ a prototype:
final JSObject prototype = go.makeJSObject();
prototype.setMember("log", new JSFunctionAdapter() {
public Object doCall(JSObject thisObject, Object[] args)
throws JSException {
if (args.length >= 1) {
Extension.log(args[0].toString());
}
return null;
}
});
go.setMember("CustomExtension", obj);
El objeto JSObject prototype se añade a continuación a JSGlobalObject con el
nombre ″CustomExtension.″ Esto permite a los scripts llamar:
CustomExtension.log("message");
2. La segunda parte de la ampliación crea una función global denominada ″log″.
go.setMember("log", new JSFunctionAdapter() {
public Object doCall(JSObject thisObject, Object[] args)
throws JSException {
if (args.length >= 1) {
Extension.log(args[0].toString());
}
return null;
}
});
Ahora, un script puede simplemente llamar:
log("message");
3. La tercera parte de la ampliación crea un constructor que se puede llamar
desde los scripts. Por ejemplo:
go.setMember("Logger", new JSFunctionAdapter() {
public Object doNew(JSObject thisObject, Object[] args)
throws JSException {
JSGlobalObject go = thisObject.getGlobalObject();
JSObject proto = go.makeJSObject();
proto.setMember("log", new JSFunctionAdapter() {
public Object doCall(JSObject thisObject, Object[] args)
throws JSException {
if (args.length >= 1) {
Extension.log(args[0].toString());
}
return null;
}
});
final JSObject obj = go.makeJSObject(proto);
return obj;
}
});
Esto permite a los scripts hacer lo siguiente:
50
Consulta
var logger = new Logger();
logger.log("message");
Conversión a una ampliación de script
Cuando convierte una ampliación FESI a una ampliación de script, la raíz de una
ampliación de script es la interfaz ScriptExtension.
Debe implementar esta interfaz para crear una ampliación de script nueva.
public class ITIMExtension implements ScriptExtension {
public List getContextItems() {
}
public void initialize(ScriptInterface si, ScriptContextDAO dao)
throws ScriptException, IllegalArgumentException {
}
}
Para crear un objeto nuevo que se pueda utilizar en scripts, cree una clase POJO
que contenga toda la lógica empresarial e implemente la interfaz de marcador
ExtensionBean. (Una interfaz de marcador significa que ExtensionBean no precisa
que se le implemente ningún método y agrega cualquier dato nuevo a su clase).
Un POJO que implementa ExtensionBean tiene un trato especial por parte de los
componentes de scripts de IBM Tivoli Identity Manager.
Si su clase no implementa ExtensionBean, los scripts no podrán utilizar los
métodos proporcionados por POJO. Por ejemplo:
public class Extension implements ExtensionBean {
public static void log(String msg) {
System.out.println(msg);
}
}
En el método de inicialización de su ampliación, cree un ContextItem nuevo que
contenga una instancia de su ampliación y agregue este ContextItem a una lista
(List).
ContextItem custom = ContextItem.createItem("CustomExtension",
new Extension());
items.add(custom);
Para crear una función nueva global, utilizará de nuevo ContextItem, pero esta vez
llamará a createGlobalFunction. Por ejemplo:
ContextItem func = ContextItem.createGlobalFunction("log",
new GlobalFunction() {
public Object call(Object[] parameters)
throws ScriptEvaluationException {
if (parameters.length >= 1) {
Extension.log(parameters[0].toString());
}
return null;
}
});
items.add(func);
El segundo argumento para createGlobalFunction es un objeto GlobalFunction.
GlobalFunction tiene un único método que debe implementar y llamar y es muy
parecido al método doCall de JSFunctionAdapter de FESI. GlobalFunctions no se
recomienda porque, como el método doCall, pasan una matriz de parámetros.
Debe comprobar que todos los parámetros existen y que son del tipo correcto, lo
que puede ser difícil de mantener durante el ciclo de vida de su ampliación.
Consulta
51
Creación de un constructor nuevo
Para crear un constructor nuevo, utilice de nuevo ContextItem y el método
createConstructor.
Por ejemplo:
ContextItem logger = ContextItem.createConstructor("Logger",
Extension.class);
items.add(logger);
El segundo parámetro de createConstructor es el objeto Class para el objeto que
quiere construir. Normalmente es un objeto POJO que implementa ExtensionBean.
En cada uno de estos ejemplos, se agrega el ContextItem a una lista (List). En el
método getContextItems de ScriptExtension, debe devolver dicha lista. Por
ejemplo, el código completo es:
public class ITIMExtension implements ScriptExtension {
private List<ContextItem> items;
public List getContextItems() {
return items;
}
public void initialize(ScriptInterface si, ScriptContextDAO dao)
throws ScriptException, IllegalArgumentException {
items = new ArrayList<ContextItem>();
ContextItem custom = ContextItem.createItem("CustomExtension",
new Extension());
items.add(custom);
ContextItem func = ContextItem.createGlobalFunction("log",
new GlobalFunction() {
public Object call(Object[] parameters)
throws ScriptEvaluationException {
if (parameters.length >= 1) {
Extension.log(parameters[0].toString());
}
return null;
}
});
items.add(func);
ContextItem logger = ContextItem.createConstructor("Logger",
Extension.class);
items.add(logger);
}
}
Descarga y utilización de fesi.jar desde un origen que no es
de IBM
Si quiere utilizar FESI, pero no tiene las bibliotecas necesarias, siga estos pasos
para descargar y habilitar las bibliotecas.
Si actualiza desde la versión 4.6 de IBM Tivoli Identity Manager, no es necesario
que siga estos pasos, porque la versión correcta de la biblioteca de FESI se
mantiene durante la actualización.
1. Primero, descargue la versión 1.1.8 de FESI (en el momento de escribir estos
pasos, la última versión es la 1.1.8) desde http://www.lugrin.ch/fesi/.
52
Consulta
a. Siga el enlace para descargar la versión actual, que mostrará la página de
licencia. Acepte la licencia para continuar.
b. Acceda a la página de descarga y descargue el archivo install-fesi-1.1.8.jar.
2. Después de que se haya descargado el archivo correctamente, lance el
instalador escribiendo este mandato en la línea de mandatos:
java –jar install-fesi-1.1.8.jar
a. Siga los pasos restantes que el instalador proporciona para instalar FESI.
Debido a que IBM Tivoli Identity Manager sólo necesita un archivo jar de la
instalación, puede instalar FESI en una ubicación temporal que puede
suprimir posteriormente.
b. Una vez que haya finalizado la instalación, acceda a $FESI_INSTALL_DIR/
lib y localice el archivo fesi.jar.
c. Copie el archivo fesi.jar en el directorio ITIM_HOME/lib.
3. Especifique dónde IBM Tivoli Identity Manager accede a fesi.jar.
a. Inicie sesión en la Consola administrativa de WebSphere Application Server,
que está normalmente en http://nombre_host:9060/ibm/console, donde
nombre_host es específico para su sistema.
b. Acceda a Entorno > Bibliotecas compartidas > ITIM_LIB.
c. Al final del recuadro de texto Classpath, agregue la línea
${ITIM_HOME}/lib/fesi.jar.
4. Reinicie WebSphere Application Server para aplicar los cambios.
5. Edite el archivo scriptframework.properties para utilizar el intérprete de FESI.
Cuando utiliza FESI, la infraestructura del script busca el archivo
fesiextensions.properties para determinar las ampliaciones FESI a cargar. Si no
existe este archivo, se escribirá un mensaje en el archivo trace.log para cada
script que FESI ejecuta.
Consulta de ampliaciones JavaScript
La sección de consulta está ordenada alfabéticamente.
Hay algunos objetos específicos de IBM Tivoli Identity Manager disponibles para
su utilización. IBM Tivoli Identity Manager utiliza las ampliaciones JavaScript para
empaquetar las API y los objetos JavaScript. Una ampliación también puede ser un
paquete de otras ampliaciones (por ejemplo, ModelExtension). Después de definir
una ampliación, se puede registrar en el archivo ITIM_HOME/data/
scriptframework.properties que se utilizará en un contexto específico de JavaScript.
En algunos casos, se tiene que crear un entorno para una ampliación.
La Tabla 8 muestra estas ampliaciones de script.
Tabla 8. Ampliaciones de script
Ampliación de script
Nombre de objeto
Tipo de objeto
AttributesExtension (en desuso)
ATTRIBUTES
Map
EmailContextExtension
EmailContext
EmailContext
EnroleExtension
Enrole
Enrole
Error
error
IdentityPolicyExtension
IdentityPolicy
IdentityPolicy
LoopCountExtension
loopcount
int
Consulta
53
Tabla 8. Ampliaciones de script (continuación)
Ampliación de script
Nombre de objeto
Tipo de objeto
PersonPlacementRulesExtension
entry
Map
PostOfficeExtension
PostOffice
PostOffice
ProvisioningPolicyExtension
parameters
reason
Map
int (0: cuenta nueva, 1: cuenta existente)
AccountModelExtension
Constructor Account
Constructor AccountSearch
Account
AccountSearch
OrganizationModelExtension
Constructor ContainerSearch
ContainerSearch
PersonModelExtension
Constructor Person
Constructor PersonSearch
Person
PersonSearch
RoleModelExtension
Constructor Role
Constructor RoleSearch
Role
RoleSearch
ServiceModelExtension
Constructor Service
ServiceSearch
Service
ServiceSearch
ReminderExtension
reminderCtx
Reminder
ServiceExtension
service
DirectoryObject
SubjectExtension
subject
Person
Nota: Para JavaScript de regla de adopción
de cuentas huérfanas, subject es una
correlación (Map) que contiene los atributos
de cuenta devueltos de la conciliación. A las
entradas en la correlación se les hace
referencia por el nombre de los atributos de
cuenta, que pueden variar basándose en el
tipo de servicio.
WorkflowExtension
process
activity
Participant constructor
ParticipantType
$RelevantDataName
Process
Activity
Participant
ParticipantType
ProcessData
Búsqueda de métodos y propiedades para un objeto específico
de JavaScript
Este ejemplo muestra cómo buscar métodos y propiedades para un objeto
JavaScript específico.
Si está escribiendo un script de flujo de trabajo, consulte el archivo
scriptframework.properties para ver las ampliaciones disponibles. De forma
predeterminada, el flujo de trabajo carga las ampliaciones de modelo,
WorkflowExtension y LoopCountExtension.
Observe en la Tabla 8 en la página 53 que WorkflowExtension define los objetos de
scripts que incluyen process, activity, un constructor Participant, un objeto
denominado ParticipantType y una serie de piezas de datos específicas del flujo de
trabajo.
En otra columna de la tabla, observe que el objeto process es de tipo Process.
Ahora, localice Process en esta consulta para ver que el tipo Process tiene una
propiedad denominada name y un método denominado getParent().
54
Consulta
Para entender cómo utilizar correlaciones, tenga en cuenta que los objetos, como
parameters de ProvisioningPolicyExtension, son de tipo correlación (Map). Una
correlación, también conocida como un diccionario, es un objeto JavaScript con
nombre que puede albergar muchos otros objetos a los que se puede acceder por el
nombre. El objeto parameters alberga otro objeto denominado uid. Para acceder a
parameters, puede escribir parameters.uid[0]. (En este caso uid es una matriz, por
lo que debe escribir [0] para obtener el primer elemento de la matriz). Los valores
que una correlación contiene variarán en cada correlación. Para obtener más
información, localice la correlación específica en la consulta de JavaScript.
Cómo leer las páginas de consulta
En esta sección se explica la estructura de cada elemento de consulta.
Título y descripción
Cada entrada de consulta empieza con un título y una descripción de una
línea. Las entradas están en orden alfabético, según su título. La
descripción de una línea ofrece un rápido resumen del elemento al que se
refiere la entrada.
Disponibilidad
Las ampliaciones JavaScript de IBM Tivoli Identity Manager han cambiado
a lo largo del tiempo. A menos que se indique lo contrario, todo aquello
que esté disponible en una versión de las ampliaciones JavaScript de IBM
Tivoli Identity Manager también está disponible en las versiones
posteriores. En esta sección también se especifica si un elemento existente
se ha mejorado con una versión posterior de las ampliaciones y cuándo un
elemento pasa estar en desuso. No hay soporte para los elementos en
desuso y podrán ser eliminados de futuras versiones de las ampliaciones
de IBM Tivoli Identity Manager. Los elementos en desuso no se deben
utilizar en el nuevo código JavaScript de IBM Tivoli Identity Manager.
Suministrado por
En la instalación, IBM Tivoli Identity Manager proporciona este conjunto
inicial de ampliaciones registradas:
v EnroleExtension
v ProvisioningPolicyExtension
v PostOfficeExtension
v IdentityPolicyExtension
v PersonPlacementRulesExtension
v WorkflowExtension
v ReminderExtension
v ServiceExtension
v SubjectExtension
v
v
v
v
AttributesExtension
LoopCountExtension
EmailContextExtension
Paquete de ampliaciones de modelo
Hereda de
Las clases JavaScript pueden heredar propiedades y métodos de otras
clases. Cuando sucede esto, aparece una sección Hereda de en la entrada
de consulta. Los métodos y campos heredados se encontrarán en las
superclases de la lista. Por ejemplo, el objeto subject hereda todos sus
campos y propiedades de la clase DirectoryObject.
Consulta
55
Sinopsis
Esta sección es una sinopsis de cómo utilizar el objeto, método, propiedad
o función.
Argumentos
Si la página de consulta describe una función o método que tiene
argumentos, la sinopsis estará seguida de la subsección
Argumentos, que describe los argumentos de la función o método.
En el caso de algunos objetos, la sección Sinopsis se sustituye por
la sección Constructor, seguida también de la subsección
Argumentos.
Devuelve
Si una función o método tiene un valor de retorno, la subsección
Argumentos estará seguida por una subsección Devuelve, que
explica el valor de retorno de la función, método o constructor.
Propiedades
Si en la página de consulta se habla de un objeto, en la sección
Propiedades aparecerán las propiedades a las que da soporte el objeto y se
proporcionarán breves explicaciones de cada una.
Métodos
La página de consulta de un objeto que define métodos incluye una
sección Métodos.
Descripción
La mayoría de las entidades de consulta contienen una sección
Descripción, que consiste en una descripción básica de todo lo que está
documentado. En el caso de algunos métodos muy simples, las secciones
Argumentos y Devuelve ofrecen una explicación suficiente del método, por
lo que se omite la sección Descripción.
Uso
En esta sección se describen técnicas comunes para utilizar el elemento, o
se ofrece información que se debe tener en cuenta.
Ampliaciones JavaScript
IBM Tivoli Identity Manager proporciona objetos JavaScript predefinidos para
utilizarlos en el entorno de JavaScript.
En esta sección se describen estos objetos y su uso.
Account
Cuenta asociada a una operación de suministro.
Disponibilidad
Tivoli Identity Manager 4.x
Hereda de
DirectoryObject
Suministrado por
com.ibm.itim.script.extensions.model.AccountModelExtension
Constructor
new Account(dn)
Devuelve
El objeto Account recién creado que representa la cuenta con el DN
dado, el cual es una cadena.
56
Consulta
Descripción
El objeto Account está disponible en el contexto de una política de
suministro y plantilla de cuenta.
AccountSearch
Busca una cuenta.
Disponibilidad
Tivoli Identity Manager 4.x
Suministrado por
com.ibm.itim.script.extensions.model.AccountModelExtension
Constructor
new AccountSearch()
Devuelve
El objeto de búsqueda de cuenta recién creado e inicializado.
Métodos
searchByOwner()
Busca una cuenta según el propietario.
searchByUid()
Busca una cuenta por ID de usuario.
searchByUidAndService()
Busca una cuenta por ID de usuario y servicio.
Descripción
La entidad implementa la clase AccountSearch de IBM Tivoli
Identity Manager.
AccountSearch.searchByOwner()
Busca una entidad de cuenta según el nombre distinguido del propietario.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
AccountSearch.searchByOwner(personDN)
Argumentos
personDN
Cadena que representa el nombre distinguido del
propietario de la cuenta.
Descripción
Dado el nombre distinguido de la persona, busca las entidades de cuenta
que son propiedad de la persona. Esta función devolverá null (nulo) si no
se encuentra la persona.
Uso
var account = (new AccountSearch()).searchByOwner(person.dn);
if (account!=null) {
Enrole.log("script", "Found " + account.length + " accounts");}
AccountSearch.searchByUid()
Busca una entidad de cuenta según el ID de usuario y el nombre distinguido de
un servicio.
Consulta
57
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
AccountSearch.searchByUid(uid, serviceDN)
Argumentos
uid
Cadena que representa el ID de usuario de la cuenta.
serviceDN
Cadena que representa el nombre distinguido de la cuenta.
Descripción
Dado el ID de usuario de la cuenta y el nombre distinguido del servicio,
busca la entidad de cuenta. Esta función devolverá null (nulo) si no hay
una cuenta que coincida exactamente, o si no se encuentra el servicio.
Uso
var account = (new AccountSearch()).searchByUid("pallen",
service.dn);
if (account!=null) {
Enrole.log("script", "Found account pallen");
}
AccountSearch.searchByUidAndService()
Busca una entidad de cuenta según el ID de usuario y el nombre de servicio.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
AccountSearch.searchByUidAndService(uid, serviceName)
Argumentos
uid
Cadena que representa el ID de usuario de la cuenta.
serviceName
Cadena que representa el nombre del servicio.
Descripción
Dado el ID de usuario de la cuenta y el nombre del servicio, busca la
entidad de cuenta. Esta función devolverá null (nulo) si no hay una cuenta
que coincida exactamente, o si hay más de un servicio con el nombre
especificado.
Uso
var account = (new AccountSearch()).searchByUidAndService
("pallen", "NT Domain Controller");
if (account!=null) {
Enrole.log("script", "Found account pallen"); }
Activity
Se utiliza para hacer referencia a cualquier actividad en un flujo de trabajo de IBM
Tivoli Identity Manager.
Disponibilidad
Tivoli Identity Manager 4.x
Suministrado por
El objeto JavaScript Activity en WorkflowExtension devuelve un objeto
Activity que representa la actividad del flujo de trabajo actual que se
puede utilizar en el contexto de un postscript de actividad de flujo de
58
Consulta
trabajo o en un script de transición, para hacer referencia a la actividad
actual. Para un script de transición, este objeto representará la actividad
cuya finalización ha desencadenado la evaluación del script de transición.
Process.getActivity() puede devolver cualquier objeto Activity en el
contexto de un proceso de flujo de trabajo. Para obtener más información,
consulte la descripción de este método.
Código de resumen de resultados de actividad
APPROVED
Código de resumen de un proceso aprobado. El código de
resultado es AA.
ESCALATED
Código de resumen de un proceso intensificado. El código de
resultado es ES.
FAILED
Código de resumen de un proceso erróneo. El código de resultado
es SF.
PARTICIPANT_RESOLVE_FAILED
Código de resumen de un proceso erróneo resuelto por el
participante. El código de resultado es PF.
PENDING
Código de resumen de un proceso pendiente. El código de
resultado es PE.
REJECTED
Código de resumen de un proceso rechazado. El código de
resultado es AR.
SUBMITTED
Código de resumen de un proceso enviado. El código de resultado
es RS.
SUCCESS
Código de resumen de un proceso correcto. El código de resultado
es SS.
TIMEOUT
Código de resumen de un proceso que ha excedido el tiempo de
espera. El código de resultado es ST.
WARNING
Código de resumen de un proceso de aviso. El código de resultado
es SW.
Propiedades
description
Describe la finalidad de la actividad especificada cuando se definió
en el diseñador de flujos de trabajo.
id
Asignado por el diseñador de flujos de trabajo para identificar de
forma exclusiva la actividad de flujo de trabajo del motor de flujo
de trabajo.
index
Índice de la instancia de la actividad.
name
Etiqueta que se otorga a esta actividad cuando se define en el
diseñador de flujos de trabajo.
Consulta
59
participant
Participante de la actividad, según se define en el diseñador de
flujos de trabajo.
resultDetail
Una cadena específica de la aplicación que proporciona más
detalles sobre el resultado de la actividad.
resultSummary
Una cadena específica de la aplicación que representa el resultado
de resumen de la actividad.
started
Indica cuándo se inició la actividad.
state
Código que representa el estado actual de la actividad.
subtype
Código que categoriza la actividad más allá del tipo de la
actividad, como por ejemplo, la aprobación o solicitud de
información.
type
Código que categoriza la actividad especificada cuando se define
en el diseñador de flujos de trabajo, como por ejemplo, manual o
aplicación.
Métodos
auditEvent()
Crea un suceso en el seguimiento de auditoría específico para la
actividad.
setResult()
Cambia el miembro de resultado de la actividad en la actividad
actual.
Descripción
Esta entidad representa la actividad de flujo de trabajo actual que se está
ejecutando. Dentro del contexto de un script de transición de flujo de
trabajo, esta entidad representará la actividad cuya finalización ha
desencadenado la evaluación del script de transición. No hay ningún
constructor disponible para crear este objeto en ningún contexto de IBM
Tivoli Identity Manager.
Activity.auditEvent()
Crea un suceso en el seguimiento de auditoría.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
activity.auditEvent(event)
Argumentos
event
Cadena que representa el suceso que se auditará.
Descripción
Este método creará un suceso en el seguimiento de auditoría específico
para la actividad. La función acepta un parámetro que puede ser cualquier
objeto JavaScript que pueda convertirse en una cadena para su
almacenamiento. En el seguimiento de auditoría, se agregará
automáticamente una indicación de fecha y hora al suceso.
60
Consulta
Uso
activity.auditEvent("Task completed");
Activity.description
Finalidad de la actividad.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
activity.description
Descripción
Este campo de sólo lectura es una cadena que describe la finalidad de la
actividad especificada cuando se definió en el diseñador de flujos de
trabajo.
Uso
x = activity.description;
Activity.id
Identificador exclusivo asignado a la actividad.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
activity.id
Descripción
Este campo de sólo lectura es una cadena asignada por el diseñador de
flujos de trabajo para identificar de forma exclusiva la actividad de flujo de
trabajo del motor de flujo de trabajo.
Uso
x = activity.id;
Activity.index
Índice de la instancia de la actividad.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
activity.index
Descripción
Este campo de sólo lectura es un número. Si hay más de una instancia de
esta actividad, como por ejemplo, en el caso en que se llame varias veces a
la actividad del ID especificado dentro de un bucle del proceso de flujo de
trabajo, el valor empezará en uno. Si sólo hay una instancia de esta
actividad, el valor index será cero.
Uso
x = activity.index;
Activity.name
Etiqueta asignada a la actividad.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
activity.name
Descripción
Este campo de sólo lectura es una cadena asignada por el flujo de trabajo
para etiquetar esta actividad.
Consulta
61
Uso
x = activity.name;
Activity.participant
Participante de la actividad.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
activity.participant
Descripción
Este campo de sólo lectura es un participante que representa al
participante de la actividad. No todas las actividades tienen un
participante. Si no hay ningún participante asociado con la actividad, este
miembro está vacío.
Uso
x = activity.participant;
Activity.resultDetail
Información detallada acerca del resultado de la actividad.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
activity.resultDetail
Descripción
Este campo de sólo lectura es una cadena específica de la aplicación que
proporciona más información sobre el resultado de la actividad.
Uso
x = activity.resultDetail;
Activity.resultSummary
Resumen del resultado de la actividad.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
activity.resultSummary
Resumen
Este campo de sólo lectura es una cadena específica de la aplicación que
proporciona un resumen del resultado de la actividad. Puede representar
un resultado correcto o erróneo.
Uso
x = activity.resultSummary;
Activity.setResult()
Cambia el miembro de resultado de la actividad.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
activity.setResult(summary)
activity.setResult(summary, detail)
Argumentos
summary
Código de cadena que representa el resumen del resultado.
62
Consulta
detail Cadena que representa los detalles del resultado.
Descripción
Este método cambiará el miembro de resultado de la actividad en la
actividad actual. Está soportado para las actividades actuales en el proceso
de flujo de trabajo actual. El resultado se compone de un código de
resumen específico de la aplicación y de una descripción opcional más
detallada específica de la aplicación. El código de resumen puede indicar si
un resultado es correcto o no. Este código de resumen se almacena como
miembro resultSummary localmente, y se actualiza en los datos relevantes
del motor de flujo de trabajo. La información detallada se almacena como
miembro resultDetail localmente y se actualiza en los datos relevantes del
motor de flujo de trabajo.
Uso
activity.setResult(activity.FAILED);
activity.setResult(activity.FAILED, "Unable to connect to resource");
Activity.started
Fecha que indica el momento en que se inició la actividad.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
activity.started
Descripción
Este campo de sólo lectura es una cadena que representa la fecha que
indica el momento en el que se inició la actividad.
Uso
x = activity.started;
Activity.state
Estado actual de la actividad.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
activity.state
Descripción
Este campo de sólo lectura es una cadena de código que representa el
estado actual de la actividad. El estado puede tener los siguientes valores:
v R para en ejecución
v
v
v
v
v
v
I para no iniciado
T para terminado
A para anulado
S para suspendido
C para completado
B para omitido
Uso
if (activity.state == "S") {
...
}
Consulta
63
Activity.subtype
Subtipo de la actividad.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
activity.subtype
Descripción
Este campo de sólo lectura es una cadena de código que categoriza la
actividad más allá del tipo de la actividad, como por ejemplo, la
aprobación o solicitud de información. Se define en el diseñador de flujos
de trabajo. No todas las actividades tienen un subtipo. Si no hay ningún
subtipo asociado con la actividad, este miembro está vacío. Los subtipos
soportados actualmente son:
v AP para aprobación
v RI para solicitud de entrada
v WO para orden de trabajo
Uso
x = activity.subtype;
Activity.type
Tipo de actividad.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
activity.type
Descripción
Este campo de sólo lectura es cadena de código que categoriza la actividad
especificada cuando se define en el diseñador de flujos de trabajo, como
por ejemplo, manual o de aplicación. Los tipos soportados actualmente
son:
v S para subproceso
v L para bucle
v A para aplicación
v R para ruta
v M para manual
v O para operación
Uso
x = activity.type;
AttributeChangeOperation
Entidad de la operación de cambio de atributo.
Disponibilidad
Tivoli Identity Manager 4.x
Suministrado por
Los objetos AttributeChangeOperation se devuelven desde el método
DirectoryObject.getChanges() y, por lo tanto, ninguna ampliación específica
los proporciona.
Propiedades
attr
64
Consulta
Nombre del atributo que se está cambiando.
op
Un entero que identifica el tipo de cambio que se está realizando.
values[]
Una matriz de objetos que deben agregarse, eliminarse o
sustituirse.
Descripción
Esta entidad representa los cambios realizados sobre un objeto de IBM
Tivoli Identity Manager.
AttributeChangeOperation.attr
Nombre del atributo que se está cambiando.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
attributeChangeOperation.attr
Descripción
El valor es el atributo que se está cambiando.
Uso
x = attributeChangeOperation.attr;
AttributeChangeOperation.op
Tipo de cambio que se está realizando.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
attributeChangeOperation.op
Descripción
Este campo de sólo lectura es un número que identifica el tipo de cambio
que se está realizando. Los valores son:
v 1 para agregar
v 2 para sustituir
v 3 para eliminar
Uso
x = attributeChangeOperation.op;
AttributeChangeOperation.values[]
Nombre del atributo que se está cambiando.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
attributeChangeOperation.values[]
Descripción
Este campo de sólo lectura es una matriz de objetos que se deben agregar,
eliminar o sustituir.
Uso
x = attributeChangeOperation.values[1];
ContainerSearch
Busca un contenedor organizativo.
Disponibilidad
Tivoli Identity Manager 4.x
Consulta
65
Suministrado por
com.ibm.itim.script.extensions.model.OrganizationModelExtension
Constructor
new ContainerSearch()
Devuelve
El objeto de búsqueda de contenedor recién creado e inicializado.
Métodos
searchByFilter()
Busca un contenedor por medio de un filtro.
Descripción
Implementa la clase OrganizationalContainerSearch de IBM Tivoli Identity
Manager.
ContainerSearch.searchByFilter()
Busca un contenedor por medio de un filtro.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
containerSearch.searchByFilter(profileName, filter, scope)
Argumentos
profileName
Nombre de cadena del perfil de contenedor organizativo
que se utilizará.
filter
Cadena de filtro de búsqueda LDAP que define los
criterios que deben satisfacer los contenedores devueltos. El
filtro debe estar en el formato definido por RFC2254.
scope
Entero de ámbito de búsqueda opcional. Utilice 1 para el
ámbito de un nivel y 2 para el ámbito de subárbol. El
ámbito de un nivel es el ámbito predeterminado.
Devuelve
Una matriz de DirectoryObjects que representa los resultados de la
búsqueda.
Descripción
Este método buscará un contenedor por medio de un filtro.
Uso
var locationContainer = new ContainerSearch();
// use subtree scope
var thisLocation = locationContainer.searchByFilter(“Location”,
“(l=Raleigh)”, 2);
// use default one level scope
var otherLocation = locationContainer.searchByFilter(“Location”,
“(l=Raleigh)”);
Context
Contexto del proceso de flujo de trabajo en ejecución actualmente (por ejemplo,
solicitante o asunto). Sólo se utiliza para los flujos de trabajo de titularidad.
Nota: Este tipo de objeto está en desuso. Se deben utilizar los objetos JavaScript de
flujo de trabajo, como por ejemplo, Process, Activity, y datos relevantes.
66
Consulta
Algunas funciones específicas de cuenta de la ampliación JavaScript Context,
incluidas getService(), isAccountDataChanged() y getAccountParameter() no se
pueden aplicar a los flujos de trabajo de operación que no están relacionados con
la cuenta. La ampliación JavaScript Context no está recomendada para su uso en
los flujos de trabajo personalizados.
Disponibilidad
Tivoli Identity Manager 4.x
Suministrado por
com.ibm.itim.workflow.script.WorkflowExtension
Constantes del contexto
APPROVED
Esta constante se utiliza para describir el resultado de una
actividad. El miembro se aplica sólo a tipos de actividad de
aprobación.
Uso
if (context.getActivityResult() == context.APPROVED) {...
REJECTED
Esta constante se utiliza para describir el resultado de una
actividad. Este miembro se aplica sólo a tipos de actividad de
aprobación.
Uso
if (context.getActivityResult() == context.REJECTED) {...
NEWACCOUNT
Esta constante se utiliza para identificar el tipo de solicitud que
desencadena la ejecución del flujo de trabajo personalizado.
Uso
if (context.getProcessType() ==
context.NEWACCOUNT) {...
ACCOUNTDATACHANGE
Esta constante se utiliza para identificar el tipo de solicitud que
desencadena la ejecución del flujo de trabajo personalizado.
Uso
if (context.getProcessType() ==
context.ACCOUNTDATACHANGE) {...
Métodos
getAccountParameter()
Devuelve el valor de un atributo de cuenta.
getActivityResult()
Devuelve el resultado de la actividad para la actividad actual.
getActivityResultByID()
Devuelve el resultado de la actividad para una actividad específica.
getLoopCount()
Devuelve el número de bucles para la actividad de bucle actual.
getLoopCountByID()
Devuelve el número actual de bucles para una actividad de bucle
específica.
Consulta
67
getProcessType()
Devuelve el tipo de solicitud que desencadena el proceso de flujo
de trabajo personalizado.
getRequestee()
Devuelve la persona a la que se solicita asociada a la solicitud
como objeto Person.
getService()
Devuelve el servicio de destino como un objeto de entidad Service.
isAccountDataChanged()
Identifica si se ha modificado un atributo de cuenta específico en la
solicitud que desencadena el proceso de flujo de trabajo
personalizado.
Descripción
El contexto del proceso de flujo de trabajo actualmente en ejecución (por
ejemplo, solicitante o asunto) se representa dentro de JavaScript como un
objeto denominado context.
Context.getAccountParameter()
Devuelve el valor de un atributo de cuenta.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
context.getAccountParameter(String attributeName)
Argumentos
attributeName
Cadena que representa el nombre de atributo.
Devuelve
Valor de cadena del atributo de cuenta.
Descripción
Esta función de miembro devuelve el valor de un atributo de cuenta como
una cadena.
Uso
parameter=context.getAccountParameter("group");
Context.getActivityResult()
Devuelve el resultado de la actividad para la actividad actual.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
context.getActivityResult()
Devuelve
Cadena
Descripción
Esta función de miembro devuelve el resultado de la actividad para la
actividad actual. La función devuelve APPROVED o REJECTED. Si esta
función se utiliza para especificar una condición de transición, la función
hace referencia a la actividad de la cual proviene la transición.
Uso
68
Consulta
if (context.getActivityResult() == context.APPROVED) {...
Context.getActivityResultById()
Devuelve el resultado de la actividad para una actividad específica.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
context.getActivityResultById(String activityDefinitionID)
Argumentos
activityDefinitionID
ID de cadena de la definición de la actividad.
Devuelve
Cadena
Descripción
Esta función de miembro devuelve el resultado de la actividad para una
actividad especificada. La función devuelve APPROVED o REJECTED.
Uso
if (context.getActivityResultByID("1234567890") == context.APPROVED)
{...
Context.getLoopCount()
Devuelve el número de bucles para la actividad de bucle actual.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
getLoopCount()
Devuelve
Entero de número de bucles.
Descripción
Esta función de miembro devuelve el número de bucles para la actividad
de bucle actual. Si se llama a esta función antes de iniciar un bucle, el
número de bucles será 0. Si se llama a esta actividad mientras la actividad
de bucle está en curso, el número de bucles será el número de veces que se
ha ejecutado el bucle. Si se llama a esta función cuando el bucle ha
finalizado, el recuento de bucles es el número total de veces que se ha
definido que debe ejecutarse el bucle.
Uso
currentiteration = context.getLoopCount();
Context.getLoopCountByID()
Devuelve el número actual de bucles para una actividad de bucle específica.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
context.getLoopCountByID(String activityDefinitionID)
Argumentos
activityDefinitionID
ID de la definición de la actividad.
Devuelve
Entero
Consulta
69
Descripción
Esta función de miembro devuelve el recuento de bucles actual para una
actividad de bucle específica. Si se llama a esta función antes de iniciar el
bucle, el número de bucles será 0. Si se llama a esta función mientras la
actividad de bucle está en curso, el número de bucles será el número de
veces que se ha ejecutado el bucle. Si se llama a esta función cuando el
bucle ha finalizado, el recuento de bucles es el número total de veces que
se ha definido que debe ejecutarse el bucle.
Uso
currentiteration = context.getLoopCount("1234567890");
Context.getProcessType()
Devuelve el tipo de solicitud que desencadena el proceso de flujo de trabajo
personalizado.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
context.getProcessType()
Devuelve
Cadena
Descripción
Esta función de miembro devuelve el tipo de solicitud que desencadena el
proceso de flujo de trabajo personalizado. La función devuelve
NEWACCOUNT o ACCOUNTDATACHANGE.
Uso
if (context.getProcessType() == context.NEWACCOUNT) {...
Context.getRequestee()
Devuelve la persona a la que se solicita asociada a la solicitud como objeto Person.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
context.getRequestee();
Devuelve
Objeto DirectoryObject que representa a un objeto Person.
Descripción
Esta función de miembro devuelve la persona a la que se solicita asociada
con la solicitud como un objeto Person. La persona a la que se solicita es el
usuario propietario de la cuenta suministrada asociada.
Uso
requestee = context.getRequestee();
Context.getService()
Devuelve el servicio de destino como un objeto de entidad Service.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
context.getService()
Devuelve
DirectoryObject
70
Consulta
Descripción
Esta función de miembro devuelve el servicio de destino como un objeto
de entidad Service. La entidad service es el servicio asociado a la cuenta
suministrada.
Uso
service = context.getService();
Context.isAccountDataChanged()
Identifica si se ha modificado un atributo de cuenta específico en la solicitud que
desencadena el proceso de flujo de trabajo personalizado.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
isAccountDataChanged(String attributeName)
Descripción
Esta función de miembro identifica si un atributo de cuenta específico se
ha cambiado en la solicitud que desencadena el proceso de flujo de trabajo
personalizado. Si la solicitud que desencadena el flujo de trabajo
personalizado es NEWACCOUNT y el atributo se encuentra en los
parámetros de la nueva cuenta, esta función devuelve TRUE. De lo
contrario, esta función devuelve FALSE. Si la solicitud que desencadena el
flujo de trabajo personalizado es ACCOUNTDATACHANGE y se cambia el
atributo especificado, esta función devuelve TRUE. De lo contrario, esta
función devuelve FALSE.
Uso
if (context.isAccountDataChanged("group")) {...
DirectoryObject
Cualquier entidad u objeto de directorio de IBM Tivoli Identity Manager.
Disponibilidad
Tivoli Identity Manager 4.x
Constructor
No hay constructor específico para este objeto. Los constructores
específicos para Account, Person, Role y Service devuelven
DirectoryObject.
Por ejemplo, new Service() devuelve un objeto DirectoryObject.
Propiedades
dn
Cadena que representa el nombre distinguido de la entidad.
name
Cadena que representa el nombre lógico de la entidad.
Métodos
getChanges()
Devuelve los cambios realizados sobre la entidad.
getProperty()
Devuelve los valores de la propiedad especificada por el nombre
indicado.
getPropertyNames()
Devuelve una lista de propiedades (atributos y relaciones).
removeProperty()
Elimina la propiedad especificada.
Consulta
71
setProperty()
Cambia el valor de la propiedad especificada o agrega la
propiedad especificada, si todavía no existe.
Descripción
Este objeto representa una entidad de IBM Tivoli Identity Manager en el
entorno de JavaScript. Cada entidad de IBM Tivoli Identity Manager se
deriva en una de estas clases de objetos.
DirectoryObject.dn
Nombre distinguido del objeto.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
directoryObject.dn
Descripción
Este campo de sólo lectura es una cadena que proporciona el nombre
distinguido del objeto. Si el objeto contiene información que todavía no se
ha creado, no existirá ningún valor.
Uso
x = directoryObject.dn;
DirectoryObject.getChanges()
Devuelve los cambios realizados sobre la entidad.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
directoryObject.getChanges()
Devuelve
Una matriz de objetos de cambio. Si no hay ningún cambio, se
devuelve una matriz vacía. Cada elemento de la matriz es
AttributeChangeOperation.
Descripción
Este método devolverá los cambios realizados sobre la entidad. Estos
cambios están representados por objetos de cambio con los miembros
siguientes:
attr
Nombre de cadena del atributo que se está cambiando.
op
Un entero que identifica el tipo de cambio que se está realizando.
Los valores enumerados son 1 para agregar, 2 para sustituir y 3
para eliminar.
values Una matriz de objetos que deben agregarse, eliminarse o
sustituirse.
Los cambios se devuelven como una matriz de estos objetos de
cambio. Si no hay ningún cambio, se devuelve una matriz vacía.
Uso
changes = directoryObject.getChanges();
for (i = 0; i < changes.length; i++) {
name = changes[i].attr;
if (changes[i].op == 1) {
...
} else if (changes[i].op == 2) {
...
72
Consulta
} else {
...
}
};
DirectoryObject.getProperty()
Devuelve los valores de la propiedad especificada por el nombre indicado.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
directoryObject.getProperty(name)
Argumentos
name
Cadena que representa el nombre de la propiedad que se
devolverá.
Devuelve
Una cadena o un objeto DirectoryObject. El tipo de objeto devuelto
depende de la propiedad obtenida. Si la propiedad especificada no
existe, se devolverá una matriz vacía.
Descripción
Este método devolverá los valores de la propiedad especificada por el
nombre indicado. El tipo de objeto devuelto depende de la propiedad
obtenida. Si la propiedad especificada no existe, se devolverá una matriz
vacía.
El nombre de la propiedad puede ser un nombre de atributo o un nombre
de relación. Para un nombre de atributo, se devuelve una cadena String[];
para un nombre de relación, se devuelve una matriz de DirectoryObjects.
Si un atributo y una relación tienen el mismo nombre, se devuelve el
atributo. Por ejemplo, una entidad Account tiene tanto un atributo de
propietario como una relación de propietario.
Uso
Cuando se trabaja con una cuenta, por ejemplo, la propiedad de ID de
usuario puede devolver una cadena, mientras que la propiedad de
propietario puede devolver otra entidad (DirectoryObject). A continuación,
la entidad owner puede funcionar con el miembro getProperty() para
obtener información sobre él.
userids = directoryObject.getProperty("eruid");
if (userids.length > 0)
userid = userids[0];
owner = directoryObject.getProperty("owner");
if (owner.length > 0)
ownerName = owner.getProperty("name")[0];
Nota: Estas sentencias presuponen que se devuelve al menos un valor. Si
no se devuelve ningún valor, se producirá una infracción de la indexación
de la matriz.
El método getProperty devuelve una matriz Java de objetos que se
almacena realmente en un objeto JavaArray de JavaScript. Al contrario de
una matriz JavaScript estándar, los objetos JavaArray se utilizan para
acceder a los miembros de una matriz Java. Ya que no se puede cambiar el
tamaño de las matrices Java, tampoco se puede cambiar el tamaño de un
objeto JavaArray. Además, los objetos JavaArray se establecen en tipos. Si
se establece un elemento JavaArray en el tipo equivocado, se producirá un
error de JavaScript.
Consulta
73
DirectoryObject.getPropertyNames()
Devuelve una lista de propiedades (atributos y relaciones).
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
directoryObject.getPropertyNames()
Devuelve
Una matriz de cadenas.
Descripción
Este método devolverá una lista de propiedades como matriz de cadenas.
Una propiedad puede ser un atributo o una relación.
Uso
properties = directoryObject.getPropertyNames();
DirectoryObject.name
Nombre lógico del objeto.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
directoryObject.name
Descripción
Este campo de sólo lectura es una cadena que proporciona el nombre
lógico del objeto, representado como una cadena. El atributo físico
utilizado como el nombre puede ser diferente para cada tipo de objeto.
Uso
x = directoryObject.name;
DirectoryObject.removeProperty()
Elimina la propiedad especificada por el nombre indicado.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
directoryObject.removeProperty(name)
Argumentos
name
Cadena que representa el nombre de la propiedad que se
eliminará.
Descripción
Este método eliminará la propiedad especificada. Este cambio se realiza
localmente en el entorno del script, no en el almacén de datos. El nombre
de la propiedad puede ser un nombre de atributo o un nombre de relación.
Uso
directoryObject.removeProperty("eruid");
DirectoryObject.setProperty()
Establece el valor de la propiedad especificada.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
directoryObject.setProperty(name, value)
Argumentos
74
Consulta
name
Cadena que representa el nombre de la propiedad que se
creará/modificará.
value
El valor en el que se establecerá la propiedad.
Descripción
Este método cambia el valor de la propiedad especificada o agrega la
propiedad especificada si todavía no existe. Este cambio se realiza
localmente en el entorno del script, no en el almacén de datos. El valor
puede ser un objeto de valor único o una matriz de objetos. El tipo de
valor (sintaxis) del objeto debe ser compatible con la sintaxis de la
propiedad especificada. Este método está disponible para los siguientes
tipos de datos:
v
v
v
v
v
v
v
Uso
void
void
void
void
void
void
void
setProperty(String
setProperty(String
setProperty(String
setProperty(String
setProperty(String
setProperty(String
setProperty(String
name,
name,
name,
name,
name,
name,
name,
Collection value);
Date value);
Map value);
boolean value);
byte value);
String value);
number value);
directoryObject.setProperty("eruid", "jdoe");
El método getProperty devuelve una matriz Java de objetos que se
almacena realmente en un objeto JavaArray de JavaScript. Al contrario de
una matriz JavaScript estándar, los objetos JavaArray se utilizan para
acceder a los miembros de una matriz Java. Ya que no se puede cambiar el
tamaño de las matrices Java, tampoco se puede cambiar el tamaño de un
objeto JavaArray. Además, los objetos JavaArray se establecen en tipos. Si
se establece un elemento JavaArray en el tipo equivocado, se producirá un
error de JavaScript.
En IBM Tivoli Identity Manager, un objeto JavaArray no se puede pasar
directamente al método setProperty. La matriz JavaArray se establece en
una matriz JavaScript estándar de la manera siguiente:
jsAliases = new Array();
myPerson = person.get();
aliases = myPerson.getProperty("eraliases");
for (i=0; i < aliases.length; i++) {
jsAliases[i] = aliases[i];
}
jsAliases[aliases.length] = "myNewAlias";
myPerson.setProperty("eraliases", jsAliases);
person.set(myPerson);
EmailContext
Proporciona acceso a la información contextual específica de un tipo de notificación
que se está enviando.
Algunos métodos para acceder a la información cambian en función de los tipos de
notificación enumerados a continuación. (No se da soporte a Reminder/Approval/
RFI/WorkOrder/ComplianceAlert Notification).
v Plantilla de tiempo de espera de actividad
v Plantilla de cambio de cuenta
v Plantilla de conformidad
v Plantilla de cuenta nueva
Consulta
75
v
v
v
v
v
Plantilla
Plantilla
Plantilla
Plantilla
Plantilla
de
de
de
de
de
contraseña nueva
finalización de proceso
tiempo de espera de proceso
restauración de cuenta
suspensión de cuenta
Disponibilidad
Tivoli Identity Manager 4.6
Suministrado por
com.ibm.itim.workflow.script.EmailContextExtension
Sinopsis
Los métodos documentados en esta sección se deben llamar como un
objeto EmailContext. Por ejemplo:
notificationActivity=EmailContext.getActivity();
owner=EmailContext.getAccountOwnerName()
Métodos comunes
Estos métodos están disponibles para todos los tipos de notificaciones:
getActivity()
Devuelve información sobre la actividad en ejecución más reciente.
(Devuelve el objeto Java ActivityInfoOC.)Para obtener información
de actividad del objeto JavaScript, utilice el objeto ‘activity’.
getActivity(java.lang.String actDefID)
Devuelve información sobre la actividad con el ID de definición
dado. (Devuelve el objeto Java ActivityInfoOC) Esto obtiene
información mediante el proceso de flujo de trabajo
Process.$dataName.get(). Para obtener información de actividad del
objeto JavaScript, utilice ‘process.getActivity(java.lang.String
actDefID)’.
getParentProcess()
Devuelve información acerca del proceso principal del proceso
padre que se está ejecutando actualmente. (Devuelve el objeto Java
ProcessInfoOC) Para obtener información de proceso del proceso
padre del objeto JavaScript, utilice ‘process.getParent()’.
getProcess()
Devuelve información acerca del proceso que se está ejecutando
actualmente. (Devuelve el objeto Java ProcessInfoOC) Para obtener
información de proceso del proceso padre del objeto JavaScript,
utilice el objeto ‘process’.
getRootProcess()
Devuelve información acerca del proceso raíz del proceso que se
está ejecutando actualmente. (Devuelve el objeto Java
ProcessInfoOC) Para obtener información de proceso del proceso
padre del objeto JavaScript, utilice ‘process.getRootProcess()’).
Métodos de notificación de cuentas
Estos métodos están disponibles para todos los tipos de notificaciones de
cuenta:
getAccountOwnerName()
Devuelve el nombre del propietario de la cuenta para la cuenta.
76
Consulta
getAccountServiceName()
Devuelve el nombre de servicio de la cuenta para la cuenta.
getAccountServiceProfileName()
Devuelve el nombre del perfil de servicio de la cuenta para la
cuenta.
getAccountUserId()
Devuelve el ID de usuario de la cuenta para la cuenta.
hasNewAccess()
Devuelve true si la cuenta tiene un acceso nuevo y false de lo
contrario.
hasRemovedAccess()
Devuelve true si la cuenta tiene un acceso eliminado y false de lo
contrario.
getAccountNewAccessAsString()
Devuelve una cadena que contiene una lista de accesos nuevos
separados por comas.
getAccountNewAccessList()
Devuelve una matriz de cadena que contiene el acceso nuevo.
getAccountRemovedAccessAsString()
Devuelve una cadena que contiene la lista de accesos eliminados
separados por comas.
getAccountRemovedAccessList()
Devuelve una matriz de cadena que contiene la lista de accesos
eliminados.
Métodos de notificación de suspensión/eliminación de suministro de cuentas:
Estos métodos sólo están disponibles para todos los tipos de notificaciones
de suspensión/eliminación de suministro de cuentas:
getAction()
Devuelve la acción realizada contra el propio servicio (recurso).
getReason()
Devuelve un motivo descriptivo para la eliminación del suministro.
Métodos de notificación de cuentas nuevas, modificadas y restauradas:
Estos métodos sólo están disponibles para todos los tipos de notificaciones
de cuentas nuevas, modificadas y restauradas:
showPassword()
Determina si se visualiza o no la contraseña cuando se notifica al
usuario de la cuenta nueva.
getAccountPassword()
Devuelve la contraseña de cuenta para la cuenta.
getPasswordExpirePeriod()
Devuelve el periodo de caducidad de la entrega de contraseña.
getPasswordRetrievalUrl()
Devuelve el URL de entrega de contraseña para recuperar la
contraseña por medio del secreto compartido de las cuentas.
getTransactionId()
Devuelve el ID de transacción de la entrega de contraseña para
recoger la contraseña creada para esta cuenta.
Consulta
77
Métodos de notificación de cambio de contraseña de cuentas:
Estos métodos están disponibles para todos los tipos de notificaciones de
cambio de contraseña de cuentas:
getAccountPassword()
Devuelve la contraseña de cuenta para la cuenta.
getPasswordExpirePeriod()
Devuelve el periodo de caducidad de la entrega de contraseña.
getPasswordRetrievalUrl()
Devuelve el URL de entrega de contraseña para recuperar la
contraseña por medio del secreto compartido de las cuentas.
getTransactionId()
Devuelve el ID de transacción de la entrega de contraseña para
recoger la contraseña creada para esta cuenta.
Enrole
Métodos generales
Disponibilidad
Tivoli Identity Manager 4.x
Contexto de Política de suministro
Contexto de Política de identidad
Reglas de colocación de alimentación de identidades
Suministrado por
com.ibm.itim.script.extensions.EnroleExtension
Métodos
generatePassword()
Genera una contraseña para un servicio específico.
getAttributeValue()
Obtiene el valor de atributo de valor único.
getAttributeValues()
Obtiene los valores de un atributo de varios valores.
localize()
Mensaje localizado especificado en formato XML <Mensaje>.
log()
Registra un mensaje en el registro de IBM Tivoli Identity Manager
en el nivel de error.
toGeneralizedTime()
Convierte una fecha u hora en formato de hora generalizada.
toMilleseconds()
Convierte una cadena en formato de hora generalizada a un valor
entero en milisegundos.
Descripción
El objeto Enrole está disponible en el contexto de una política de
suministro, política de identidad y regla de colocación de alimentación de
identidades.
Enrole.generatePassword()
Genera una contraseña nueva válida para una cuenta.
78
Consulta
Disponibilidad
Para que generatePassword() funcione hace falta un servicio, por lo que
sólo está disponible cuando se utiliza ServiceExtension.
Sinopsis
Enrole.generatePassword()
Devuelve
Una cadena que es una contraseña válida para el objeto
DirectoryObject Service almacenado en la variable ″service″.
Descripción
Este método generará una contraseña nueva válida para un servicio.
Enrole.getAttributeValue()
Obtiene el valor de atributo de valor único.
Disponibilidad
En desuso a partir de Tivoli Identity Manager 4.3. Se ha sustituido por
DirectoryObject.getProperty()
Sinopsis
Enrole.getAttributeValue(name, defaultValue)
Argumentos
name
Cadena que representa el nombre de la propiedad que se
devolverá.
defaultValue
Valor predeterminado que se devolverá si no hay ningún
valor que devolver.
Devuelve
Un objeto. El tipo de objeto devuelto depende de la propiedad
obtenida. Si la propiedad especificada no existe, se devuelve el
valor predeterminado.
Descripción
Este método recuperará el valor de la propiedad especificada.
Enrole.getAttributeValues()
Obtiene el valor de un atributo de varios valores.
Disponibilidad
En desuso a partir de Tivoli Identity Manager 4.3. Se ha sustituido por
DirectoryObject.getProperty()
Sinopsis
Enrole.getAttributeValues(name)
Argumentos
name
Cadena que representa el nombre de la propiedad que se
devolverá.
Devuelve
Una matriz de objetos. El tipo de objeto devuelto depende de la
propiedad obtenida. Si la propiedad especificada no existe, se
devolverá una matriz vacía.
Descripción
Este método recuperará el valor de la propiedad especificada.
Consulta
79
Enrole.localize()
Localiza un mensaje especificado en formato XML <Mensaje>.
Disponibilidad
IBM Tivoli Identity Manager Versión 5.0
Sinopsis
Enrole.localize(String xmlMsg, String localStr)
Argumentos
xmlMsg
Un mensaje especificado en XML.
localStr
Una cadena que representa el entorno local que se utiliza
para la localización.
Devuelve
Un mensaje localizado.
Descripción
Este método localizará un mensaje XML en el entorno local dado.
Enrole.log()
Registra mensajes en el registro de IBM Tivoli Identity Manager.
Disponibilidad
Tivoli Identity Manager 4.6
Sinopsis
enrole.log(category, message);
Argumentos
category
Categoría de la entrada de registro, especificada como
cadena. Se puede utilizar el argumento category o se puede
dejar vacío, pero el argumento no debe ser null (nulo).
message
Mensaje que se registrará, especificado como cadena.
Descripción
Registra un mensaje en el registro de IBM Tivoli Identity Manager en el
nivel de error.
Uso
var roleDN = ..;(DN of role)
var role = new Role(roleDN);
//
Put next statement on one line
Enrole.log("script", "The role name is
"+ role.getProperty("errolename")[0]);
Enrole.toGeneralizedTime()
Convierte una fecha u hora en formato de hora generalizada.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
Enrole.toGeneralizedTime(time)
80
Consulta
Argumentos
time
Valor entero de hora en milisegundos u objeto de fecha.
Descripción
Este método convierte una hora o fecha en formato de hora generalizada.
Puede utilizarse las políticas de identidad o bien en las titularidades
predeterminadas.
Uso
genTime = Enrole.toGeneralizedTime(seconds);
Enrole.toMilliseconds()
Convierte una cadena en formato de hora generalizada a un valor entero en
milisegundos.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
Enrole.toMilliseconds(genTime)
Argumentos
genTime
Cadena en formato de hora generalizada.
Descripción
Este método convierte una cadena en formato de hora generalizada en un
valor entero en milisegundos.
Uso
seconds = Enrole.toMilliseconds(genTime);
Error
Este objeto contiene una descripción de error de script para notificar al código que
ha realizado la llamada de una condición excepcional en tiempo de ejecución.
Cuando se devuelve un error desde una evaluación de script, se convierte en una
excepción de Java y se genera desde la clase del evaluador de script.
Disponibilidad
Tivoli Identity Manager 4.6.x
Suministrado por
com.ibm.itim.script.extensions.EnroleExtension
Métodos
setMessage()
Establece el mensaje del error.
getMessage()
Recupera el mensaje de error para el error.
setErrorCode()
Establece el código de error para el error.
getErrorCode()
Recupera el código de error para el error.
Uso
var sn = subject.getProperty("sn");
if(sn == null || sn.length == 0) {
error.setMessage("sn was missing");
Consulta
81
return error;
} else {
return sn[0];
}
Error.setMessage()
Establece el mensaje del error.
Disponibilidad
Tivoli Identity Manager 4.6.x
Sinopsis
error.setMessage(String msg)
Argumentos
msg
Cadena que representa el mensaje que se establecerá.
Descripción
Este método establecerá el texto de un mensaje de error. La función acepta
un parámetro de cadena.
Uso
error.setMessage("sn was missing");
Error.getMessage()
Recupera el mensaje establecido para un error.
Disponibilidad
Tivoli Identity Manager 4.6.x
Sinopsis
error.getMessage()
Devuelve
Mensaje de cadena para un error.
Descripción
Este método recuperará el texto de un mensaje de error.
Uso
messageValue = error.getMessage();
Error.setErrorCode()
Establece el código de error para el error.
Disponibilidad
Tivoli Identity Manager 4.6.x
Sinopsis
error.setErrorCode(int code)
Argumentos
code
Entero que representa el código de error.
Descripción
Este método establecerá el código de error de un mensaje de error. La
función acepta un parámetro entero.
Uso
error.setErrorCode(1);
Error.getErrorCode()
Recupera el código de error establecido para un error.
Disponibilidad
Tivoli Identity Manager 4.6.x
82
Consulta
Sinopsis
error.getErrorCode()
Devuelve
Valor entero para un código de error.
Descripción
Este método recuperará el código de error de un mensaje de error.
Uso
errorCodeValue = error.getErrorCode();
IdentityPolicy
Política de identidad
Disponibilidad
Tivoli Identity Manager 4.x
Contexto de Política de identidad
Suministrado por
com.ibm.itim.policy.script.IdentityPolicyExtension
Métodos
getNextCount()
Devuelve un número que se puede agregar al final de un nombre
de usuario para hacer que este nombre de usuario sea único.
userIDExists()
Comprueba si el ID de usuario solicitado ya está en uso.
Descripción
Este objeto representa una entidad de política de IBM Tivoli Identity
Manager.
IdentityPolicy.getNextCount()
Obtiene un número que se puede agregar al final de un nombre de usuario para
hacer que este nombre de usuario sea único. ServiceExtension se debe cargar para
que getNextCount() funcione.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
IdentityPolicy.getNextCount(baseId)
Argumentos
baseId
El nombre de usuario base.
Devuelve
Un número que se puede agregar al final de un nombre de usuario
para hacer que este nombre de usuario sea único. Devolverá -1 si
el nombre de usuario ya es único y devolverá -2 si se produce un
error.
Descripción
Este método comprobará si el UID ya se está utilizando.
Uso
num = IdentityPolicy.getNextCount(baseId);
return baseId + num;
Consulta
83
IdentityPolicy.userIDExists()
Comprueba si el ID de usuario solicitado ya está en uso.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
IdentityPolicy.userIDExists(uid, checkAllServices, checkRecycleBin)
Argumentos
uid
Identidad de usuario.
checkAllServices
Si se establece en true, se comprobarán todas las instancias
de servicio para ver si el ID de usuario se utiliza en una
cuenta de cualquier tipo de servicio. Si se establece en
false, sólo se comprobará la instancia de servicio de
destino. Este argumento es opcional. El valor
predeterminado es false.
checkRecycleBin
Si se establece en true, se comprobará la papelera de
reciclaje en busca de cuentas suprimidas. Este parámetro
está diseñado para utilizarse con el parámetro
checkAllServices. Este parámetro sólo se debe establecer en
true cuando el parámetro checkAllServices también se
establece en true. Este argumento es opcional. El valor
predeterminado es false.
Devuelve
True si existe el ID de usuario, en caso contrario, false.
Descripción
Este método comprobará si el UID ya se está utilizando.
Uso
// To create a user ID without checking for it in the recycle bin but
// checking it against all services.
tf = IdentityPolicy.userIDExists("jason_jones", true, false);
PackagedApprovalDocument
Objeto de datos relevantes utilizado en la aprobación de varios elementos que se
utiliza exclusivamente en los flujos de trabajo de recertificación de usuarios. Este
objeto consta de varios objetos PackagedApprovalItem de la aprobación de
recertificación de usuarios y permite buscar y recuperar elementos de
recertificación.
Disponibilidad
Tivoli Identity Manager 5.1
Constructor
new PackagedApprovalDocument()
Construye un objeto de documento de aprobación vacío. También se
pueden obtener instancias en el flujo de trabajo de recertificación de
usuarios y notificaciones accediendo al elemento de datos relevantes
″ApprovalDocument″. Por ejemplo, ApprovalDocument.get() devuelve un
PackagedApprovalDocument en un flujo de trabajo de recertificación de
usuarios.
Propiedades
84
Consulta
TYPE_ACCOUNT
Constante para elementos de aprobación que son cuentas.
TYPE_GROUP
Constante para elementos de aprobación que son grupos en otros
servicios pero no están definidos como un acceso.
TYPE_GROUP_ACCESS
Constante para elementos de aprobación que son grupos y también
están definidos como accesos.
TYPE_ITIM_GROUP
Constante para elementos de aprobación que son grupos en
servicios de tipo ITIM Service.
TYPE_ROLE
Constante para elementos de aprobación que son roles.
Métodos
addItem(PackagedApprovalItem item)
Devuelve un indicador booleano que indica que se ha agregado un
elemento PackagedApprovalItem a este documento de aprobación.
containsDecisionCode(decisionCode)
Devuelve un indicador booleano que indica si alguno de los
elementos de este documento que permiten decisiones contienen la
cadena de código de decisión especificada. Los códigos de decisión
válidos son activity.APPROVED y activity.REJECTED.
getDecisionItemCountByType(type)
Devuelve el número de elementos de este documento que soportan
decisiones y son del tipo especificado, donde los tipos se definen
como constantes en este objeto (TYPE_ROLE, TYPE_ACCOUNT,
etc.). Este método considera todos los elementos de aprobación del
documento como decisiones de soporte, incluidos los hijos de los
elementos del nivel superior.
getDecisionItemCountByType(type, includeChildren)
Devuelve el número de elementos de este documento que soportan
decisiones y son del tipo especificado, donde los tipos se definen
como constantes en este objeto (TYPE_ROLE, TYPE_ACCOUNT,
etc.). Según el valor del indicador booleano includeChildren, este
método también puede contar todos los elementos de este
documento, incluidos los elementos que son hijos de los elementos
del nivel superior.
getItemCountByType(type)
Devuelve el número de elementos de este documento que son del
tipo especificado, donde los tipos se definen como constantes de
este objeto (TYPE_ROLE, TYPE_ACCOUNT, etc.). Este método
considera todos los elementos de aprobación de este documento,
incluidos los hijos de los elementos del nivel superior.
getItemCountByType(type, includeChildren)
Devuelve el número de elementos de este documento que son del
tipo especificado, donde los tipos se definen como constantes de
este objeto (TYPE_ROLE, TYPE_ACCOUNT, etc.). Según el valor
del indicador booleano includeChildren, este método también
puede contar todos los elementos de este documento, incluidos los
elementos que son hijos de los elementos del nivel superior.
Consulta
85
getItemCountByTypeAndDecision(type, decisionCode)
Devuelve el número de elementos de este documento que son del
tipo especificado y que permiten decisiones y contienen la cadena
de código de decisión especificada. Los tipos se definen como
constantes de este objeto (TYPE_ROLE, TYPE_ACCOUNT, etc.) Los
códigos de decisión válidos son activity.APPROVED y
activity.REJECTED. Este método sólo considera los elementos de
aprobación del nivel superior y no cuenta los hijos de esos
elementos.
getItemsByType(type)
Devuelve los elementos del nivel superior de este documento de
aprobación que son del tipo especificado como una matriz de
objetos PackagedApprovalItem. Los tipos se definen como
constantes de este objeto (TYPE_ROLE, TYPE_ACCOUNT, etc.)
getItemsByTypeAndDecision(type, decisionCode)
Devuelve los elementos del nivel superior de este documento de
aprobación que son del tipo especificado y que, si se permiten las
decisiones, contienen la cadena de código de decisión especificada
como una matriz de objetos PackagedApprovalItem. Los tipos se
definen como constantes de este objeto (TYPE_ROLE,
TYPE_ACCOUNT, etc.) Los códigos de decisión válidos son
activity.APPROVED y activity.REJECTED.
removeItem(String identifier)
Devuelve un indicador booleano que indica que un
PackagedApprovalItem correspondiente al identificador se ha
eliminado de este documento de aprobación.
setDecisionCodeForAllItems(decisionCode)
Establece el decisionCode (código de decisión) especificado en
todos los elementos de este documento, incluidos los hijos de los
elementos del nivel superior. Se omiten los elementos que no
soportan decisiones. Los códigos de decisión válidos son
activity.APPROVED y activity.REJECTED.
Descripción
El objeto representa el documento de aprobación de varios elementos en el
entorno de JavaScript.
PackagedApprovalItem
Objeto de datos relevantes utilizado en la aprobación de varios elementos de IBM
Tivoli Identity Manager que se utiliza exclusivamente en los flujos de trabajo de
recertificación de usuarios. Este objeto representa los roles, cuentas y grupos
individuales que se presentan al usuario durante el proceso de recertificación.
Algunos elementos pueden contener un código de decisión que indique la elección
de los aprobadores para ese elemento. Cada elemento contiene también una lista
de hijos que se utiliza para representar relaciones entre cuentas y grupos.
Disponibilidad
Tivoli Identity Manager 5.1
Constructor
new PackagedApprovalItem(itemType, value)
Construye un objeto PackagedApprovalItem que no soporta decisiones y es
de sólo lectura durante la actividad de aprobación de recertificación. Los
parámetros son una constante y un valor de tipo de elemento, donde el
valor es un DirectoryObject que coincide con el tipo (rol, cuenta, etc.).
86
Consulta
new PackagedApprovalItem(itemType, value, decisionCode)
Construye un objeto PackagedApprovalItem que soporta decisiones. El
parámetro decisionCode es activity.APPROVED, activity.REJECTED o null,
donde null indica que es necesaria una decisión pero todavía no se ha
especificado.
Por ejemplo:
new PackagedApprovalItem(PackagedApprovalDocument.TYPE_ACCOUNT, acctObj)
new PackagedApprovalItem(PackagedApprovalDocument.TYPE_ROLE, roleObj, activity.APPROVED)
Propiedades
DECISION_NOT_APPLICABLE
Constante para elementos de aprobación que no soportan
decisiones y son de sólo lectura durante la recertificación.
Métodos
getItemTypeString()
Devuelve el tipo de elemento, donde los valores de la constante se
definen en el objeto PackagedApprovalDocument (TYPE_ROLE,
TYPE_ACCOUNT, TYPE_GROUP, TYPE_GROUP_ACCESS).
getDecisionCode()
Devuelve el código de decisión para este elemento, donde los
valores posibles son activity.APPROVED y activity.REJECTED. Este
método también puede devolver
PackagedApprovalItem.DECISION_NOT_APPLICABLE si este elemento
sólo tiene fines informativos, o null si todavía no se ha
especificado la decisión.
getValue()
Devuelve un DirectoryObject para el rol, cuenta o grupo de este
elemento.
getChildItems()
Devuelve una matriz de objetos PackagedApprovalItem que son
los hijos de este elemento. Por ejemplo, los elementos de cuenta
pueden tener grupos como si fueran sus hijos.
getChildItemsByDecision(decisionCode))
Devuelve una matriz de objetos PackagedApprovalItem que son
los hijos de este elemento y tienen el código de decisión
especificado, por ejemplo activity.APPROVED o activity.REJECTED.
Descripción
El objeto representa el elemento de aprobación de varios elementos
de Tivoli Identity Manager en el entorno de JavaScript.
Participant
Entidad de participante de flujo de trabajo, que especifica un participante de
actividad. En un nodo de correo, esta entidad especifica el destinatario de correo.
Sólo se aplica a los tipos de actividad manual, que incluyen Aprobación, RFI,
Orden de trabajo y Correo.
El participante de una actividad se puede especificar durante el diseño del flujo de
trabajo como Participante definido personalizado. En este caso, el objeto JavaScript
Participant se puede utilizar para construir el participante adecuado en función del
contexto de proceso.
Consulta
87
Disponibilidad
Tivoli Identity Manager 4.x
Suministrado por
com.ibm.itim.workflow.script.WorkflowExtension
Constructor
new Participant(type, dn)
Argumentos
type
Código que categoriza el tipo de participante.
dn
DN opcional de una entidad específica.
Devuelve
Objeto de participante recién creado e inicializado.
Propiedades
implementation
Esta propiedad contiene JavaScript que devuelve el participante
cuando el tipo de participante es Personalizado.
name
Identifica al participante.
type
Código que categoriza el tipo de participante.
Descripción
El participante especifica un participante de actividad. El participan solicita
actividades de los nodos Aprobación, RFI, Orden de trabajo y Correo. Sólo
se aplica a los tipos de actividad manual, incluidas Aprobación, RFI y
Orden de trabajo. El participante de una actividad o el destinatario de una
actividad de correo puede especificarse durante el diseño del flujo de
trabajo como Participante definido personalizado. En este caso, el objeto
JavaScript Participant se puede utilizar para construir el participante
adecuado en función del contexto de proceso.
Uso
//assume person is one of the relevant data in the workflow
//process for the target user involved
if( person.get().getProperty(“title”)[0]==”Manager” )
return new Participant(ParticipantType.SYSTEM_ADMIN);
else
return new Participant(ParticipantType.SUPERVISOR);
//assume person is one of the relevant data in the workflow
//process for the target user involved
if( person.get().getProperty(“title”)[0]==”Manager”)
return new Participant(ParticipantType.USER, person.get().dn);
else
...
Participant.implementation
Participante definido personalizado.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
participant.implementation
88
Consulta
Descripción
Este campo de sólo lectura es una cadena que proporciona un participante
definido personalizado, que contiene el código JavaScript para devolver el
participante.
Uso
x = participant.implementation;
Participant.name
DN del participante
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
participant.name
Descripción
Este campo de sólo lectura es un nombre distinguido que identifica al
participante. Sólo resulta aplicable para los tipos de participante ROLE y
USER.
Uso
x = participant.name;
Participant.type
Código que categoriza el tipo de participante
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
participant.type
Descripción
Este campo de sólo lectura es una cadena que representa un código que
categoriza el tipo de participante.
Uso
x = participant.type;
ParticipantType
Constantes del tipo de participante de flujo de trabajo.
Disponibilidad
Tivoli Identity Manager 4.x
Suministrado por
com.ibm.itim.workflow.script.WorkflowExtension
Propiedades
DOMAIN_ADMIN
Tipo de participante para el administrador del dominio del
contenedor organizativo asociado al servicio de la cuenta Asunto
(según se especifica en el contexto Asunto de la ventana de
propiedades del flujo de trabajo).
participant = new Participant(ParticipantType.DOMAIN_ADMIN);
REQUESTOR
Tipo de participante para la persona que inició la solicitud. Si una
persona inicia una solicitud de cambio para una persona que
desencadena una imposición de política, el participante será la
persona que realiza la solicitud de cambio. Para las cargas de
datos, el participante es el usuario del sistema. Al establecer la
propiedad siguiente de $ITIM_HOME/data/enRole.properties en
Consulta
89
true, el sistema aprobará automáticamente una solicitud de
aprobación que tiene al solicitante como participante.
participant = new Participant(ParticipantType.REQUESTOR);
REQUESTEE
Tipo de participante para la persona designada como persona a la
que se solicita en el campo de propietario de los datos relevantes.
participant = new Participant(ParticipantType.REQUESTEE);
ROLE Tipo de participante para un rol organizativo específico. Aunque
todos los miembros de usuario del rol y sus roles hijo recibirán una
notificación, y todos ellos pueden responder, la primera respuesta
desencadena la continuidad del flujo de trabajo. En otras palabras,
no se puede especificar un rol para requerir a varios participantes
que aprueben la solicitud.
participant = new Participant(ParticipantType.ROLE, roleDN);
ROLE_OWNER
Tipo de participante para el propietario del rol (si está
especificado). El rol se resuelve en función de los propietarios
especificados en el OrgRole listado como un parámetro de entrada
para la operación de flujo de trabajo operativo. Si no hay ningún
OrgRole especificado como parámetro de entrada en el flujo de
trabajo, el participante no se resuelve.
participant = new Participant(ParticipantType.ROLE_OWNER);
SERVICE_OWNER
Tipo de participante para el propietario del servicio (si está
especificado). El servicio se resuelve en función del objeto de
cuenta desde los datos relevantes del flujo de trabajo que se
marcan como ″Asunto″ en la ventana de propiedades.
participant = new Participant(ParticipantType.SERVICE_OWNER);
SOD_POLICY_OWNER
Tipo de participante para los propietarios de la política de
separación de funciones (si está especificada). Los propietarios se
resuelven en función del objeto SeparationOfDutyRuleViolation
desde los datos relevantes del flujo de trabajo que se marcan como
″Asunto″ en la ventana de propiedades. Si no hay ningún
SeparationOfDutyRuleViolation especificado como Asunto del flujo
de trabajo, el participante no se resuelve.
El tipo de participante SOD_POLICY_OWNER sólo se utiliza en la
operación global approveSoDViolation.
participant = new Participant(ParticipantType.SOD_POLICY_OWNER);
SPONSOR
Tipo de participante para la persona designada como patrocinador
(por medio de la relación de patrocinador) para la persona a la que
se solicita (como se marca en los datos relevantes).
participant = new Participant(ParticipantType.SPONSOR);
SUPERVISOR
Tipo de participante para el gestor o supervisor de la persona a la
que se solicita. Si no se especifica ninguno para la persona a la que
se solicita, el supervisor designado en el contenedor organizativo
de la persona a la que se solicita pasará a ser el participante. Si no
se especifica ningún supervisor para el contenedor organizativo de
la persona a la que se solicita, se buscará un supervisor en el nivel
90
Consulta
inmediatamente superior. La búsqueda continuará en el árbol,
hasta que se alcance la parte superior de la organización. Si no se
encuentra ningún supervisor, el participante no se resolverá.
participant = new Participant(ParticipantType.SUPERVISOR);
SYSTEM_ADMIN
Tipo de participante para un miembro del grupo de administrador
del sistema de Tivoli Identity Manager.
participant = new Participant(ParticipantType.SYSTEM_ADMIN);
USER Tipo de participante para que una persona específica responda a la
solicitud. La persona debe tener una cuenta de Tivoli Identity
Manager.
participant = new Participant(ParticipantType.USER, userDN);
Descripción
Esta entidad representa las constantes del tipo de participante de flujo de
trabajo.
Person
Entidad de persona.
Disponibilidad
Tivoli Identity Manager 4.x
Suministrado por
com.ibm.itim.script.extensions.model.PersonModelExtension
Hereda de
DirectoryObject
Constructor
new Person(String dn)
Argumentos
dn
DN opcional de una entidad específica.
Métodos
getRoles()
Devuelve una matriz de DirectoryObjects, cada uno de los cuales
representa un rol.
getNewRoles()
Devuelve una matriz de los roles añadidos recientemente para la
persona.
getRemovedRoles()
Devuelve una matriz de los roles eliminados para la persona.
isInRole(String roleName)
Determina si la persona pertenece al rol. El resultado devuelto es
booleano.
removeRole()
Elimina la persona del rol especificado.
Person.getRoles()
Devuelve los roles asignados a una persona.
Disponibilidad
Tivoli Identity Manager 4.6
Consulta
91
Sinopsis
person.getRoles()
Descripción
Este método definido en el objeto Person devuelve una matriz de los roles
a los que pertenece la persona. El tipo de retorno es una matriz de
entidades, que serán instancias de objetos de entidad de directorio de roles.
Las propiedades disponibles en los objetos de entidad serán name y
description.
Uso
// logs the names of all roles that a person belongs to
var per = person.get();
var rolesArray = per.getRoles();
if(rolesArray.length>0){
Enrole.log("script", per.getProperty("cn")[0] +
" belongs to following roles: ");
for( var i=0; i<rolesArray.length;i++) {
Enrole.log("script",
rolesArray[i].getProperty("errolename")[0]);
}
} else {
Enrole.log("script", per.getProperty("cn")[0] +
"does not belong to any roles");
}
Person.getNewRoles()
Devuelve una matriz de los roles añadidos recientemente para una persona.
Disponibilidad
Tivoli Identity Manager 5.0
Sinopsis
person.getNewRoles()
Descripción
Este método definido en el objeto person devuelve una matriz de los roles
nuevos a los que pertenece la persona. El tipo de retorno es una matriz de
DirectoryObjects. Tenga en cuenta que el objeto person es con frecuencia
un objeto de tiempo de ejecución en memoria y estos roles nuevos no se
han añadido al directorio.
Uso
var newRoles = per.getNewRoles();
Person.getRemovedRoles()
Devuelve una matriz de los roles eliminados para la persona.
Disponibilidad
Tivoli Identity Manager 5.0
Sinopsis
person.getRemovedRoles()
Descripción
Este método definido en el objeto person devuelve una matriz de los roles
nuevos de los que la persona se ha eliminado. El tipo de retorno es una
matriz de DirectoryObjects. Tenga en cuenta que el objeto person es con
frecuencia un objeto de tiempo de ejecución en memoria y estos roles
nuevos no se han añadido al directorio.
Uso
92
Consulta
var removedRoles = per.getRemoveRoles();
Person.isInRole()
Evalúa si una persona pertenece a un rol.
Disponibilidad
Tivoli Identity Manager 4.6
Sinopsis
person.isInRole(roleName)
Argumentos
roleName
El nombre del rol a comprobar.
Descripción
Dado un objeto person y el nombre del rol, determina si la persona
pertenece al rol. Si el rol no se puede determinar de forma exclusiva por el
parámetro roleName o si la persona no se encuentra, se devuelve un objeto
de error.
Uso
// Check whether the person is in the role Manager and log a
// message
var per=person.get();
if(!per.isInRole("Manager")) {
Enrole.log("script",per.getProperty("cn")[0] +
"does not belong to role Manager");
} else {
Enrole.log("script",per.getProperty("cn")[0] +
"belong to role Manager");
}
Person.removeRole()
Elimina la persona del rol especificado.
Disponibilidad
Tivoli Identity Manager 5.0
Sinopsis
person.removeRole(role)
Argumentos
role
El objeto Role que representa el rol del que la persona se
ha eliminado.
Descripción
Elimina la persona del rol especificado. Tenga en cuenta que esta operación
sólo elimina el rol del objeto Person en tiempo de ejecución y no elimina el
rol del directorio.
Uso
//Remove the first role in the Person object
var roles = person.getRoles();
if (roles.length > 0) {
person.removeRole(roles[0]);
}
PersonSearch
Busca una persona.
Disponibilidad
Consulta
93
Tivoli Identity Manager 4.x
Contexto de Política de suministro
Contexto de Política de selección de servicios
Suministrado por
com.ibm.itim.script.extensions.model.PersonModelExtension
Constructor
new PersonSearch()
Devuelve
El objeto de búsqueda de persona recién creado e inicializado.
Métodos
searchByFilter()
Busca una persona por medio de un filtro.
Descripción
La entidad implementa la clase PersonSearch de IBM Tivoli
Identity Manager. El JavaDoc de la API para esta clase se encuentra
en el directorio siguiente:
$ITIM_HOME/extensions/api/com/ibm/itim/dataservices/model/domain/
PersonSearch.searchByFilter()
Busca una persona por medio de un filtro.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
personSearch.searchByFilter(profileName, filter, scope)
Argumentos
profileName
Nombre del perfil de persona que se utilizará.
filter
Filtro de búsqueda LDAP que define los criterios que
deben satisfacer los contenedores devueltos. El filtro debe
estar en el formato definido por RFC2254.
scope
Ámbito de búsqueda opcional. Utilice 1 para el ámbito de
un nivel y 2 para el ámbito de subárbol. El ámbito de un
nivel es el ámbito predeterminado.
Devuelve
Una matriz de DirectoryObjects que representa los resultados de la
búsqueda.
Descripción
Este método buscará una persona por medio de un filtro.
Uso
var personSearch = new PersonSearch();
var searchResult1 = personSearch.searchByFilter("Person",
"(sn=Smith)", 2);
// use default one level scope
var searchResult2 = personSearch.searchByFilter("Person",
"(sn=Smith)");
PostOffice
Objeto de oficina de correos que consolida las notificaciones.
94
Consulta
Disponibilidad
Tivoli Identity Manager 4.6.x
Suministrado por
com.ibm.itim.mail.postoffice.script.PostOfficeExtension
Métodos
getAllEmailMessages()
Obtiene el asunto, cuerpo del texto y cuerpo HTML de cada
mensaje individual contenido en un mensaje agregado.
getEmailAddress()
Contiene la dirección de correo electrónico que es el destino del
mensaje de correo electrónico agregado.
getPersonByEmailAddress()
Devuelve la persona que corresponde a la dirección de correo
electrónico especificada.
getTopic()
Devuelve el tema del mensaje de correo electrónico agregado.
La ampliación getAllEmailMessages() permite el acceso al objeto
NotificationMessage. Es importante tener en cuenta que no se debe llamar al
método getHtmlMessage() desde una plantilla. Esta llamada devuelve una versión
XHTML del texto de notificación. No es posible incluir documentos XML, de
manera que una llamada a este método podría dar como resultado un error en la
ejecución de la plantilla. Debe utilizar el cuerpo del texto de las notificaciones
originales llamando en su lugar a getMessage().
PostOffice.getAllEmailMessages()
Devuelve una matriz de objetos NotificationMessage.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
PostOffice.getAllEmailMessages()
Descripción
Esta ampliación JavaScript devuelve una matriz de objetos
NotificationMessage adecuados para obtener el asunto, cuerpo del texto y
cuerpo HTML de cada mensaje individual contenido en un mensaje
agregado.
Uso
A continuación se muestra un ejemplo de cómo iterar por medio de la
matriz devuelta en JavaScript:
Here are the email text bodies fetched using the JavaScript extension:
<JS>
var msgListIterator =
PostOffice.getAllEmailMessages().iterator();
var returnString = "<br />";
while (msgListIterator.hasNext()) {
returnString = returnString +
msgListIterator.next().getMessage() + "<br />";
}
return returnString;
</JS>
PostOffice.getEmailAddress()
Devuelve la dirección de correo electrónico del destino del correo electrónico
agregado.
Consulta
95
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
PostOffice.getEmailAddress()
Descripción
Esta ampliación JavaScript devuelve una cadena que contiene la dirección
de correo electrónico que es el destino del mensaje de correo electrónico
agregado.
Uso
destinationAddress = PostOffice.getEmailAddress();
PostOffice.getPersonByEmailAddress()
Devuelve el objeto Person que corresponde a este mensaje de correo electrónico.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
PostOffice.getPersonByEmailAddress(String email)
Descripción
Esta ampliación JavaScript devuelve el objeto Person que corresponde a la
dirección de correo electrónico especificada.
Uso
targetPerson = PostOffice.getPersonByEmailAddress()
Ejemplos:
targetPerson = PostOffice.getPersonByEmailAddress(″[email protected]″);
targetPerson =
PostOffice.getPersonByEmailAddress(PostOffice.getEmailAddress());
PostOffice.getTopic()
Devuelve la cadena de tema del correo electrónico agregado.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
PostOffice.getTopic()
Descripción
Esta ampliación JavaScript devuelve una cadena que contiene el tema del
mensaje de correo electrónico agregado.
Uso
topicString = PostOffice.getTopic();
Process
Un proceso de flujo de trabajo de IBM Tivoli Identity Manager.
Disponibilidad
Tivoli Identity Manager 4.x
Suministrado por
El objeto JavaScript Process en WorkflowExtension devuelve un objeto
Process que representa el proceso de flujo de trabajo actual; los procesos
principales del flujo de trabajo actual se pueden devolver llamando de
forma recursiva a Process.getParent(), y el proceso principal también es un
objeto Process.
Propiedades
96
Consulta
Nota: Se da soporte a los códigos de resultado personalizados en el
diseñador de flujos de trabajo para las actividades de aprobación.
APPROVED
Código de resumen de un proceso aprobado. El código de
resultado es AA.
ESCALATED
Código de resumen de un proceso intensificado. El código de
resultado es ES.
FAILED
Código de resumen de un proceso erróneo. El código de resultado
es SF.
PARTICIPANT_RESOLVE_FAILED
Código de resumen de un proceso erróneo resuelto por el
participante. El código de resultado es PF.
PENDING
Código de resumen de un proceso pendiente. El código de
resultado es PE.
REJECTED
Código de resumen de un proceso rechazado. El código de
resultado es AR.
SUBMITTED
Código de resumen de un proceso enviado. El código de resultado
es RS.
SUCCESS
Código de resumen de un proceso correcto. El código de resultado
es SS.
TIMEOUT
Código de resumen de un proceso que ha excedido el tiempo de
espera. El código de resultado es ST.
WARNING
Código de resumen de un proceso de aviso. El código de resultado
es SW.
comment
Proporciona información adicional acerca del proceso dado cuando
se realiza la definición en el diseñador de flujos de trabajo.
description
Describe la finalidad del proceso especificado cuando se definió en
el diseñador de flujos de trabajo.
id
Asignado por el diseñador de flujos de trabajo para identificar de
forma exclusiva el proceso de flujo de trabajo del motor de flujo de
trabajo.
name
Etiqueta que se otorga a esta actividad cuando se define en el
diseñador de flujos de trabajo.
parentId
Identifica de forma exclusiva el proceso principal (si existe) que ha
invocado este proceso.
Consulta
97
requesteeDN
Identifica de forma exclusiva la persona a la que se solicita si es un
usuario en el almacén de datos de IBM Tivoli Identity Manager.
requesteeName
Nombre de la persona a la que se solicita del proceso.
requestorName
Nombre del solicitante del proceso si es un usuario.
requestorType
Categoriza al solicitante
resultDetail
Una cadena específica de la aplicación que proporciona más
detalles acerca del resultado del proceso.
resultSummary
Una cadena específica de la aplicación que representa el resultado
de resumen del proceso.
started
Indica cuándo se inició el proceso.
state
Código que representa el estado actual del proceso.
subject
Describe el objeto que es el punto focal del proceso de flujo de
trabajo.
type
Código que categoriza el proceso dado cuando se definió en el
diseñador de flujos de trabajo.
Métodos
auditEvent()
Crea un suceso en el seguimiento de auditoría específico para la
actividad.
getActivity()
Devuelve una actividad con el índice y el ID dados.
getParent()
Obtiene el proceso principal (si existe) que ha invocado el proceso.
getRootProcess()
Devuelve el objeto del proceso JavaScript que contiene información
acerca del proceso raíz.
getRootRequesterName()
Devuelve la cadena del nombre del solicitante del proceso raíz.
setRequesteeData()
Cambia los datos de la persona a la que se solicita para el proceso
actual.
setResult()
Cambia el miembro de resultado de la actividad en la actividad
actual.
setSubjectData()
Cambia los datos del asunto para el proceso actual.
98
Consulta
Descripción
Esta entidad representa el proceso de flujo de trabajo que se está
ejecutando actualmente.
Process.auditEvent()
Crea un suceso en el seguimiento de auditoría.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
process.auditEvent(event)
Argumentos
event
Cadena que representa el suceso que se auditará.
Descripción
Este método creará un suceso en el seguimiento de auditoría específico
para el proceso. La función acepta un parámetro que puede ser cualquier
objeto JavaScript que pueda convertirse en una cadena para su
almacenamiento. En el seguimiento de auditoría, se agregará
automáticamente una indicación de fecha y hora al suceso.
Uso
process.auditEvent("Task completed");
Process.comment
Proporciona información adicional acerca del proceso.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
process.comment
Descripción
Este campo de sólo lectura es una cadena que proporciona información
adicional sobre el proceso especificado cuando se definió en el diseñador
de flujos de trabajo.
Uso
x = process.comment;
Process.description
Finalidad del proceso.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
process.description
Descripción
Este campo de sólo lectura es una cadena que describe la finalidad del
proceso especificado cuando se definió en el diseñador de flujos de trabajo.
Uso
x = process.description;
Process.getActivity()
Devuelve una actividad con el índice y el ID dados.
Disponibilidad
Tivoli Identity Manager 4.x
Consulta
99
Sinopsis
process.getActivity(id, index)
Argumentos
id
ID de actividad asignado por el diseñador de flujos de
trabajo.
index
Identifica opcionalmente la actividad específica si hay más
de una actividad con el ID dado.
Devuelve
Actividad asociada.
Descripción
Este método devolverá una actividad con el índice y el ID dados, en el
caso de que haya más de una actividad con el ID dado. Esto podría ocurrir
si se llama varias veces a la actividad del ID especificado dentro de un
bucle del proceso de flujo de trabajo. Si no existe ninguna actividad que
tenga el ID ni el índice especificados, esta función devuelve null (nulo). Si
no se especifica el índice opcional y si hay más de una actividad con el ID
dado, se devolverá la primera actividad con el ID dado.
Uso
theFirstActivity = process.getActivity("id1", 3);
theActivityName = theFirstActivity.name;
theSecondActivity = process.getActivity("id2");
theActivityName = theSecondActivity.name;
Process.getParent()
Devuelve el proceso principal (si existe) que ha invocado el proceso.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
process.getParent()
Devuelve
Proceso principal. Si no existe ningún proceso principal, se
devuelve null (nulo).
Descripción
Este método devolverá el proceso principal (si existe) que haya invocado el
proceso.
Uso
parent = process.getParent();
parentName = parent.name;
Process.getRootProcess()
Devuelve el proceso raíz (si existe) que ha invocado el proceso.
Disponibilidad
Tivoli Identity Manager 5.0
Sinopsis
process.getRootProcess()
100
Consulta
Devuelve
El proceso raíz. Si no existe ningún proceso raíz, se devuelve null (nulo).
Descripción
Este método el proceso raíz (si existe) de este proceso.
Uso
root = process.getRootProcess();
rootName = root.name;
Process.getRootRequesterName()
Devuelve el nombre del solicitante raíz.
Disponibilidad
Tivoli Identity Manager 4.6
Sinopsis
process.getRootRequesterName()
Descripción
Este método devuelve el nombre del solicitante raíz del iniciador del
proceso de flujo de trabajo.
Uso
rootRequester = process.getRootRequesterName();
Process.id
Identificador exclusivo asignado al proceso.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
process.id
Descripción
Este campo de sólo lectura es una cadena asignada por el diseñador de
flujos de trabajo para identificar de forma exclusiva el proceso de flujo de
trabajo del motor de flujo de trabajo.
Uso
x = process.id;
Process.name
Etiqueta asignada al proceso.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
process.name
Descripción
Este campo de sólo lectura es una cadena asignada por el diseñador de
flujos de trabajo para etiquetar este proceso.
Uso
x = process.name;
Process.parentId
Identifica de forma exclusiva el proceso principal que ha invocado este proceso.
Disponibilidad
Tivoli Identity Manager 4.x
Consulta
101
Sinopsis
process.parentId
Descripción
Este campo de sólo lectura es una representación de cadena del entero
largo que identifica de forma exclusiva el proceso principal (si existe) que
ha invocado este proceso.
Uso
x = process.parentId;
Process.requesteeDN
Identifica de forma exclusiva la persona a la que se solicita si es un usuario en el
almacén de datos de IBM Tivoli Identity Manager.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
process.requesteeDN
Descripción
Este campo de sólo lectura es una cadena que identifica de forma exclusiva
a la persona a la que se solicita si es un usuario del almacén de datos de
IBM Tivoli Identity Manager. No todas las personas a las que se solicita
son usuarios (es decir, el proceso podría actuar en una política, no en un
usuario directamente), de forma que este miembro puede estar vacío.
Uso
x = process.requesteeDN;
Process.requesteeName
Nombre de la persona a la que se solicita del proceso como una cadena.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
process.requesteeName
Descripción
Este campo de sólo lectura es una cadena que proporciona el nombre de la
persona a la que se solicita, si es un usuario del almacén de datos de IBM
Tivoli Identity Manager. No todas las personas a las que se solicita son
usuarios (es decir, el proceso podría actuar en una política, no en un
usuario directamente), de forma que este miembro puede estar vacío.
Uso
x = process.requesteeName;
Process.requestorName
Nombre del solicitante del proceso si es un usuario.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
process.requestorName
Descripción
Este campo de sólo lectura es una cadena que representa el nombre del
solicitante del proceso, si es un usuario.
Uso
if (process.requestorType == "U")
x = process.requestorName;
102
Consulta
Process.requestorType
Categoriza al solicitante.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
process.requestorType
Descripción
Este campo de sólo lectura es una cadena que categoriza al solicitante. Las
categorías o tipos potenciales son:
v U para usuario
v S para el motor de flujo de trabajo
v P para el sistema
Uso
x = process.requestorType;
if (x == "U")
...
else if (x == "S")
...
else if (x == "P")
...
Process.resultDetail
Información detallada sobre el resultado del proceso.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
process.resultDetail
Descripción
Este campo de sólo lectura es una cadena específica de la aplicación que
proporciona más información sobre el resultado del proceso.
Uso
x = process.resultDetail;
Process.resultSummary
Resumen del resultado del proceso.
Disponibilidad
Tivoli Identity Manager 4.x
Descripción
Este campo de sólo lectura es una cadena específica de la aplicación que
proporciona un resumen del resultado del proceso.
Uso
x = process.resultSummary;
Process.setRequesteeData()
Cambia los datos de la persona a la que se solicita para el proceso actual.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
process.setRequesteeData(person)
Argumentos
Consulta
103
person
Objeto DirectoryObject que representa la nueva persona a
la que se solicita.
Descripción
Este método cambiará los datos de la persona a la que se solicita para el
proceso actual. No se permite para un proceso que no sea el proceso
actual. Actualiza el proceso actual no sólo en el script, sino también en el
motor de flujo de trabajo. El argumento requesteeData debe contener el
nombre distinguido de una persona o un conjunto de cadenas de las que
se puedan extraer los datos de la persona a la que se solicita.
Uso
process.setRequesteeData(person);
Process.setResult()
Cambia el miembro de resultado del proceso.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
process.setResult(summary, detail)
Argumentos
summary
Código de cadena que representa el resumen del resultado.
detail Cadena que representa los detalles del resultado.
Descripción
Este método cambiará en función del miembro de resultado del proceso en
el proceso actual. Está soportado para las actividades actuales en el proceso
de flujo de trabajo actual. El resultado se compone de un código de
resumen específico de la aplicación y de una descripción opcional más
detallada específica de la aplicación. El código de resumen puede indicar si
un resultado es correcto o no. Este código de resumen se almacena como
miembro resultSummary localmente, y se actualiza en los datos relevantes
del motor de flujo de trabajo. La información detallada se almacena como
miembro resultDetail localmente y se actualiza en los datos relevantes del
motor de flujo de trabajo.
Uso
process.setResult(process.FAILED, "Unable to connect to resource");
Process.setSubjectData()
Cambia los datos del asunto para el proceso actual.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
process.setSubjectData(person)
Argumentos
person
Objeto DirectoryObject que representa el nuevo asunto.
Descripción
Este método cambiará los datos del asunto para el proceso actual. No se
permite para un proceso que no sea el proceso actual. Actualiza el proceso
actual no sólo en el script, sino también en el motor de flujo de trabajo. El
104
Consulta
argumento subjectData debe contener el nombre distinguido de una
persona o un conjunto cadenas de las que se puedan extraer los datos del
asunto.
Uso
process.setSubjectData(person);
Process.started
Fecha en JavaScript que indica el momento en que se inició el proceso.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
process.started
Descripción
Este campo de sólo lectura es cadena de código que representa la fecha en
JavaScript que indica el momento en que se inició el proceso.
Uso
x = process.started;
Process.state
Estado actual del proceso.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
process.state
Descripción
Este campo de sólo lectura es cadena de código que representa el estado
actual del proceso. El estado puede tener los siguientes valores:
v R para en ejecución
v I para no iniciado
v T para terminado
v A para anulado
v S para suspendido
v C para completado
v B para omitido
Uso
if (process.state == "S") {
...
}
Process.subject
Objeto que es el punto focal del proceso de flujo de trabajo.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
process.subject
Descripción
Este campo de sólo lectura es una cadena de código que describe el objeto
que es el punto focal del proceso de flujo de trabajo. Puede ser una
identidad del sistema, una cuenta, una política u otro objeto.
Consulta
105
Uso
x = process.subject;
Process.type
Tipo de proceso.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
process.type
Descripción
Este campo de sólo lectura es cadena de código que categoriza el proceso
dado cuando se define en el diseñador de flujos de trabajo.
Uso
x = process.type;
ProcessData
Entidad de datos de proceso del flujo de trabajo.
Disponibilidad
Tivoli Identity Manager 4.x
Contexto de Flujo de trabajo
Suministrado por
com.ibm.itim.workflow.script.WorkflowExtension
Métodos
get()
Devuelve un objeto JavaScript que representa el valor del elemento
de datos relevantes.
set()
Cambia el valor del elemento de datos relevantes.
Descripción
Cada proceso de flujo de trabajo dispone de un conjunto de datos
relevantes o parámetros específicos del proceso, que pueden leerse o
cambiarse desde un script de flujo de trabajo. El nombre y la sintaxis de
estos parámetros, o los elementos de datos relevantes, se definen en el
diseñador de flujos de trabajo y normalmente son específicos para el
proceso del flujo de trabajo. Por ejemplo, al añadir un usuario, un objeto
que contiene todos los atributos del nuevo usuario puede ser un elemento
de datos relevantes. Sin embargo, al suprimir un usuario, el único
elemento de datos relevantes puede ser el nombre distinguido del usuario
que debe suprimirse.
Cada elemento de datos relevantes se representará en el script de flujo de
trabajo como una variable, con el mismo ID de datos relevantes definido
en el diseñador de flujos de trabajo.
ProcessData.get()
Cambia los datos del asunto para el proceso actual.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
processData.get()
Devuelve
Devuelve un objeto JavaScript que representa el valor del elemento
de datos relevantes.
106
Consulta
Descripción
Este método devuelve un objeto JavaScript que representa el valor del
elemento de datos relevantes. Aunque existe una variable presente para
cada elemento de datos relevantes en el contexto del script, por motivos de
rendimiento los valores no se recuperan del motor de flujo de trabajo hasta
que el script solicita explícitamente los valores, mediante esta llamada. El
objeto JavaScript devuelto tendrá la misma sintaxis que se ha definido en
el diseñador de flujos de trabajo.
Uso
dn = subjectDN.get();
ProcessData.set()
Cambia el valor del elemento de datos relevantes.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
processData.set(value)
Argumentos
value
Valor a utilizar para actualizar el elemento de datos
relevantes.
Descripción
Este método cambia el valor del elemento de datos relevantes. Actualiza el
elemento de datos relevantes no sólo en el script, sino también en el motor
de flujo de trabajo. El nuevo valor es un parámetro para la función. El
nuevo valor debe ser compatible con la sintaxis del elemento de datos
relevantes definida en el diseñador de flujos de trabajo. Por ejemplo, si el
elemento de datos relevantes es un entero, el valor cat no podrá ser un
parámetro válido para esta función.
Uso
processData.set("engineering");
RecertificationWorkflow
Proporciona funciones ampliadas a los flujos de trabajo de recertificación de
usuarios, incluido el soporte de auditoría para las funciones de creación de
informes y ver solicitudes.
Disponibilidad
Tivoli Identity Manager 5.1
Métodos
auditCompletion(person, recertPolicy, approvalDoc)
Realiza una auditoría completa de las decisiones tomadas durante
una actividad de aprobación de paquete de recertificación de
usuarios, incluidos los datos para la creación de informes y ver
solicitudes.
auditTimeout(person, recertPolicy, approvalDoc)
Realiza una auditoría completa de las decisiones establecidas
durante el tiempo de espera excedido de la actividad de
aprobación de paquete de recertificación de usuarios, incluidos los
datos para la creación de informes y ver solicitudes.
auditCompletion(person, recertPolicy, approvalDoc, auditForReports,
auditForViewRequests)
Realiza una auditoría de las decisiones tomadas durante una
actividad de aprobación de paquete de recertificación de usuarios.
Consulta
107
El valor del indicador booleano auditForReports determina si se
crea una entrada de auditoría para la creación de informes. El
valor del indicador booleano auditForViewRequests determina si se
crea una entrada de auditoría para ver solicitudes.
RecertificationWorkflow.auditTimeout(person, recertPolicy, approvalDoc,
auditForReports, auditForViewRequests)
Realiza una auditoría de las decisiones establecidas durante un
tiempo de espera excedido de la actividad de aprobación de
paquete de recertificación de usuarios. El valor del indicador
booleano auditForReports determina si se crea una entrada de
auditoría para la creación de informes. El valor del indicador
booleano auditForViewRequests determina si se crea una entrada
de auditoría para ver solicitudes.
Uso
RecertificationWorkflow.auditCompletion(Entity.get(), Policy.get(),
ApprovalDocument.get())
RecertificationWorkflow.auditTimeout(Entity.get(), Policy.get(),
ApprovalDocument.get(), false, true)
Reminder
Recordatorio de tareas pendientes.
Disponibilidad
Tivoli Identity Manager 4.x
Contexto de Recordatorio
Suministrado por
com.ibm.itim.script.extensions.ReminderExtension
Métodos
Reminder.getOriginalSubject()
Este método devuelve el asunto de la notificación original enviada
cuando el elemento de trabajo se asignó por primera vez.
Reminder.getXhtmlBody()
Este método devuelve el cuerpo XHTML de la notificación original
enviada cuando el elemento de trabajo se asignó por primera vez.
Reminder.getTextBody()
Este método devuelve el cuerpo del texto de la notificación original
enviada cuando el elemento de trabajo se asignó por primera vez.
Reminder.getRemindersSent()
Este método devuelve el número de recordatorios enviados
previamente.
Reminder.getEscalationTime()
Este método devuelve una serie que contiene la fecha y la hora en
que el elemento de trabajo se intensificará a menos que se realice
una acción en el mismo.
Reminder.getEscalationDate()
Este método devuelve una fecha que contiene la fecha y la hora en
que el elemento de trabajo se intensificará a menos que se realice
una acción en el mismo.
Descripción
Una recordatorio de actividad de tarea pendiente informa al participante
que IBM Tivoli Identity Manager precisa de la acción del usuario.
108
Consulta
Role
Rol asociado a una operación de suministro.
Disponibilidad
Tivoli Identity Manager 4.x
Suministrado por
com.ibm.itim.script.extensions.model.RoleModelExtension
Constructor
new Role(dn)
Devuelve
Un objeto Role nuevo que representa el rol con el DN dado.
Métodos
getOwner()
Devuelve una matriz de DirectoryObjects que representa cualquier
persona que tenga una relación de propietario con este rol.
Hereda de
DirectoryObject
Sinopsis
role.dn;
Descripción
El objeto Role está disponible en el contexto de una política de suministro.
Role.getOwner()
Devuelve una matriz de DirectoryObjects que representa cualquier persona que
tenga una relación de propietario con este rol.
Disponibilidad
Tivoli Identity Manager 5.0
Sinopsis
Role.getOwner()
Devuelve
Matriz de DirectoryObjects que representa los propietarios de este
rol, o null (nulo) si no hay propietarios.
Uso
var owners = role.getOwner();
RoleSearch
Busca un rol.
Disponibilidad
Tivoli Identity Manager 4.x
Suministrado por
com.ibm.itim.script.extensions.model.RoleModelExtension
Constructor
new RoleSearch()
Devuelve
El objeto de búsqueda de rol recién creado e inicializado.
Métodos
searchByName()
Busca un rol por nombre.
Consulta
109
RoleSearch.searchByName()
Busca un rol por medio de un nombre.
Disponibilidad
Tivoli Identity Manager 4.6
Sinopsis
RoleSearch.searchByName(name)
Argumentos
name
Nombre de rol que utilizar como base para la búsqueda.
Devuelve
Matriz de DirectoryObjects que representa un rol.
Descripción
Dado el nombre de un rol, busca la entidad Role. Devolverá null (nulo) si
no hay ningún rol que coincida exactamente.
Uso
// Given the name of a role, see if it exists and log its
// description
var roles = (new RoleSearch()).searchByName("testRole");
if (roles.length >= 1) {
if (roles[0].getProperty("errolename")[0] == "testRole") {
Enrole.log("script", "The Role "+ roles[0].getProperty("errolename")[0] +
"has Description :" + roles[0].getProperty("description")[0]);
}
}
SeparationOfDutyRuleViolation
Objeto que proporciona información sobre una infracción específica de regla de
separación de funciones. Utilice este objeto para obtener información específica
sobre una infracción de política de separación de funciones. Este objeto no se
puede crear para que lo utilice el usuario. El usuario sólo puede trabajar con
objetos SeparationOfDutyRuleViolation que el sistema ha generado como parte del
flujo de trabajo approveSoDViolation.
Disponibilidad
Tivoli Identity Manager 5.1
Suministrado por
com.ibm.itim.script.wrappers.generic.IRuleResultWrapper
Métodos
getName()
Devuelve el nombre de la regla de política de separación de
funciones a la que corresponde esta infracción.
getViolationString()
Proporciona una cadena que representa la lista de roles que causan
la infracción. Describe los roles de una persona que causan la
infracción y el rol de una regla de separación de funciones al que
corresponden. Las listas de roles pueden ser distintas debido a la
jerarquía de roles.
getViolationStringHTMLTable()
Devuelve una versión de cadena de los roles que causan la
infracción para utilizarlos en una tabla HTML o plantilla de correo
electrónico.
110
Consulta
getPolicyName()
Devuelve el nombre de la política de separación de funciones que
contiene la regla que causa la infracción.
getPolicyDescription()
Devuelve una descripción de la política de separación de
funciones.
getPolicyOwnerDNs()
Devuelve un conjunto de los nombres distinguidos de uno o más
propietarios de la política de separación de funciones.
getCardinality()
Devuelve una cadena que representa el número de roles permitidos
en la regla de política de separación de funciones que causa la
infracción.
Service
Servicio asociado a una operación de suministro.
Disponibilidad
Tivoli Identity Manager 4.x
Suministrado por
com.ibm.itim.script.extensions.model.ServiceModelExtension
Constructor
new Service(dn)
Devuelve
Un objeto Service nuevo que representa el servicio con el DN dado.
Hereda de
DirectoryObject
Sinopsis
service.dn;
Descripción
El objeto service está disponible en el contexto de una política de
suministro y política de selección de servicios.
ServiceSearch
Busca un servicio.
Disponibilidad
Tivoli Identity Manager 4.x
Contexto de Política de suministro
Contexto de Política de selección de servicios
Suministrado por
com.ibm.itim.script.extensions.model.ServiceModelExtension
Métodos
searchByFilter()
Busca un servicio por medio de un filtro.
searchByName()
Busca un servicio por medio de un nombre.
Consulta
111
searchForClosestToPerson()
Busca el servicio más cercano a la persona.
Descripción
Este objeto se utiliza para proporcionar posibilidades de búsqueda a los
servicios de IBM Tivoli Identity Manager.
ServiceSearch.searchByFilter()
Busca un servicio por medio de un filtro.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
ServiceSearch.searchByFilter(filter, scope)
Argumentos
filter
Filtro de búsqueda LDAP que define los criterios que
deben satisfacer los contenedores devueltos. El filtro debe
estar en el formato definido por RFC2254.
scope
Ámbito de búsqueda opcional. Utilice 1 para el ámbito de
un nivel y 2 para el ámbito de subárbol. El ámbito de un
nivel es el ámbito predeterminado.
Devuelve
Una matriz de DirectoryObjects que representa los resultados de la
búsqueda.
Descripción
Este método buscará un servicio por medio de un filtro.
Uso
searchResult1 =
ServiceSearch.searchByFilter("(erntlocalservername=*srv)", 2);
// use default one level scope, put statement on one line
searchResult2 =
ServiceSearch.searchByFilter("(erntlocalservername=*srv)");
ServiceSearch.searchByName()
Busca un servicio por medio de un nombre.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
ServiceSearch.searchByName(name, profileName, scope)
Argumentos
name
Nombre de servicio, proporcionado como cadena, que
utilizar como base para la búsqueda.
profileName
Nombre de perfil opcional, proporcionado como una
cadena. Es el nombre de perfil del servicio a utilizar como
base para la búsqueda.
scope
112
Consulta
Ámbito de búsqueda opcional, proporcionado como un
entero. Utilice 1 para el ámbito de un nivel y 2 para el
ámbito de subárbol. El ámbito de un nivel es el ámbito
predeterminado. Cuando se utiliza este método en
JavaScripts de flujo de trabajo, es necesario que se
establezca el parámetro del ámbito en subárbol, porque el
contexto de búsqueda lógica se limita al inquilino (sobre la
organización predeterminada). En este contexto, si se
establece el ámbito de un nivel, se devolverán resultados
vacíos durante una búsqueda porque no hay servicios en el
nivel del inquilino.
Devuelve
Una matriz de DirectoryObjects que representa los resultados de la
búsqueda.
Descripción
Este método buscará un servicio por medio de un nombre.
Uso
searchResult1 = ServiceSearch.searchByName("US NT Service", 2);
// use default one level scope
searchResult2 = ServiceSearch.searchByName("US NT Service");
ServiceSearch.searchForClosestToPerson()
Busca el servicio más cercano a la persona.
Disponibilidad
Tivoli Identity Manager 4.x
Sinopsis
ServiceSearch.searchFprClosestToPerson(person, scope)
Argumentos
person
Objeto DirectoryObject que representa a una persona que
se utilizará como base para la búsqueda.
scope
Ámbito de búsqueda opcional. Utilice 1 para el ámbito de
un nivel y 2 para el ámbito de subárbol. El ámbito de un
nivel es el ámbito predeterminado.
Devuelve
Una matriz de DirectoryObjects que representa los resultados de la
búsqueda.
Descripción
Este método buscará un servicio más cercano a la persona.
Uso
searchResult1 = ServiceSearch.searchForClosestToPerson(subject, 2);
// use default one level scope
searchResult2 = ServiceSearch.searchForClosestToPerson(subject);
Casos de ejemplo de uso de parámetros de política de suministro
Los casos de ejemplo siguientes muestran el uso de los parámetros de política de
suministro.
Consulta
113
Caso de ejemplo 1: No se ha definido ningún atributo
Si no se seleccionan valores de parámetro para un atributo de varios valores, todos
los valores de este atributo son válidos.
Si se agrega un parámetro para un atributo de varios valores con el tipo de
parámetro como Allowed (válido), todos los demás valores para este atributo se
excluyen explícitamente para esta política.
Si un valor de atributo se agrega a una política como válido, todos los demás
valores se excluyen implícitamente para este parámetro de la política.
Para varias titularidades aplicables, la directiva de unión para el atributo
determina un valor de atributo válido. Consulte los casos de ejemplo siguientes.
Caso de ejemplo 2: Directiva de unión de política de suministro
basada en prioridades
La tabla siguiente identifica dos ejemplos de políticas de suministro:
Tabla 9. Ejemplos de políticas de suministro
Política
Descripción
Política 1
Prioridad = 1 Atributo: erdivision = divisionA, enforcement = DEFAULT
Política 2
Prioridad = 2 Atributo: erdivision = divisionB, enforcement = MANDATORY
Debido a que la Política 1 tiene una prioridad más alta, sólo se utiliza la definición
de la Política 1 para el atributo erdivision. La definición de la Política 2 para el
atributo erdivision se omite.
Durante la validación de la política, incluida la conciliación con la opción de
comprobación de política activada, divisionA puede existir en el atributo
erdivision. Todos los demás valores son válidos, porque la única política que se
considera en una unión de prioridad es la Política 1, que tiene la imposición
DEFAULT en erdivision. La imposición DEFAULT en sí misma se interpreta como
válida para todos los valores, pero el valor predeterminado es el valor especificado
en la cuenta nueva.
Nota: Una directiva de unión de prioridad es la directiva de unión predeterminada
dada para todos los atributos de valor único y de tipo cadena.
Caso de ejemplo 3: Directiva de unión de política de suministro
basada en uniones
La tabla siguiente identifica dos ejemplos de políticas de suministro:
Tabla 10. Ejemplo de políticas de suministro
Política
Descripción
Política 1
Prioridad = 1 Atributo: localgroup = groupA, enforcement = DEFAULT
Política 2
Prioridad = 2 Atributo: localgroup = groupB, enforcement = MANDATORY
Debido a que la directiva de unión está definida como UNION, la política
resultante utiliza las definiciones siguientes para las políticas:
v Durante la creación de cuentas, localgroup se define como groupA y groupB.
114
Consulta
v Durante las conciliaciones, localgroup se define como groupB si el atributo no
está definido o se ha definido de forma incorrecta.
Nota: Una directiva de unión es la directiva de unión dada para atributos de
varios valores.
Parámetros de titularidad de la política de suministro
Los parámetros de política de suministro ayudan a los administradores del sistema
a definir los valores de atributo obligatorios y los valores permitidos.
Los tipos de parámetros siguientes son válidos:
v Valor constante
v Null (nulo)
v JavaScript
v Expresión regular
Los parámetros de suministro de una titularidad se pueden definir de forma
estática o dinámica. Los parámetros se definen estáticamente seleccionando el tipo
de parámetro constante y especificando valores literales, como cadenas o enteros.
Por ejemplo, un atributo se puede definir como Usuarios del dominio o Usuarios
avanzados. Un valor de parámetro definido dinámicamente se puede basar en una
función JavaScript. Se puede definir un rango de valores utilizando una expresión
regular.
Los parámetros también se pueden especificar como Null (nulo), lo que indica que
el parámetro no tiene valor. Esta situación es equivalente a tener un tipo de
parámetro JavaScript con el valor return null;
Los parámetros de suministro para atributos de valor único sólo pueden estar
basados en un código JavaScript o en una constante. Los parámetros de suministro
de un atributo de varios valores pueden utilizar como valor una constante, código
JavaScript o una expresión regular.
No obstante, una expresión regular se puede utilizar sólo para la imposición del
parámetro de suministro de tipo Allowed o Excluded (Permitido y Excluido).
Constante de la política de suministro
Se puede asignar un valor constante, estático, a un parámetro de titularidad para
un atributo de valor único o de varios valores mediante el tipo de parámetro
constante de política de suministro. El parámetro de suministro se puede definir
mediante un valor estático literal introduciendo el valor en el campo si el widget
de campo lo permite, o puede seleccionar un valor cuando el widget del campo lo
permita.
Tipos Null (nulo) de política de suministro
Se puede utilizar el tipo de parámetro null (nulo) para especificar un valor nulo
para un atributo de cuenta. Si el valor de un parámetro se especifica como null con
una imposición obligatoria, ningún valor es válido para este atributo. Puede definir
específicamente un valor null para el parámetro de suministro, que es equivalente
a especificar el valor como vacío.
Consulta
115
Funciones JavaScript de la política de suministro
Puede utilizar un script para definir parámetros de suministro.
Los parámetros de suministro de una titularidad dentro de una política de
suministro pueden definirse utilizando un script. El contexto del script es la
persona para la cual se impone la titularidad, el servicio que la titularidad protege
y el atributo eruid de la cuenta de destino.
El contexto del script incluye los elementos siguientes:
Subject
Propietario de la cuenta.
Service
Servicio en el que existe o se creará la cuenta.
uid
ID de usuario de la cuenta.
Context
Información acerca de la evaluación del parámetro, que puede ser la
validación de una cuenta nueva o la validación de una cuenta existente.
Hay disponible un objeto especial denominado parameters para eruid cuando se
evalúa el script en el contexto de los parámetros de la política de suministro. Para
obtener su valor, utilice la sintaxis siguiente:
parameters.eruid[0]
El valor de cero en esta sintaxis devuelve el primer valor del objeto de la matriz.
Un objeto JavaScript denominado subject representa a un usuario para el cual se
aplica la titularidad. El servicio está representado por otra entidad de modelo de
datos JavaScript llamada service. El autor del script utiliza los objetos subject y
service para acceder a los atributos de estos objetos.
Los valores de los atributos de los objetos que forman parte del contexto de
evaluación también se pueden recuperar con las funciones JavaScript
personalizadas de IBM Tivoli Identity Manager.
Para utilizar JavaScript para definir el valor de un atributo, el tipo de parámetro
JavaScript debe estar seleccionado. Seleccione JavaScript/Constante en el campo
Tipo de expresión.
Los ejemplos siguientes muestran el uso de las funciones JavaScript personalizadas
de IBM Tivoli Identity Manager dentro de las políticas de suministro. Para ver el
material de consulta completo de todas las funciones JavaScript personalizadas,
consulte la sección Consulta de ampliaciones JavaScript.
Atributos de persona
Sintaxis:
subject.getProperty(String rowAttrName)
Ejemplo:
subject.getProperty("sn")[0];
Ejemplo:
116
Consulta
# Concatenates user's given name and family name with space in between.
# Resulting string value may be used to on account attribute such as
# Description.
{subject.getProperty("givenname")[0] + " " + subject.getProperty("sn")[0];}
Ejemplo:
# Set a user's Password attribute to the user's Shared Secret Attribute
# (if the account is automatically provisioned)
{
function passInit()
{var password = subject.getProperty("ersharedsecret");
if (password.length > 0){
return password[0];
} else {
return ""
}
}return
passInit();
}
Buscar persona
Sintaxis:
PersonSearch.searchByFilter(String profileName, String filter, [int scope])
donde scope=1 es una búsqueda de un nivel y scope=2 es una búsqueda de
subárbol.
Ejemplo:
PersonSearch.searchByFilter("Person", "(sn=Smith)", 1);
Buscar servicio
Sintaxis:
ServiceSearch.searchByFilter(String filter, [int scope])
donde scope=1 es una búsqueda de un nivel y scope=2 es una búsqueda de
subárbol.
Ejemplo:
ServiceSearch.searchByFilter("(erntlocalservername=*srv)", 1);
Servicio más próximo a la persona
Sintaxis:
ServiceSearch.searchForClosestToPerson(Person person, [int scope])
donde scope=1 es una búsqueda de un nivel y scope=2 es una búsqueda de
subárbol.
Ejemplo:
ServiceSearch.searchForClosestToPerson(subject);
Consulta
117
Nombre de la unidad de negocio donde se encuentra la persona
Sintaxis:
subject.getProperty(String propertyName)
Ejemplo:
subject.getProperty("Parent")[0].name;
Especificación del UID de cuenta actual
Sintaxis:
uid = parameters.eruid[0];
Ejemplo:
var accountId = parameters.eruid[0];
Sentencia Enrole.toGeneralizedTime
Sintaxis:
Enrole.toGeneralizedTime(Date date)
Ejemplos:
Utilizando la función para devolver la cadena de la fecha de hoy:
var gt = Enrole.toGeneralizedTime(new Date());
Utilizando la función para devolver la cadena de la fecha de hoy como un atributo
predeterminado:
{Enrole.toGeneralizedTime(new Date())}
Sentencia Enrole.toMilliseconds
Sintaxis:
Enrole.toMilliseconds(String generalizedTime)
Ejemplos:
var millis = Enrole.toMilliseconds("200101012004Z");
var date = new Date(millis);
Expresiones regulares de la política de suministro
Las expresiones regulares se utilizan para definir un patrón de coincidencia contra
el que comprobar el texto dado. En IBM Tivoli Identity Manager, las expresiones
regulares definen valores de parámetro permitidos y excluidos.
En IBM Tivoli Identity Manager, las expresiones regulares definen valores de
parámetro permitidos y excluidos. Los valores de parámetro con expresiones
regulares se utilizan contra los valores de atributo existentes para determinar
cuáles son válidos.
Para utilizar una expresión regular para un valor de parámetro de suministro,
seleccione Expresión regular en el menú Tipo de expresión.
Nota: Expresión regular sólo se puede utilizar con los atributos excluidos y
permitidos. Consulte la biblioteca regexp de Java para ver la sintaxis.
118
Consulta
Política de selección de servicios JavaScript
Una política de selección de servicios identifica el tipo de servicio del servicio
devuelto y JavaScript especifica el servicio. Por ejemplo, la definición de servicio se
puede basar en los atributos de un propietario de cuenta.
Objetos de la política de selección de servicios JavaScript
La política de selección de servicios JavaScript devuelve un objeto que representa
una entidad de servicio de IBM Tivoli Identity Manager.
El objeto JavaScript “subject” es un objeto Person que representa al propietario de
la cuenta. Se pueden utilizar los atributos de la persona para construir filtros para
buscar y devolver el servicio. ServiceModelExtension está disponible para la
política de selección de servicios de forma predeterminada.
La lista siguiente incluye las API para el objetoJavaScript ServiceSearch que se
pueden utilizar para devolver el servicio:
v ServiceSearch.searchByName
v ServiceSearch.searchByFilter
v ServiceSearth.searchForClosestToPerson
Consulte la guía de consulta de API de JavaScript para obtener información
detallada de estas API.
Ejemplo de script de política de selección de servicios
Esta sección incluye ejemplos de scripts de políticas de selección de servicios.
Selección de servicios basados en el apellido
El script siguiente devuelve una instancia de servicio basada en el apellido del
propietario de la cuenta. Se pueden utilizar otros atributos de la persona, como el
cargo y la ubicación, para seleccionar el servicio, como en este ejemplo.
function selectService() {
var sn = subject.getProperty("sn")[0];
var serviceInstance = null;
if(sn=="Jones") {
serviceInstanceArr = ServiceSearch.searchByFilter(
"(erservicename=NT40X)", 1);
if (serviceInstanceArr != null && serviceInstanceArr.length > 0)
serviceInstance = serviceInstanceArr[0];
} else {
serviceInstanceArr = ServiceSearch.searchByFilter(
"(erservicename=NT40Y)", 1);
if (serviceInstanceArr != null && serviceInstanceArr.length > 0)
serviceInstance = serviceInstanceArr[0];
}
return serviceInstance;
}
return selectService();
Búsqueda del servicio más cercano a la persona
El ejemplo siguiente busca el servicio más cercano al nivel propio de la persona,
basado en la estructura de árbol de la organización.
Consulta
119
function selectService() {
var services = ServiceSearch.searchForClosestToPerson(subject);
if (services != null && services.length > 0) {
return services[0];
}
}
return selectService();
Tipo de control Subformulario
El tipo de control Subformulario proporciona un medio para utilizar interfaces de
usuario personalizadas para atributos complejos de varios valores.
Algunos adaptadores de IBM Tivoli Identity Manager utilizan este tipo de control
con poca frecuencia.
Subformulario es un tipo de control especial que se utiliza para invocar una página
HTML estática, servlet o JSP desde una ventana emergente que se abre desde un
formulario de IBM Tivoli Identity Manager personalizado. Los subformularios
proporcionan un medio para enviar un número arbitrario de nombres de
parámetro y valores a un servlet o JSP personalizado y se utilizan para crear
interfaces de usuario personalizadas para los atributos complejos de varios valores.
Tabla 11. Parámetros de Subformulario
Parámetro
Descripción
Valor
customServletURI
Nombre de servlet o
La dirección URI de la página HTML
nombre de archivo JSP,
estática, servlet o JSP que debe invocarse
como sample.jsp
desde el formulario principal. Si se
implementa un Servlet y se despliega en la
aplicación web predeterminada de IBM
Tivoli Identity Manager, el valor de este
parámetro será el mismo que el valor
URL-pattern definido en web.xml en el
identificador servlet-mapping, sin la barra
inclinada (/). Si se implementa una JSP, el
valor de este parámetro es el archivo JSP
incluida la extensión de archivo jsp. Este
parámetro se necesita en todos los
subformularios.
Nombre de
parámetro
Valor del parámetro
Nombre de parámetro arbitrario y valor
que se incluye en la solicitud HTTP que
invoca el recurso en customServletURI. Por
ejemplo:
objectClass=erracfgrp
Para obtener más información, consulte el ejemplo de subformulario y otra
información en el subdirectorio ITIM_HOME/extensions/examples/ que
proporciona IBM Tivoli Identity Manager.
Parámetros contextuales de Subformulario
Como elemento hijo de un formulario principal, se pasan a un Subformulario
parámetros contextuales que ayudan a identificar el contexto desde el que se
invocó.
120
Consulta
Estos parámetros contextuales se incluyen en la solicitud HTTP que muestra el
Subformulario:
Tabla 12. Parámetros de Subformulario
Nombre de
parámetro
(contextual)
HTTP
Crear persona
target_dn
vacío
DN de la persona DN del
propietario de
cuenta
DN de la cuenta
container_dn
DN del
contenedor de
árbol de
organización
donde se creará
la persona.
vacío
DN del
propietario de
cuenta
DN del
propietario de
cuenta
search_base
vacío
vacío
DN del servicio
DN de la
instancia del
servicio en la
cual se
suministra una
cuenta
Modificar
persona
Crear cuenta
Modificar cuenta
Para asignar el valor de parámetro HTTP target_dn a una cadena declarada en el
interior de un servlet:
String targetDN = request.getParameter("target_dn");
Ejemplo de Modificar cuenta
Por ejemplo, para Modificar cuenta, los valores de los parámetros contextuales son:
target_dn
Es el DN de la entidad cuyos atributos aparecen en el formulario principal.
Si el Subformulario está situado en un formulario de cuenta RACF, este
valor de parámetro sería el nombre distinguido (DN) de la cuenta RACF.
container_dn
Es la entidad principal o el contenedor de la entidad. Por ejemplo, si el
Subformulario se coloca en un formulario de persona, este valor de
parámetro sería el nombre distinguido (DN) de la organización, la unidad
organizativa, el dominio Admin o la ubicación que es el contenedor o
principal de la persona.
search_base
Por ejemplo, si el Subformulario está colocado en un formulario de cuenta
RACF, este valor de parámetro sería el nombre distinguido (DN) de la
instancia de servicio RACF en la que se suministra la cuenta.
Convenio de denominación de parámetros de solicitud HTTP
Los creadores del Subformulario deben tener en cuenta que existe un convenio de
denominación utilizado en los parámetros de Subformulario para evitar las
colisiones con otros parámetros (como los parámetros contextuales).
El convenio de denominación de los parámetros de Subformulario es:
[prefijo].[nombre_atributo].[nombre_parámetro]
Consulta
121
donde:
prefijo
property.data
nombre_atributo
Nombre del atributo en el que se coloca el Subformulario en el formulario
principal.
nombre_parámetro
Nombre utilizado en el diálogo Editor de subformularios. Por ejemplo, un
parámetro HTTP denominado property.erracfconnectgroup.objectClass
contendrá el valor definido en el diálogo Editor de subformularios
asignado a objectClass.
Para asignar este valor a una cadena declarada dentro de un servlet:
String objectClass =
request.getParameter("property.data.erracfconnectgroup.objectClass");
Escritura de un Subformulario
Para escribir un Subformulario personalizado, cree un servlet que genere la
interfaz de usuario HTML para gestionar el valor del atributo.
Para guardar el valor, cree una instancia nueva de
com.ibm.itim.common.AttributeValue y enlácelo a una sesión HTTP del usuario
por medio de la clave definida en com.ibm.itim.webclient.util.FormData (en una
línea):
AttributeValue av = new AttributeValue("attributename", "customValue");
HttpSession session = request.getSession(false);
session.setAttribute("subFormAttrValue", av);
Así se asegura de que el valor se recoge y se agrega a los datos del formulario
recopilados desde los campos del formulario cuando se envíe el formulario
principal.
Archivos de propiedades suplementarios
En esta sección se proporciona información detallada acerca de los valores y las
claves de propiedad contenidos en los archivos de propiedades suplementarios de
IBM Tivoli Identity Manager.
Comprensión de los archivos de propiedades
Los archivos de propiedades Java definen los atributos que permiten personalizar y
controlar el software Java.
Los archivos de propiedades del sistema estándar y los archivos de propiedades
personalizadas se utilizan para configurar las preferencias de usuario y la
personalización del usuario. Un archivo de propiedades Java define los valores de
los recursos con nombre que pueden especificar opciones del programa, como la
información de acceso a la base de datos, los valores del entorno, y las funciones y
funcionalidad especiales.
Un archivo de propiedades define los recursos con nombre por medio de un
formato de par de clave y valor de propiedad:
nombre-clave-propiedad=valor
122
Consulta
nombre-clave-propiedad es un identificador para el recurso. El valor es normalmente
el nombre del objeto Java real que proporciona el recurso o una cadena que
representa el valor de la clave de propiedad, como por ejemplo,
database.name=itimdb. La sintaxis de la sentencia permite espacios antes y después
del signo igual (=) y puede distribuirse en varias líneas si coloca un carácter de
continuación de línea \ (una barra inclinada invertida) al final de la línea. Para
obtener más información acerca de la sintaxis de la sentencia, consulte las guías de
consulta del lenguaje Java.
IBM Tivoli Identity Manager utiliza algunos archivos de propiedades para
controlar la funcionalidad del programa y para permitir la personalización por
parte del usuario de las funciones especiales.
Archivos de propiedades modificables
Esta tabla enumera los archivos de propiedades de IBM Tivoli Identity Manager
que puede modificar.
La Tabla 13 enumera los archivos de propiedades de IBM Tivoli Identity Manager.
La mayoría de los archivos se encuentran en el directorio ITIM_HOME\data\.
Los archivos de propiedades adicionales no se pueden configurar y no se deben
modificar.
Tabla 13. Archivos de propiedades
Nombre del archivo de
propiedades
Descripción
adhocreporting
El archivo adhocreporting.properties da soporte al
módulo de informes personalizados.
crystal
El archivo crystal.properties almacena las propiedades
globales para el plug-in de Crystal Reports del módulo de
informes personalizados.
CustomLabels
Los pares de clave y valor de propiedad del archivo
CustomLabels.properties se utilizan en la interfaz de
usuario de Tivoli Identity Manager para visualizar el texto
de las etiquetas de los formularios.
DataBaseFunctions.conf
La función de informes personalizados de Tivoli Identity
Manager le permite utilizar las funciones de la base de
datos al diseñar las plantillas de informe personalizado.
enRole
El archivo de configuración del sistema enRole.properties
contiene muchas de las propiedades utilizadas para
configurar IBM Tivoli Identity Manager.
enroleAuditing
Los pares de clave y valor de propiedad del archivo
enroleAuditing.properties se utilizan para habilitar o
inhabilitar el seguimiento de los cambios realizados por un
usuario de Tivoli Identity Manager en los objetos
empresariales (persona, ubicación, servicio, etc.) o en la
configuración del sistema.
enRoleAuthentication
El archivo enRoleAuthentication.properties especifica el
tipo de método utilizado por el Tivoli Identity Manager
Server para autenticar a los usuarios e identifica el objeto
Java que proporciona el mecanismo de autenticación
especificado.
Consulta
123
Tabla 13. Archivos de propiedades (continuación)
Nombre del archivo de
propiedades
124
Consulta
Descripción
enRoleDatabase
El archivo enRoleDatabase.properties especifica las
propiedades que dan soporte a la base de datos relacional
utilizada por Tivoli Identity Manager.
enRoleLDAPConnection
El archivo enRoleLDAPConnections.properties proporciona
valores de configuración estándar que permite la
comunicación satisfactoria entre Tivoli Identity Manager y
el servidor de directorios LDAP.
enRoleLogging
El archivo enRoleLogging.properties especifica los
atributos que rigen el funcionamiento de la API de registro
y rastreo jlog que se proporciona con Tivoli Identity
Manager.
enRoleMail
El archivo enRoleMail.properties contiene atributos que
especifican el protocolo de transporte de correo que utiliza
la API de JavaMail y otras propiedades específicas de la
aplicación Tivoli Identity Manager. Debe proporcionar los
valores para las propiedades específicas de la aplicación.
enrolepolicies
El archivo enrolepolicies.properties proporciona valores
estándar y personalizados que dan soporte a las funciones
de la política de suministro.
enroleworkflow
El archivo enroleworkflow.properties especifica las
correlaciones de archivo XML para los flujos de trabajo
definidos por el sistema.
fesiextensions
El archivo fesiextensions.properties (en desuso)
proporciona soporte para las ampliaciones JavaScript Free
EcmaScript Interpreter (FESI) para versiones anteriores a la
5.0 de Tivoli Identity Manager. No cree nuevas ampliaciones
utilizando esta arquitectura en desuso.
helpmappings
El archivo helpmappings.properties permite a un cliente
sustituir el sistema de ayuda instalado de Tivoli Identity
Manager por un sistema de ayuda alternativo.
reportingLabels
Este archivo de propiedades es como otros archivos de
propiedades relacionados con etiquetas, como
labels.properties o customLabels.properties, y contiene
las etiquetas utilizadas por los informes.
reporttabledeny
De forma predeterminada, esta propiedad contiene una lista
de tablas de Tivoli Identity Manager utilizadas por varios
componentes de Tivoli Identity Manager para almacenar
datos internos o de configuración que no son adecuados
para un informe.
scriptframework
Para todas las nuevas ampliaciones JavaScript, utilice el
archivo scriptframework.properties para configurar las
ampliaciones de script y otras funciones de scripts.
SelfServiceHelp
El archivo SelfServiceHelp.properties puede utilizarse
para redirigir la ayuda a una ubicación personalizada para
los clientes que desean tener su propio contenido de ayuda
para la interfaz de usuario de autoservicio.
SelfServiceHomePage
El archivo SelfServiceHomePage.properties se utiliza para
configurar las secciones de la página de inicio inicialmente
instalada para la interfaz de usuario de autoservicio. En
este archivo, puede agregar y eliminar tareas, así como
actualizar URL de iconos y etiquetas de la página de inicio.
Tabla 13. Archivos de propiedades (continuación)
Nombre del archivo de
propiedades
Descripción
SelfServiceScreenText
El archivo SelfServiceScreenText.properties es un
paquete de recursos que contiene las etiquetas para la
interfaz de usuario de autoservicio.
SelfServiceUI
El archivo SelfServiceUI.properties controla varias
propiedades de la interfaz de usuario de autoservicio.
ui
El archivo ui.properties especifica los atributos que
afectan al funcionamiento y la visualización de la interfaz
gráfica de usuario de Tivoli Identity Manager.
Archivos de propiedades no modificables
Algunos archivos de propiedades no se pueden configurar y no se deben
modificar.
La Tabla 14 enumera los archivos de propiedades que IBM Tivoli Identity Manager
utiliza. En todos los casos, estos archivos no se pueden configurar y no se deben
modificar.
Tabla 14. Archivos de propiedades no modificables
Nombre del archivo de
propiedades
Descripción
ConfigErrorMessages
Este archivo lo utiliza el programa de utilidad
runConfig y contiene mensajes de error de configuración
en inglés. No lo modifique.
ConfigLabels
Este archivo lo utiliza el programa de utilidad
runConfig y contiene etiquetas de visualización de la
GUI de IBM Tivoli Identity Manager en inglés. No lo
modifique.
ConfigMessages
Este archivo lo utiliza el programa de utilidad
runConfig y contiene instrucciones de configuración y
mensajes normales en inglés. No lo modifique.
CustomForms
Este archivo se utiliza para la generación de formularios,
la visualización de formularios y el diseño de
formularios. No lo modifique.
CustomThemes
No lo modifique. Este archivo tiene temas
personalizados que los applets utilizan para dar soporte
a la accesibilidad.
Dsml2RootDSE
Este archivo se utiliza para realizar una búsqueda DSE
raíz (LDAP) para devolver un conjunto de atributos
acerca del servidor de IBM Tivoli Identity Manager. No
lo modifique.
Dsml2Schema
Este archivo se utiliza para realizar una búsqueda de
esquema (LDAP) para devolver clases de objeto y
atributos especificados en este archivo. No lo modifique.
enRole2ldif
Actualmente este archivo está en desuso y se utilizaba
para la migración desde enRole 3.x a 4.4. No lo
modifique.
Consulta
125
Tabla 14. Archivos de propiedades no modificables (continuación)
Nombre del archivo de
propiedades
Descripción
enRoleEntityHiddenAttributes
Este archivo se utiliza para filtrar los atributos de LDAP
de cada tipo de entidad ITIM disponible para la
correlación (por ejemplo, Organization, BPOrganization,
Person, BPPerson). No lo modifique.
enRoleFonts
Este archivo especifica nombres de font para idiomas de
entorno local. No lo modifique.
enRoleHelp
Este archivo contiene una lista de operaciones que no
aparecerán en el diseñador de flujos de trabajo. No lo
modifique.
enRoleHiddenAttributes
Este archivo contiene los atributos de cada clase de
objeto (por ejemplo, persona, servicio, cuenta, unidad
organizativa) que no son visibles para la GUI de IBM
Tivoli Identity Manager. Esta lista de atributos ocultos
contiene la mayoría de los atributos utilizados por el
sistema. No lo modifique.
enRoleHiddenOperations
No lo modifique.
enRoleHiddenSearchAttributes
Los atributos listados en este archivo no aparecerán en
las actividades de búsqueda ni en los detalles de
cualquier solicitud pendiente y completa. Este archivo se
utiliza para filtrar los atributos de datos de proceso que
no se deben mostrar en la interfaz de usuario.
No elimine las entradas existentes de este archivo, en
caso contrario la función de búsqueda de estos atributos
fallará. No lo modifique.
126
Consulta
enroleStartup
Este archivo se utiliza para especificar las actividades de
inicio en el entorno de WebSphere Application Server.
No lo modifique.
enRoleUnchangedAttributes
Este archivo lo utiliza el programa de utilidad de
actualización del servidor de directorios. No lo
modifique.
enRoleValidateAttributes
Este archivo lo utiliza internamente el servidor de IBM
Tivoli Identity Manager para la correlación de atributos
del esquema de la entidad. No lo modifique.
entitlementHiddenAttributes
Este archivo lo utiliza el servidor de IBM Tivoli Identity
Manager para filtrar los atributos gestionados del
sistema que no se deben visualizar en la selección de
parámetros de titularidad disponible. No lo modifique.
expressHiddenAttributes
Este archivo lo utilizaba el servidor de Tivoli Identity
Manager Express en la versión 4.6.x. No lo modifique.
HighContrastBigFontTheme
Este archivo se utiliza para especificar el aspecto de un
font grande de alto contraste, para la accesibilidad de
applet. No lo modifique.
HighContrastTheme
Este archivo se utiliza para especificar valores de
visualización de alto contraste para la accesibilidad de
applet. No lo modifique.
ibmSchemaSyntax
La configuración LDAP utiliza este archivo durante la
instalación de IBM Tivoli Identity Manager. No lo
modifique.
Tabla 14. Archivos de propiedades no modificables (continuación)
Nombre del archivo de
propiedades
Descripción
iplanetSchemaSyntax
La configuración LDAP utiliza este archivo durante la
instalación de IBM Tivoli Identity Manager. No lo
modifique.
itiminstaller
Este archivo se utiliza en la instalación de IBM Tivoli
Identity Manager. No lo modifique.
Labels
Este archivo contiene las etiquetas en inglés para la
visualización de la interfaz de usuario. No lo modifique.
Messages
Este archivo contiene todos los mensajes normales que
utiliza IBM Tivoli Identity Manager para comunicarse
con los usuarios. No lo modifique.
passwordrules
Este archivo se utiliza para especificar la clase
personalizada para generar contraseñas. IBM Tivoli
Identity Manager proporciona un generador de
contraseñas predeterminado.
En el archivo passwordrules.properties de ejemplo, la
primera línea contiene el nombre de la clase. La segunda
línea define los requisitos de entrada de la clase definida
en la línea 1. Es posible que su sitio necesite reglas
adicionales para utilizarlo en producción. No lo
modifique.
platformcontext
Este archivo especifica información de contexto de
plataforma de suministro. No lo modifique.
Properties
Este archivo es el archivo de propiedades de nivel
principal que indica la vía de acceso real al archivo de
propiedades. No lo modifique.
subform
El servidor de IBM Tivoli Identity Manager utiliza este
archivo para los subformularios. No lo modifique.
tenant
Este archivo se utiliza para la creación de un nuevo
inquilino. No lo modifique.
tmsMessages
Este archivo contiene todos los mensajes de error. No lo
modifique.
TungstenTheme
Este archivo establece valores de visualización para la
accesibilidad de applet. No lo modifique.
adhocreporting.properties
El archivo adhocreporting.properties da soporte al módulo de informes
personalizados.
La Tabla 15 define las propiedades utilizadas para configurar los informes.
Tabla 15. Propiedades de adhocreporting.properties
Generación de informes
reportPageSize
Consulta
127
Tabla 15. Propiedades de adhocreporting.properties (continuación)
Indica el número de filas que se muestran en cada página de un informe PDF. El
número máximo de filas de una página no debe superar las 45.
Ejemplo (predeterminado):
reportPageSize=45
reportColWidth
Indica el ancho, en centímetros (cm), de la columna del informe en una salida de
informe PDF. Puede ajustar el tamaño de todas las columnas si modifica este valor.
Nota: 2,54 cm equivale a 1 pulgada.
Ejemplo (predeterminado):
reportColWidth=20
Imposición del elemento de control de accesos en los datos generados del informe
availableForNonAdministrators
Especifica si sincronizar información relacionada con el elemento durante la
sincronización de datos.
Establezca este valor en true para permitir que los usuarios no administradores
ejecuten informes.
Establezca este valor en false para inhabilitar todas las funcionalidades
relacionadas con la ejecución de informes por parte de los usuarios no
administradores, como la sincronización de datos de elementos de control de
accesos y el establecimiento de elementos de control de accesos de informes en los
informes.
Ejemplo:
availableForNonAdministrators=true
Imposición del esquema incremental
mediante el Sincronizador de datos incremental
enableDeltaSchemaEnforcer
Especifica si sincronizar los cambios del esquema en los informes.
Los cambios del esquema incluyen las nuevas correlaciones creadas o las
correlaciones existentes que se eliminaron por medio del Diseñador de esquemas.
Cuando se establece en true, el Sincronizador de datos incremental gestionará los
atributos que se han correlacionado (cambiado) en el Diseñador de esquemas desde
que se ejecutó la última sincronización de datos completa.
Cuando se establece en false, el Sincronizador de datos incremental no sincronizará
los atributos que se han correlacionado (cambiado) desde que se ejecutó la última
sincronización de datos completa.
Ejemplo (predeterminado):
enableDeltaSchemaEnforcer=false
128
Consulta
Tabla 15. Propiedades de adhocreporting.properties (continuación)
Sincronización de datos
changelogEnabled
Especifica si se utiliza el Sincronizador de datos incremental. Los valores son:
v true – El Sincronizador de datos incremental está configurado
v false – El Sincronizador de datos incremental no está configurado
Ejemplo (predeterminado):
changelogEnabled=false
changelogBaseDN
Especifica el DN en el directorio donde está configurado el registro de cambios.
Ejemplo (predeterminado):
changelogBaseDN=cn=changelog
changeLogFetchSize
Especifica el número de registros de cambios que se pueden captar a la vez desde el
servidor de directorios.
Un valor de 0, o un valor negativo, implica que no hay ninguna restricción de
captación. La restricción de captación es útil cuando el servidor de directorios no
puede recibir una carga excesiva durante un periodo de tiempo. Por ejemplo, la
recuperación de 100.000 entradas de registro de cambios a la vez puede retrasar el
tiempo de respuesta del servidor de directorios durante unos minutos.
Ejemplo (predeterminado):
changeLogFetchSize=200
maximumChangeLogsToSynchronize
Especifica el número máximo de registros de cambios que se sincronizarán en un
único usuario del Sincronizador de datos incremental.
Tenga en cuenta la memoria del sistema disponible y la utilización de la CPU
necesaria para otros procesos del sistema cuando establezca esta propiedad. Si el
valor se establece en cero, o en un valor negativo, el Sincronizador de datos
incremental sincroniza todas las entradas de registro de cambios.
Ejemplo (predeterminado):
maximumChangeLogsToSynchronize=10000
changeLogsToAnalyzeBeforeSynchronization
Consulta
129
Tabla 15. Propiedades de adhocreporting.properties (continuación)
Especifica el número de entradas de registro de cambios captadas que se analizarán
antes de que se sincronicen todas las entradas analizadas de la base de datos.
Por ejemplo, tenga en cuenta los valores siguientes:
changeLogFetchSize=500
changeLogsToAnalyzeBeforeSynchronization=20000
maximumChangeLogsToSynchronize=100000
500 entradas de registro de cambios se consideran un lote. Después de analizar
20.000 entradas de registro de cambios (40 lotes), se produce la sincronización de
datos. Este proceso repite hasta que se analicen 100.000 entradas (5
sincronizaciones).
Establecer este valor en 0, o un valor negativo, resulta en la sincronización de todas
las entradas de registro de cambios captadas.
Ejemplo (predeterminado):
changeLogsToAnalyzeBeforeSynchronization=5000
enableChangelogPruning
Especifica si las entradas de registro de cambios deben podarse después de que se
hayan sincronizado correctamente. Esta propiedad tiene efecto sólo para el servidor
de directorios SunOne versión 5.2. Para IBM Tivoli Directory Server, consulte la
documentación que la aplicación proporciona para podar las entradas de registro de
cambios.
Ejemplo (predeterminado):
enableChangelogPruning=false
itimAdminID
Especifica el ID de administrador de IBM Tivoli Identity Manager necesario para
ejecutar el Sincronizador de datos incremental en un entorno zOS.
Por ejemplo:
itimAdminID=myadminid
itimAdminCredential
Especifica la contraseña de Tivoli Identity Manager necesaria para ejecutar el
Sincronizador de datos incremental en un entorno zOS.
Por ejemplo:
itimAdminCredential=myadmincredential
createIndex
130
Consulta
Tabla 15. Propiedades de adhocreporting.properties (continuación)
Especifica si crear índices de base de datos para las columnas de base de datos
utilizadas con más frecuencia. Si esta propiedad se establece en true, los informes se
generan más rápidamente.
Los valores válidos de esta propiedad son:
v true – Crea índices para las columnas que se utilizan para los informes. La
habilitación de este valor podría incrementar el tiempo de sincronización de
datos.
v false – No crea índices durante la sincronización de datos. La inhabilitación de
este valor podría aumentar el tiempo necesario para generar informes.
Ejemplo (predeterminado):
createIndex=true
reportIndexes
Especifica un conjunto de valores <ENTITY:(ATTR1 ORDER1, ATTR2 ORDER2, ...)>
en el que se crearán los índices.
Con esta propiedad se pueden crear tanto índices únicos como compuestos. Si está
creando un índice único, utilice el nombre de la entidad que ve en el diseñador de
informes o la funcionalidad de correlación del esquema.
Si está definiendo un índice compuesto, especifique el nombre exacto de la tabla,
como Account o Person_cn, en lugar del nombre de la entidad. Puede especificar un
orden opcional ″asc″ o ″desc″ para un índice. Fíjese en el uso de un punto y coma
como delimitador entre los índices. Debe mantener la sintaxis de esta propiedad de
forma correcta o es posible que los índices no se creen satisfactoriamente.
Si agrega índices adicionales, siga la sintaxis de estos índices predeterminados:
reportIndexes=Person:cn asc;Account:eraccountcompliance;
Account:(eraccountstatus asc);Account:erlastaccessdate asc;
Account:eruid asc;Service:(servicetype asc);
Service:erservicename asc;ProvisioningPolicy:erpolicyitemname asc;
ProvisioningPolicy:erpolicytarget asc;
ProvisioningPolicy:erpolicymembership asc;Role:errolename asc;
Account:(eraccountstatus asc, erservice asc);
Person_cn:(dn, cn);Account_owner:(dn asc, owner asc)
sqlBatchSize
Indica el tamaño de las actualizaciones de lotes que se procesan durante la
sincronización de datos. Para aumentar el rendimiento, establezca este valor en un
número mayor. Sin embargo, este valor se ve afectado por los valores específicos de
la base de datos para el tamaño del archivo de registros de la transacción (una
propiedad de la base de datos) y establecer un valor demasiado alto puede provocar
que falle la sincronización de datos. Utilice siempre el valor predeterminado
recomendado de 50 para evitar errores de sincronización de datos.
Un valor de 0, o un valor negativo, provoca que se procesen todas las
actualizaciones SQL como un único lote.
Ejemplo (predeterminado):
sqlBatchSize=50
attribsSkippedInSchema
Consulta
131
Tabla 15. Propiedades de adhocreporting.properties (continuación)
Estos atributos contienen XML como datos. El motor de informes actualmente no da
soporte a la creación de informes con estos atributos.
Ejemplo (en una línea):
attribsSkippedInSchema=erEntitlements erAcl erHistoricalPassword
erJavascript erLostPasswordAnswer erPassword erPlacementRule
erxforms erXML
reportsAllowedAttributes
Conjunto de atributos en el que el motor de informes no impone el control de
accesos de nivel de atributo.
Ejemplo (predeterminado):
reportsAllowedAttributes=servicetype
reportsAllowedEntities
Conjunto de entidades en el que el motor de informes no impone el control de
accesos de nivel de atributo.
Ejemplo (predeterminado):
reportsAllowedEntities=RecertificationPolicy,Group
reservedWords
Palabras reservadas de base de datos. Estas palabras no se utilizarán como nombres
de tabla/columna durante la correlación de esquema y la sincronización de datos.
Ejemplo (en una línea):
reservedWords=ALL ADD ALTER BACKUP BEGIN BY BULK CASCADE CHECK
CHECKPOINT CLUSTORED COLUMN CREATE CURRENT DUMMY DOMAIN DELETE
DEFAULT DISTINCT DROP FORIGN FROM GROUP IDENTITY IDENTITY_INSERT
IDENTITYCOL INSERT IN LIKE SET SELECT TABLE VALUES ORDER UID WHERE
disallowedChars
Caracteres que no formarán parte del nombre de tabla/columna en una base de
datos. Si el nombre de entidad/atributo contiene uno o más de estos caracteres,
éstos se eliminarán del nombre de la tabla o columna. En el ejemplo que se muestra
a continuación, las dobles barras invertidas (\\) se utilizan como caracteres de
escape.
Ejemplo (predeterminado):
disallowedChars=~!@#%^&*()+{}|:\"<>? -=[]\\;',./
disallowedCharsForStart
Caracteres que no se utilizarán como el carácter de inicio del nombre de la tabla o la
columna. En el ejemplo que se muestra a continuación, las dobles barras invertidas
(\\) se utilizan como caracteres de escape.
Ejemplo (predeterminado):
disallowedCharsForStart=~!@#$%^&*()_+{}|:\"<>? -=[]\\;',./0123456789
maxTableNameLength
132
Consulta
Tabla 15. Propiedades de adhocreporting.properties (continuación)
Longitud máxima predeterminada de un nombre de tabla.
Ejemplo (predeterminado):
maxTableNameLength=30
maxColumnNameLength
Longitud máxima predeterminada de un nombre de columna.
Ejemplo (predeterminado):
maxColumnNameLength=30
maxTableNameLength_DB2
Longitud máxima de un nombre de tabla en DB2.
Ejemplo (predeterminado):
maxTableNameLength_DB2=128
maxColumnNameLength_DB2
Longitud máxima de un nombre de columna en DB2.
Ejemplo (predeterminado):
maxColumnNameLength_DB2=30
maxTableNameLength_ZDB2
Longitud máxima de un nombre de tabla en DB2 Z/OS.
Ejemplo (predeterminado):
maxTableNameLength_ZDB2=128
maxColumnNameLength_ZDB2
Longitud máxima de un nombre de columna en DB2 Z/OS.
Ejemplo (predeterminado):
maxColumnNameLength_ZDB2=30
maxTableNameLength_ORACLE=30
Longitud máxima de un nombre de tabla en Oracle.
Ejemplo (predeterminado):
maxTableNameLength_ORACLE=30
maxColumnNameLength_ORACLE
Longitud máxima de un nombre de columna en Oracle.
Ejemplo (predeterminado):
maxColumnNameLength_ORACLE=30
maxTableNameLength_MS_SQL_SERVER
Consulta
133
Tabla 15. Propiedades de adhocreporting.properties (continuación)
Longitud máxima de un nombre de tabla en Microsoft SQL Server.
Ejemplo (predeterminado):
maxTableNameLength_MS_SQL_SERVER=128
maxColumnNameLength_MS_SQL_SERVER
Longitud máxima de un nombre de columna en Microsoft SQL Server.
Ejemplo (predeterminado):
maxColumnNameLength_MS_SQL_SERVER=128
populateGroupMembers
Especifica si los cambios de pertenencia a grupos de servicio se tienen que
sincronizar al realizar la sincronización incremental. La información de pertenencia a
grupos de servicio se almacena en la tabla GROUPMEMBERS.
Los valores válidos de esta propiedad son:
v true – Sincroniza cambios de pertenencia a grupos de servicio y accesos (por
ejemplo, debido a una solicitud de acceso nueva).
v false – No sincroniza cambios de pertenencia a grupos, ya que este tipo de
sincronización precisa de un gran rendimiento.
Ejemplo (predeterminado):
populateGroupMembers=false
crystal.properties
El archivo crystal.properties almacena las propiedades globales para el plug-in
de Crystal Reports del módulo de informes personalizados.
La Tabla 16 define las propiedades utilizadas para configurar los informes de
Crystal Reports.
Tabla 16. Propiedades de crystal.properties
crystalHome
Directorio de inicio de instalación de Crystal. Para una vía de acceso de Windows
como: C:\Archivos de programa, utilice C:\\Archivos de programa (tenga en
cuenta el uso de la barra invertida doble).
Ejemplo:
crystalHome=C:\\Archivos de programa\\Crystal Decisions
cmsHost
Nombre de host CMS. Si se utiliza un puerto no predeterminado, especifique el
valor para cmsHost como nombre_host:puerto.
Ejemplo:
cmsHost=test.tivlab.raleigh.ibm.com:6400
crystalEnterpriseUser
134
Consulta
Tabla 16. Propiedades de crystal.properties (continuación)
Nombre del usuario de Crystal Enterprise creado en la consola de gestión de
Crystal.
Ejemplo:
crystalEnterpriseUser=crystalEntUser
crystalEnterprisePassword
Contraseña del usuario de Crystal Enterprise creado en la consola de gestión de
Crystal.
Ejemplo:
crystalEnterprisePassword=kk39kcDX
crystalreports
Establezca este valor en combine (valor predeterminado) si desea agregar las
plantillas de Crystal Reports a la lista de plantillas del Diseñador en la consola.
Establezca este valor en replace si desea sustituir la lista de plantillas del Diseñador
en la consola.
Ejemplo:
crystalreports=combine
dsn
La funcionalidad de Crystal precisa crear un DSN donde se ejecute el servidor de
Crystal. El DSN debe apuntar a la base de datos de IBM Tivoli Identity Manager.
Esta propiedad especifica el nombre del DSN.
Ejemplo:
dsn=ITIMDB1
database
Nombre de la base de datos de IBM Tivoli Identity Manager en la que se crea el
DSN. Este podría ser diferente del nombre de la base de datos de IBM Tivoli
Identity Manager especificada en data/enroleDatabaseConnection.properties
Ejemplo:
database=ITIMDB1
CustomLabels.properties
Los pares de clave y valor de propiedad del archivo CustomLabels.properties se
utilizan en la interfaz de usuario de Tivoli Identity Manager para visualizar el
texto de las etiquetas de los formularios.
El nombre de clave debe estar completamente en minúsculas en cada par de clave
y valor de propiedad.
Existe un archivo separado CustomLabels.properties para cada idioma individual
con soporte en IBM Tivoli Identity Manager.
Este archivo se utiliza para proporcionar versiones localizadas de los elementos de
la GUI cuando se instala IBM Tivoli Identity Manager en entornos internacionales.
Consulta
135
La extensión del nombre de archivo identifica el idioma específico. Por ejemplo:
CustomLabels_ja.properties — Japonés
CustomLabels_en.properties — Inglés
DataBaseFunctions.conf
La función de informes personalizados de Tivoli Identity Manager le permite
utilizar las funciones de la base de datos al diseñar las plantillas de informe
personalizado.
Este archivo se encuentra en el directorio ITIM_HOME/data.
Puede utilizar las funciones de la base de datos con el componente Diseñador de
informes de IBM Tivoli Identity Manager si define las funciones del archivo
DataBaseFunctions.conf.
Las propiedades predefinidas de la función de la base de datos utilizan el formato
siguiente en el archivo DataBaseFunctions.conf:
<nombre_función> - <número_de_argumentos>
Los usuarios de la base de datos también pueden crear y definir funciones para su
uso personal. Las funciones personalizadas se denominan funciones definidas por
el usuario en Microsoft SQL e IBM DB2. Las funciones creadas como
procedimientos almacenados en DB2 también se pueden utilizar para la creación
de informes. Las funciones deben crearse por medio de los programas de utilidad
de la base de datos que proporciona el proveedor de la base de datos
correspondiente.
Las propiedades de la función de la base de datos definidas por el usuario utilizan
el formato siguiente en el archivo DataBaseFunctions.conf:
user:<nombre_función> - <número_de_argumentos>
En el Diseñador de informes de IBM Tivoli Identity Manager sólo se da soporte a
las funciones con un único argumento. Para las funciones avanzadas de creación
de informes, utilice la herramienta Crystal Reports Designer.
Tabla 17. DataBaseFunctions.conf
Upper
Pasa el argumento a letras mayúsculas.
Ejemplo:
Upper - 1
Lower
Pasa el argumento a letras minúsculas.
Ejemplo:
Lower - 1
136
Consulta
enroleAuditing.properties
Los pares de clave y valor de propiedad del archivo enroleAuditing.properties se
utilizan para habilitar o inhabilitar el seguimiento de los cambios realizados por un
usuario de Tivoli Identity Manager en los objetos empresariales (persona,
ubicación, servicio, etc.) o en la configuración del sistema.
Todas las solicitudes de usuario para modificar la base de datos o el almacén de
directorios de IBM Tivoli Identity Manager se pueden auditar y publicar en un
informe.
A continuación, se muestra una lista integral de sucesos auditados:
v Gestión de ACI (Agregar, Agregar propietario de autorización, Suprimir,
Suprimir propietario de autorización, Modificar)
v Gestión de cuentas (Agregar, Adoptar, Cambiar contraseña, Suprimir, Modificar,
Dejar huérfana, Recogida de contraseña, Restaurar, Suspender, Sincronizar
contraseña)
v Gestión de accesos (Agregar, Eliminar)
v Configuración de acceso (Agregar, Eliminar, Modificar)
v Autenticación (Autenticar usuario de ITIM)
v Gestión del contenedor (Agregar, Suprimir, Modificar)
v Delegar autoridad (Agregar, Suprimir, Modificar)
v Gestión del flujo de trabajo de titularidad (Agregar, Suprimir, Modificar)
v Gestión de las operaciones de entidad (Agregar, Suprimir, Modificar)
v Configuración de IBM Tivoli Identity Manager (Agregar, Suprimir, Imponer,
Instalar perfil, Modificar, Desinstalar perfil)
v Gestión de grupos (Agregar, Agregar miembro, Suprimir, Modificar, Eliminar
miembro)
v Migración (Instalación de perfil de agente, Iniciar exportación, Iniciar
importación, Detener exportación, Detener importación)
v Gestión de roles (Agregar, Agregar miembro, Suprimir, Modificar, Eliminar
miembro)
v Gestión de personas (Agregar, Suprimir, Modificar, Restaurar, Autoregistro,
Suspender, Transferir)
v Gestión de políticas (Agregar, Confirmar borrador, Suprimir, Imponer política
completa, Modificar, Guardar como borrador, Agregar plantilla de cuenta,
Cambiar plantilla de cuenta, Eliminar plantilla de cuenta)
v Conciliación (Ejecutar conciliación, Establecer unidad de conciliación, Establecer
parámetros de conciliación del servicio)
v Sucesos en tiempo de ejecución (Iniciar IBM Tivoli Identity Manager, Detener
IBM Tivoli Identity Manager)
v Cambio de la propia contraseña (Cambiar contraseña, Restablecer contraseña)
v Gestión de servicios (Agregar, Agregar regla de adopción, Suprimir, Suprimir
regla de adopción, Modificar, Modificar regla de adopción)
v Imposición de política de servicios (Corregir no conformes, Marcar no
conformes, Suspender no conformes, Utilizar configuración global, Utilizar flujo
de trabajo para no conformes)
La información de auditoría incluye específicamente la identidad del usuario que
realiza la acción, la hora a la que se realizó la acción, el tipo de acción realizada y
los datos afectados por la acción.
Consulta
137
La Tabla 18 define las propiedades utilizadas para configurar el comportamiento de
la función de auditoría.
Tabla 18. Propiedades de enroleAuditing.properties
Valores de configuración de la auditoría de IBM Tivoli Identity Manager
itim.auditing
Especifica si habilitar o inhabilitar la auditoría para los sucesos de IBM Tivoli
Identity Manager.
Los valores válidos son:
v true – Los sucesos de IBM Tivoli Identity Manager se auditarán
v false – Los sucesos de IBM Tivoli Identity Manager no se auditarán,
independientemente de los valores de las categorías o sucesos individuales
Ejemplo (predeterminado):
itim.auditing=true
itim.auditing.retrycount
Este es el número de veces que se volverá a intentar la auditoría en caso de
anomalías.
Entre los valores válidos se incluye cualquier entero.
Ejemplo (predeterminado):
itim.auditing.retrycount=1
itim.auditing.retrydelay
Este es el tiempo de espera [en milisegundos] entre cada reintento.
Ejemplo (predeterminado):
itim.auditing.retrydelay=5000
enrole.auditing.errorpopup.enabled
Habilita o inhabilita la ventana emergente de visualización de error de proceso
Ejemplo (predeterminado):
enrole.auditing.errorpopup.enabled=false
enrole.auditing.errorpopup.fields
La ventana emergente de visualización de error de proceso contendrá siempre estos
atributos y sus valores:
{name, subject, type, result_summary}
Puede especificar de forma adicional uno o más de estos atributos:
{subject, comments, name, type, requester_type, requester_name,
description, scheduled, started, completed, lastmodified,
submitted, state, notify, requestee_name, subject_profile,
subject_service, result_summary, result_detail}
Ejemplo:
enrole.auditing.errorpopup.fields=subject, comments
enrole.auditing.errorpopup.textwrap
138
Consulta
Tabla 18. Propiedades de enroleAuditing.properties (continuación)
Especifica si el texto en la ventana emergente se recorta al final de ésta.
Ejemplo (predeterminado):
enrole.auditing.errorpopup.textwrap=false
enrole.auditing.pageSize
Especifica el tamaño de la página, en líneas, que muestra procesos o actividades
incorrectos en la ventana emergente de actividades erróneas.
Ejemplo (predeterminado):
enrole.auditing.pageSize=10
enrole.auditing.pageLinkMax
Especifica el número de enlaces de página que aparecen cuando los resultados
abarcan varias páginas en la ventana emergente de actividades erróneas.
Ejemplo (predeterminado):
enrole.auditing.pageLinkMax=10
enRoleAuthentication.properties
El archivo enRoleAuthentication.properties especifica el tipo de método utilizado
por el Tivoli Identity Manager Server para autenticar a los usuarios e identifica el
objeto Java que proporciona el mecanismo de autenticación especificado.
De forma adicional, el archivo especifica objetos que dan soporte al inicio de sesión
único de Tivoli Access Manager WebSEAL y a la administración de IBM Tivoli
Identity Manager para servicios remotos gestionados.
Las propiedades de autenticación se especifican por medio de un formato de par
de clave y valor de propiedad:
nombre-clave-propiedad=valor
nombre-clave-propiedad es un identificador para el mecanismo de autenticación o el
recurso. valor es el nombre del objeto Java que proporciona el servicio de
autenticación, expresado también como un par de clave y valor.
factory=value
El nombre de clave factory representa una categoría especial para el soporte de
autenticación del software de IBM Tivoli Identity Manager. value es el nombre real
del objeto Java.
Por ejemplo (especificado en una línea):
enrole.authentication.provider.service=
factory=com.ibm.enrole.authentication.service.
ServiceAuthenticationProviderFactory
La Tabla 19 define las propiedades que se utilizan para configurar la autenticación
de IBM Tivoli Identity Manager.
Tabla 19. Propiedades de enRoleAuthentication.properties
Método de autenticación
Consulta
139
Tabla 19. Propiedades de enRoleAuthentication.properties (continuación)
enrole.authentication.requiredCredentials={simple}
Especifica el método de autenticación obligatorio para que los usuarios inicien
sesión en el IBM Tivoli Identity Manager Server.
El valor válido de esta propiedad es:
v simple - Nombre de usuario y contraseña.
Ejemplo (predeterminado):
enrole.authentication.requiredCredentials=simple
Proveedores de autenticación (fábricas)
enrole.authentication.provider.simple
Especifica el objeto Java que maneja la autenticación con el nombre de usuario y la
contraseña.
Ejemplo (especificado en una línea):
enrole.authentication.provider.simple=\
factory=com.ibm.itim.authentication.simple.
SimpleAuthenticationProviderFactory
Proveedor de servicios de autenticación
enrole.authentication.provider.service
Especifica el objeto Java que maneja transparentemente el acceso de IBM Tivoli
Identity Manager a los servicios remotos gestionados y a los cambios gestionados de
las cuentas de los servicios remotos.
Entre estos cambios se incluye la adición, supresión, suspensión, restauración y
modificación de las cuentas del servicio remoto. Cuando haya iniciado la sesión en
IBM Tivoli Identity Manager, puede cambiar la información del inicio de sesión y la
contraseña para una cuenta del servicio remoto gestionado.
El mecanismo ServiceAuthenticationProviderFactory funciona con el agente para
un servicio remoto determinado y procesa la información modificada.
Ejemplo (especificado en una línea):
enrole.authentication.provider.service=\
factory=com.ibm.itim.authentication.service.
ServiceAuthenticationProviderFactory
Inicio de sesión único de WebSEAL
enrole.authentication.provider.webseal
Especifica el objeto Java que permite el inicio de sesión único en un entorno
WebSEAL.
Ejemplo (especificado en una línea):
enrole.authentication.provider.webseal=\
factory=com.ibm.itim.authentication.webseal.WebsealProviderFactory
enrole.authentication.idsEqual
140
Consulta
Tabla 19. Propiedades de enRoleAuthentication.properties (continuación)
Indica el algoritmo apropiado para correlacionar el ID de usuario de Tivoli Access
Manager con un ID de usuario de IBM Tivoli Identity Manager. Se utiliza un
algoritmo de correlación de identidad interno para garantizar el éxito de la
operación de inicio de sesión único.
Los valores válidos de esta propiedad son:
v true – El ID de usuario de Tivoli Access Manager es el mismo que el ID de
usuario de IBM Tivoli Identity Manager.
v false – El ID de usuario de Tivoli Access Manager no es el mismo que el ID de
usuario de IBM Tivoli Identity Manager.
Ejemplo:
enrole.authentication.idsEqual=true
enRoleDatabase.properties
El archivo enRoleDatabase.properties especifica las propiedades que dan soporte
a la base de datos relacional utilizada por Tivoli Identity Manager.
Los valores de clave de propiedad contenidos en este archivo están sincronizados
con los valores del archivo de configuración del servidor de aplicaciones
apropiado. La mayoría de los valores de este archivo se proporcionan durante la
instalación inicial de IBM Tivoli Identity Manager y la configuración de la base de
datos. Puede realizar los cambios subsiguientes a algunos valores. Sin embargo,
debe utilizar el programa de utilidad runConfig para sincronizar los valores del
archivo de propiedades con los valores del archivo de configuración del servidor
de aplicaciones.
IBM Tivoli Identity Manager utiliza JDBC (Java Database Connectivity) para
acceder a la base de datos relacional. La tecnología JDBC es una API que le
permite acceder virtualmente al origen de datos tabular desde el lenguaje de
programación Java.
La Tabla 20 define las propiedades utilizadas para configurar propiedades de base
de datos.
Tabla 20. Propiedades de enRoleDatabase.properties
Información de la base de datos
database.db.type
No modifique esta clave de propiedad. El valor se suministra durante la instalación
inicial de IBM Tivoli Identity Manager.
Especifica el tipo de base de datos que IBM Tivoli Identity Manager utiliza.
Ejemplo:
database.db.type=DB2
database.db.server
Consulta
141
Tabla 20. Propiedades de enRoleDatabase.properties (continuación)
Este valor se suministra durante la instalación de IBM Tivoli Identity Manager y la
configuración de la base de datos.
Especifica el nombre o el nombre de alias local de la base de datos remota.
Para cambiar este valor para una nueva base de datos, use el programa de utilidad
de configuración de la base de datos para configurar la base de datos. El programa
de utilidad de configuración de la base de datos proporciona el nuevo nombre de la
base de datos a este archivo de propiedades.
Para cambiar este valor por otra base de datos existente, use el programa de
utilidad runConfig para proporcionar el nuevo nombre de la base de datos a este
archivo de propiedades.
El valor para database.db.server se almacena en el formato siguiente:
nombre_host_bd:puerto:nombre_base_datos
Ejemplos:
v DB2
10.77.214.35:50000:itimdb
v Oracle
tivsun13:1521:itimdb
v Microsoft SQL
tivsun13:1433:itimdb
database.db.owner
No modifique esta clave de propiedad. El valor está integrado en el sistema.
Especifica el nombre del propietario del esquema de la base de datos para IBM
Tivoli Identity Manager.
Ejemplo (predeterminado):
database.db.owner=itimuser
database.db.user
No modifique esta clave de propiedad. El valor está integrado en el sistema.
Especifica un usuario de base de datos predeterminado para IBM Tivoli Identity
Manager.
Ejemplo (predeterminado):
database.db.user=itimuser
database.db.password
142
Consulta
Tabla 20. Propiedades de enRoleDatabase.properties (continuación)
No modifique esta clave de propiedad. El valor se proporciona durante la
configuración de la base de datos.
Especifica la contraseña para el usuario de la base de datos.
El cifrado de este valor lo especifica la propiedad
enrole.password.database.encrypted en enRole.properties.
El valor de contraseña se cifra de forma predeterminada a menos que los valores de
cifrado se hayan desactivado mediante el programa de utilidad runConfig.
Ejemplo:
database.db.password=secret
Propiedades de la agrupación de conexiones
database.jdbc.connectionPool.initialCapacity
No edite manualmente este archivo para modificar este valor de clave de propiedad.
Use el programa de utilidad runConfig para cambiar este valor.
Especifica el número inicial de las conexiones físicas de la base de datos que crear
para la agrupación de conexiones. Este valor debe ser inferior o igual al valor de
database.jdbc.connectionPool.maxCapacity.
Ejemplo:
database.jdbc.connectionPool.initialCapacity=5
database.jdbc.connectionPool.maxCapacity
No edite manualmente este archivo para modificar este valor de clave de propiedad.
Use el programa de utilidad runConfig para cambiar este valor.
Especifica el número máximo de conexiones físicas de la base de datos que se
pueden crear. Este valor se utiliza para gestionar el ajuste de rendimiento del
sistema.
Ejemplo (predeterminado):
database.jdbc.connectionPool.maxCapacity=50
Controlador JDBC
database.jdbc.driverurl
No elimine ni modifique este valor ni esta clave de propiedad.
Especifica el URL del controlador JDBC. El valor predeterminado es
jdbc:db2://nombre_host_bd:puerto/nombre_base_datos.
Ejemplos:
v DB2
jdbc:db2://10.77.214.31:50000/itimdb
v Oracle
jdbc:oracle:thin:@host_name:1521:itimdb
v Microsoft SQL Server
jdbc:sqlserver://;server=9.72.121.180;port=1433;database=itimdb
Consulta
143
Tabla 20. Propiedades de enRoleDatabase.properties (continuación)
database.jdbc.driver
No elimine ni modifique este valor ni esta clave de propiedad.
Especifica el nombre del controlador JDBC.
Ejemplos:
v DB2
database.jdbc.driver=com.ibm.db2.jcc.DB2Driver
v Oracle
database.jdbc.driver=oracle.jdbc.driver.OracleDriver
v Microsoft SQL Server
com.microsoft.sqlserver.jdbc.SQLServerDriver
enRoleLDAPConnection.properties
El archivo enRoleLDAPConnections.properties proporciona valores de
configuración estándar que permite la comunicación satisfactoria entre Tivoli
Identity Manager y el servidor de directorios LDAP.
La Tabla 21 define las propiedades utilizadas para configurar las propiedades del
servidor de directorios LDAP.
Tabla 21. Propiedades de enRoleLDAPConnection.properties
java.naming.factory.initial
No modifique este valor ni esta clave de propiedad.
Especifica el archivo de clase Java integrado que proporciona la interfaz de
comunicación entre IBM Tivoli Identity Manager y el servidor de directorios LDAP.
Se utiliza el protocolo JNDI (Java Naming and Directory Interface).
Ejemplo:
java.naming.factory.initial=com.sun.jndi.ldap.LdapCtxFactory
Contexto LDAP: Context.INITIAL_CONTEXT_FACTORY
java.naming.provider.url
Especifica el URL del servidor de directorios LDAP. El servidor LDAP se puede
ubicar en:
v El IBM Tivoli Identity Manager Server local. En este caso, utilice localhost.
v Una máquina remota. En este caso, utilice el nombre de host completo o
abreviado o la dirección IP.
El valor de esta propiedad se configura inicialmente durante la instalación de IBM
Tivoli Identity Manager. También puede proporcionar este valor por medio del
programa de utilidad ldapconfig o runConfig.
Ejemplo:
java.naming.provider.URL=ldap://localhost:389
Contexto LDAP: Context.PROVIDER_URL
144
Consulta
Tabla 21. Propiedades de enRoleLDAPConnection.properties (continuación)
java.naming.security.principal
Especifica el nombre distinguido (DN) de la cuenta de administración de LDAP en
el servidor de directorios LDAP.
El valor de esta clave se configura inicialmente durante la instalación de IBM Tivoli
Identity Manager. También puede proporcionar este valor por medio del programa
de utilidad ldapconfig o runConfig.
Ejemplo:
java.naming.security.principal=cn=root
Ejemplo para el servidor de directorios Sun Open Net Environment (ONE):
java.naming.security.principal=cn=directory manager
Contexto LDAP: Context.SECURITY_PRINCIPAL
java.naming.security.credentials
Especifica la contraseña para la cuenta de administración de LDAP en el servidor de
directorios LDAP.
El valor de esta clave se configura inicialmente durante la instalación de IBM Tivoli
Identity Manager. También puede proporcionar este valor por medio del programa
de utilidad ldapconfig o runConfig.
El cifrado de este valor lo especifica la propiedad enrole.password.ldap.encypted
en el archivo enRole.properties.
El tipo de cifrado se configura inicialmente durante la instalación de IBM Tivoli
Identity Manager.
Ejemplo:
java.naming.security.credentials=ibmldap
Contexto LDAP: Context.SECURITY_CREDENTIALS
java.naming.security.protocol
De forma predeterminada, esta propiedad está comentada.
Especifica el protocolo que se utiliza para la comunicación entre IBM Tivoli Identity
Manager y el servidor de directorios LDAP. Por ejemplo, para habilitar SSL, elimine
el comentario de la línea y cámbiela a java.naming.security.protocol=ssl.
Contexto LDAP: Context.SECURITY_PROTOCOL
java.naming.security.authentication
Consulta
145
Tabla 21. Propiedades de enRoleLDAPConnection.properties (continuación)
No modifique este valor ni esta clave de propiedad.
Especifica el tipo de autenticación que se utiliza con el servidor de directorios
LDAP. Los tipos válidos son:
v none - El usuario anónimo pasa a ser miembro de un grupo no autenticado.
v simple - El usuario proporciona un nombre de usuario y una contraseña.
v strong - Un mecanismo de autenticación más fuerte proporcionado por el usuario.
Ejemplo:
java.naming.security.authentication=simple
Contexto LDAP: Context.SECURITY_AUTHENTICATION
java.naming.referral
No modifique este valor ni esta clave de propiedad.
En un caso de ejemplo en el que varios servidores de directorios LDAP se enlazan
en el entorno de IBM Tivoli Identity Manager, esta propiedad especifica si se
utilizarán enlaces cuando se necesite una referencia para completar una solicitud
para la información de LDAP.
Los valores válidos son:
v follow - Utiliza enlaces para completar una solicitud de información de LDAP.
v ignore - No utiliza enlaces para completar una solicitud de información de LDAP.
v throw - No utiliza enlaces para completar una solicitud de información de LDAP
y devuelve un mensaje de error.
Ejemplo:
java.naming.referral=follow
Contexto LDAP: Context.REFERRAL
java.naming.batchsize
No modifique este valor ni esta clave de propiedad.
Una propiedad JNDI que especifica el número de elementos de datos devueltos
simultáneamente durante una solicitud (consulta) al servidor de directorios LDAP.
Un número mayor reduce la cantidad de captaciones de LDAP, lo que podría
mejorar el rendimiento.
Un valor de 0 bloquea todo el control por parte del cliente (IBM Tivoli Identity
Manager) hasta que se devuelvan todos los elementos solicitados.
Ejemplo:
java.naming.batchsize=100
Contexto LDAP: Context.BATCHSIZE
java.naming.ldap.derefAliases
146
Consulta
Tabla 21. Propiedades de enRoleLDAPConnection.properties (continuación)
Especifica que la búsqueda de un objeto mediante el uso del alias obtendrá la
referencia del alias, de forma que lo que se devuelve es el objeto al que apunta el
DN del alias.
Los valores válidos son:
v never - No obtiene la referencia de un alias durante la búsqueda del objeto.
v always - Obtiene la referencia de un alias durante la búsqueda del objeto.
v finding - Obtiene la referencia de un alias durante la búsqueda del objeto (sólo
durante la resolución del nombre).
v searching - Obtiene la referencia de un alias durante la búsqueda del objeto (sólo
después de la resolución del nombre).
Ejemplo:
java.naming.ldap.derefAliases=never
java.naming.ldap.attributes.binary
No modifique este valor ni esta clave de propiedad.
Especifica los atributos de IBM Tivoli Identity Manager que se tratan como tipo de
datos binario. Se permiten varios valores de atributo separados por un único
espacio.
Ejemplo (en una línea):
java.naming.ldap.attributes.binary=erPassword
erHistoricalPassword erSynchPassword erServicePassword erPersonPassword
Contexto LDAP: attribute.binary
com.sun.jndi.ldap.connect.pool
Activa la agrupación de conexiones LDAP.
Los valores válidos son:
v true - Utiliza la agrupación de conexiones LDAP.
v false - No utiliza la agrupación de conexiones LDAP.
Ejemplo (predeterminado):
com.sun.jndi.ldap.connect.pool=true
com.sun.jndi.ldap.connect.timeout
Especifica el número de milisegundos que un cliente esperará a que haya disponible
una conexión de la agrupación. Si no se especifica la propiedad, el cliente esperará
indefinidamente.
Ejemplo:
#com.sun.jndi.ldap.connect.timeout=
enRoleLogging.properties
El archivo enRoleLogging.properties especifica los atributos que rigen el
funcionamiento de la API de registro y rastreo jlog que se proporciona con Tivoli
Identity Manager.
Consulta
147
jlog es un paquete de inicio de sesión para Java que le permite registrar mensajes
según la prioridad y el tipo de mensaje, y controlar en tiempo de ejecución cómo
se formatean los mensajes y dónde se colocan sus informes.
La Tabla 22 define las propiedades que se utilizan para configurar las propiedades
de registro cronológico de IBM Tivoli Identity Manager.
Tabla 22. Propiedades de enRoleLogging.properties
Valores generales
logger.refreshInterval
Especifica el intervalo de renovación [en milisegundos] de las propiedades de inicio
de sesión.
Ejemplo:
logger.refreshInterval=300000
logger.msg.com.ibm.itim.security.logChoice
Especifica el tipo de intentos de autenticación que se debe registrar.
Los valores válidos son:
v failure - Registra los errores de autenticación.
v success - Registra autenticaciones correctas.
v both - Registra tanto las autenticaciones erróneas como las correctas.
Ejemplo:
logger.msg.com.ibm.itim.security.logChoice=failure
logger.msg.com.ibm.itim.security.logging
Especifica si los intentos de autenticación se registran o no.
Los valores válidos son:
v true - Registra los intentos de autenticación.
v false - No registra los intentos de autenticación.
Ejemplo:
logger.msg.com.ibm.itim.security.logging=true
handler.file.security.maxFiles
Especifica el número máximo de archivos de registro de seguridad.
Ejemplo:
handler.file.security.maxFiles=10
logger.msg.level
148
Consulta
Tabla 22. Propiedades de enRoleLogging.properties (continuación)
Especifica el nivel de registro de mensajes.
Los valores válidos son:
v INFO
v WARN
v ERROR
Ejemplo:
logger.msg.level=INFO
handler.file.msg.maxFiles
Especifica el número máximo de archivos de registro de mensajes.
Ejemplo:
handler.file.msg.maxFiles=5
logger.trace.level
Especifica el nivel de rastreo.
Los niveles de rastreo soportados son:
v DEBUG_MIN
v DEBUG_MID
v DEBUG_MAX
DEBUG_MAX es el nivel de rastreo más detallado y puede afectar al rendimiento
del sistema. Al depurar un problema, evite establecer DEBUG_MAX en logger.trace.
Establezca DEBUG_MAX en los componentes o paquetes afectados.
Ejemplo:
logger.trace.level=DEBUG_MIN
handler.file.trace.maxFiles
Especifica el número máximo de archivos de registro de rastreo.
Ejemplo:
handler.file.trace.maxFiles=10
handler.file.maxFileSize
Especifica el tamaño máximo del archivo de registro [en kilobytes]
Ejemplo:
handler.file.maxFileSize=1024
Propiedades de directorio raíz del registrador
jlog.noLogCmd
Consulta
149
Tabla 22. Propiedades de enRoleLogging.properties (continuación)
No modifique este valor ni esta clave de propiedad.
Inhabilita el servidor de mandatos de registro.
Ejemplo:
jlog.noLogCmd=true
logger.className
No modifique este valor ni esta clave de propiedad.
Especifica el nombre de clase del registrador.
Ejemplo:
logger.className=com.ibm.log.PDLogger
logger.description
Especifica la descripción del registrador.
Ejemplo:
logger.description=TIM PD Logger
logger.product
No modifique este valor ni esta clave de propiedad.
Especifica el nombre del producto.
Ejemplo:
logger.product=CTGIM
logger.productInstance
No modifique este valor ni esta clave de propiedad.
Especifica el nombre de instancia de servidor. El valor se suministra durante la
instalación de Tivoli Identity Manager.
Ejemplo:
logger.productInstance=myserver
Propiedades del registrador de mensajes
logger.msg.description
Especifica la descripción del registrador de mensajes.
Ejemplo:
logger.msg.description=TIM PD Message Logger
logger.msg.logging
150
Consulta
Tabla 22. Propiedades de enRoleLogging.properties (continuación)
Activa o desactiva el rastreo de mensajes.
Los valores válidos son:
v true - Activa el registro de mensajes.
v false - Desactiva el registro de mensajes.
Ejemplo:
logger.msg.logging=true
logger.msg.messageFile
No modifique este valor ni esta clave de propiedad.
Especifica el nombre del paquete de recursos de mensajes que se pueden localizar.
Ejemplo:
logger.msg.messageFile=tmsMessages
logger.msg.com.ibm.itim.ui.messageFile
No modifique este valor ni esta clave de propiedad.
Especifica el nombre del paquete de recursos de mensajes que se pueden localizar.
Ejemplo: (en una línea)
logger.msg.com.ibm.itim.ui.messageFile=
com.ibm.itim.ui.resources.UIMessageResources
logger.msg.listenerNames
No modifique este valor ni esta clave de propiedad.
Especifica los nombres de escucha adjuntos al registrador de mensajes.
Ejemplo:
logger.msg.listenerNames=handler.file.msg handler.ffdc.fileCopy
Propiedades del registrador de seguridad
logger.msg.com.ibm.itim.security.listenerNames
No modifique este valor ni esta clave de propiedad.
Especifica los nombres de escucha adjuntos al registrador de seguridad.
Ejemplo:
logger.msg.com.ibm.itim.security.listenerNames=handler.file.security
Propiedades del registrador de rastreo
logger.trace.description
Especifica la descripción del registrador de rastreo.
Ejemplo:
logger.trace.description=TIM PD Trace Logger
Consulta
151
Tabla 22. Propiedades de enRoleLogging.properties (continuación)
logger.trace.logging
Activa o desactiva el rastreo.
Los valores válidos son:
v true - Activa el registro de rastreo.
v false - Desactiva el registro de rastreo.
Ejemplo:
logger.trace.logging=true
logger.trace.listenerNames
No modifique este valor ni esta clave de propiedad.
Especifica los nombres de escucha adjuntos al registrador de rastreo.
Ejemplo:
logger.trace.listenerNames=handler.file.trace
logger.trace.com.ibm
Edita el nivel de estos registradores de componentes para ajustar la cantidad de
información de rastreo escrita en el registro de rastreo.
Los niveles de rastreo soportados son:
v DEBUG_MIN
v DEBUG_MID
v DEBUG_MAX
Los registradores de componentes se muestran en la siguiente lista:
Nota: El registrador de componentes logger.trace.com.ibm.itim.script.level es
equivalente a logger.trace.com.ibm.itim.fesiextensions.level (en desuso).
logger.trace.com.ibm.itim.adhocreport.level
logger.trace.com.ibm.itim.adhocreport.crystal.level
logger.trace.com.ibm.itim.adhocreport.changelog.level
logger.trace.com.ibm.itim.apps.level
logger.trace.com.ibm.itim.apps.ejb.adhocreport.level
logger.trace.com.ibm.itim.authentication.level
logger.trace.com.ibm.itim.authorization.level
logger.trace.com.ibm.itim.common.level
logger.trace.com.ibm.itim.fesiextensions.level
logger.trace.com.ibm.itim.script.level
logger.trace.com.ibm.itim.mail.level
logger.trace.com.ibm.itim.messaging.level
logger.trace.com.ibm.itim.dataservices.model.level
logger.trace.com.ibm.itim.passworddelivery.level
logger.trace.com.ibm.itim.policy.level
logger.trace.com.ibm.itim.remoteservices.level
logger.trace.com.ibm.itim.remoteservices.installation.level
logger.trace.com.ibm.itim.report.level
logger.trace.com.ibm.itim.security.level
logger.trace.com.ibm.itim.scheduling.level
logger.trace.com.ibm.itim.script.level
logger.trace.com.ibm.itim.systemConfig.level
logger.trace.com.ibm.itim.util.level
logger.trace.com.ibm.itim.webclient.level
logger.trace.com.ibm.itim.workflow.level
logger.trace.com.ibm.daml.level
logger.trace.com.ibm.erma.level
152
Consulta
Tabla 22. Propiedades de enRoleLogging.properties (continuación)
Propiedades del rastreo de applet
logger.trace.com.ibm.itim.applet.logging
Habilita o inhabilita el registro de rastreo de applet.
Ejemplo:
logger.trace.com.ibm.itim.applet.logging=true
logger.trace.com.ibm.itim.applet.level
Especifica el nivel de rastreo del applet.
Los niveles de rastreo soportados son:
v DEBUG_MIN
v DEBUG_MID
v DEBUG_MAX
Ejemplo:
logger.trace.com.ibm.itim.applet.level=DEBUG_MIN
Propiedades del manejador de archivos
handler.file.className
No modifique este valor ni esta clave de propiedad.
Especifica el nombre de clase del manejador de archivos.
Ejemplo:
handler.file.className=com.ibm.log.FileHandler
handler.file.description
Especifica la descripción del manejador de archivos.
Ejemplo:
handler.file.description=Manejador de archivos de TIM
handler.file.fileDir
No modifique este valor ni esta clave de propiedad.
Especifica el directorio base del manejador de archivos. Este valor se suministra
durante la instalación.
Ejemplo:
handler.file.fileDir=c:/dir_com_tivoli/CTGIM/logs
handler.file.formatterName
Consulta
153
Tabla 22. Propiedades de enRoleLogging.properties (continuación)
No modifique este valor ni esta clave de propiedad.
Especifica el formateador del manejador de archivos.
Ejemplo:
handler.file.formatterName=formatter.PDXML
Propiedades del manejador de archivos de registro de mensajes
handler.file.msg.fileName
Especifica el archivo de registro de mensajes.
Ejemplo:
handler.file.msg.fileName=msg.log
handler.file.msg.formatterName
No modifique este valor ni esta clave de propiedad.
Especifica el formateador del manejador de archivos de mensajes.
Ejemplo:
handler.file.msg.formatterName=formatter.PDXML.msg
Propiedades del manejador de archivos de registro de seguridad
handler.file.security.fileDir
Especifica el directorio de registro de seguridad.
Ejemplo:
handler.file.security.fileDir=c:/dir_com_tivoli/CTGIM/logs
handler.file.security.fileName
Especifica el archivo de registro de seguridad.
Ejemplo:
handler.file.security.fileName=access.log
handler.file.security.formatterName
No modifique este valor ni esta clave de propiedad.
Especifica el formateador del manejador de archivos de seguridad.
Ejemplo:
handler.file.security.formatterName=formatter.PDXML.security
Propiedades del manejador de archivos de rastreo
handler.file.trace.fileName
154
Consulta
Tabla 22. Propiedades de enRoleLogging.properties (continuación)
Especifica el nombre del archivo de rastreo.
Ejemplo:
handler.file.trace.fileName=trace.log
handler.file.trace.formatterName
No modifique este valor ni esta clave de propiedad.
Especifica el formateador del manejador de archivos de rastreo.
Ejemplo:
handler.file.trace.formatterName=formatter.PDXML.trace
Propiedades del manejador de copia de archivos FFDC (captura de datos en primer
error)
handler.ffdc.baseDir
No modifique este valor ni esta clave de propiedad.
Especifica el directorio base de FFDC.
Ejemplo:
handler.ffdc.baseDir=c:/dir_com_tivoli/CTGIM/ffdc
handler.ffdc.triggerRepeatTime
Especifica el tiempo mínimo [en milisegundos] tras un suceso desencadenante inicial
durante el cual el manejador responderá con sucesos desencadenantes subsiguientes.
Ejemplo:
handler.ffdc.triggerRepeatTime=300000
handler.ffdc.fileCopy.className
No modifique este valor ni esta clave de propiedad.
Especifica el nombre de clase del manejador.
Ejemplo:
handler.ffdc.fileCopy.className=com.tivoli.log.FileCopyHandler
handler.ffdc.fileCopy.triggerFilter
Especifica el filtro para controlar qué sucesos desencadena una acción FFDC.
Ejemplo:
handler.ffdc.fileCopy.triggerFilter=filter.msgId
handler.ffdc.fileCopy.fileTimestampFormat
Consulta
155
Tabla 22. Propiedades de enRoleLogging.properties (continuación)
No modifique este valor ni esta clave de propiedad.
Especifica el formato de indicación de fecha y hora que se anexa al nombre de
carpeta y nombre de archivo FFDC.
Ejemplo:
handler.ffdc.fileCopy.fileTimestampFormat=yyyy.MM.dd-HH.mm.ss
handler.ffdc.fileCopy.filesToCopy
Especifica los archivos que se copiarán en el directorio FFDC cuando se
desencadene la FFDC.
Ejemplo (en una línea):
handler.ffdc.fileCopy.filesToCopy=
"c:/tivoli_comm_dir/CTGIM/logs/trace.log"
"c:/tivoli_comm_dir/CTGIM/logs/msg.log"
Propiedades del filtro de ID de mensajes FFDC
filter.msgId.className
No modifique este valor ni esta clave de propiedad.
Especifica el nombre de clase del filtro de ID de mensajes.
Ejemplo:
filter.msgId.className=com.tivoli.log.MsgIdFilter
filter.msgId.description
Especifica la descripción del filtro de ID de mensajes.
Ejemplo:
filter.msgId.description=IBM Tivoli Identity Manager FFDC Message Id Filter
filter.msgId.msgIds
Especifica los ID de mensajes TMS que desencadenarán la acción FFDC. Los ID de
mensajes que aparecen en esta lista deben representar los errores de sistema más
graves.
Ejemplo (en una línea):
filter.msgId.msgIds=CTGIMA401E CTGIMA438W CTGIME013E CTGIME035E
CTGIME203E CTGIMF003E CTGIMF011E CTGIMF012E CTGIMF013E CTGIMF014E
filter.msgId.mode
No modifique este valor ni esta clave de propiedad.
Especifica la modalidad del filtro.
Ejemplo:
filter.msgId.mode=PASSTHRU
filter.msgId.msgIdRepeatTime
156
Consulta
Tabla 22. Propiedades de enRoleLogging.properties (continuación)
Especifica el tiempo mínimo [en milisegundos], después de pasar un suceso de
registros con un ID de mensaje TMS dado, antes de que se pueda pasar otro con el
mismo ID de mensaje TMS.
Ejemplo:
filter.msgId.msgIdRepeatTime=300000
Propiedades del formateador
formatter.className
No modifique este valor ni esta clave de propiedad.
Especifica el nombre de clase del formateador.
Ejemplo:
formatter.className=com.ibm.log.Formatter
formatter.description
Especifica la descripción del formateador.
Ejemplo:
formatter.description=formatter
formatter.dateFormat
Especifica el patrón SimpleDateFormat de Java para dar formato a las fechas de
sucesos.
Ejemplo:
formatter.dateFormat=yyyy.MM.dd
formatter.timeFormat
Especifica el patrón SimpleDateFormat de Java para dar formato a las horas de
sucesos.
Ejemplo:
formatter.timeFormat=HH:mm:ss.SSS
Propiedades del formateador PDXML
formatter.PDXML.className
No modifique este valor ni esta clave de propiedad.
Especifica el nombre de la clase del formateador que da formato a sucesos de
registro en formato LOG XML.
Ejemplo:
formatter.PDXML.className=com.ibm.itim.logging.LogXMLFormatter
formatter.PDXML.description
Consulta
157
Tabla 22. Propiedades de enRoleLogging.properties (continuación)
Especifica la descripción del formateador.
Ejemplo:
formatter.PDXML.description=TIM Log XML Formatter
formatter.PDXML.msg.forceAsMessage
Hace que el formateador de mensajes dé formato a todas las salidas como sucesos
de mensajes, independientemente de su contenido.
Ejemplo:
formatter.PDXML.msg.forceAsMessage=true
Habilitación del rastreo en la interfaz de usuario de Tivoli Identity
Manager
Debe establecer el nivel en FINEST en WebSphere Application Server para que
funcione el rastreo de la interfaz de usuario.
La habilitación del rastreo en la interfaz de usuario de Tivoli Identity Manager es
un proceso de dos pasos:
v Establezca los registradores de componentes adecuados en el archivo
enRoleLogging.properties.
v Habilite el rastreo de WebSphere iniciando la sesión en la consola administrativa
de WebSphere Application Server.
Para habilitar el nivel de rastreo para la consola administrativa deWebSphere
Application Server, siga estos pasos:
1. Inicie la sesión en la consola administrativa de WebSphere Application Server:
2. Seleccione Resolución de problemas -> Anotaciones cronológicas y rastreo.
3. Pulse el servidor adecuado, por ejemplo, Server1.
4. Seleccione Cambiar los niveles de detalle de las anotaciones cronológicas en
Propiedades generales.
v Para realizar un cambio estático en la configuración, pulse Configuración.
Se muestra una lista de componentes muy conocidos, paquetes y grupos.
v Para cambiar dinámicamente la configuración, pulse Tiempo de ejecución.
Se muestra la lista de componentes, paquetes y grupos de todos los
componentes registrados actualmente en el servidor que se está ejecutando.
5. Expanda el nodo para com.ibm.itim.* bajo *[Todos los componentes].
6. Pulse el nodo con la etiqueta com.ibm.itim.ui.* y seleccione Todos los
mensajes y rastreos.
7. Haga clic en Aplicar.
8. Haga clic en Aceptar.
9. Detenga y reinicie WebSphere Application Server para establecer los cambios de
configuración estáticos.
Debe habilitar el nivel de depuración para el paquete de la interfaz de usuario en
la sección siguiente del archivo enRoleLogging.properties:
158
Consulta
#
#
#
#
#
#
#
#
#
#
#
#
UI-tier tracing
logger.trace.com.ibm.itim.ui.level=DEBUG_MIN
logger.trace.com.ibm.itim.ui.common.level=DEBUG_MIN
logger.trace.com.ibm.itim.ui.controller.level=DEBUG_MIN
logger.trace.com.ibm.itim.ui.customizer.level=DEBUG_MIN
logger.trace.com.ibm.itim.ui.help.level=DEBUG_MIN
logger.trace.com.ibm.itim.ui.impl.level=DEBUG_MIN
logger.trace.com.ibm.itim.ui.listener.level=DEBUG_MIN
logger.trace.com.ibm.itim.ui.tasklauncher.level=DEBUG_MIN
logger.trace.com.ibm.itim.ui.validator.level=DEBUG_MIN
logger.trace.com.ibm.itim.ui.view.level=DEBUG_MIN
logger.trace.com.ibm.itim.ui.viewmodel.level=DEBUG_MIN
Para obtener más información acerca de cómo establecer el nivel de rastreo,
consulte http://publib.boulder.ibm.com/infocenter/dmndhelp/v6rxmx/
index.jsp?topic=/com.ibm.btools.help.monitor.doc/Doc/tasks/administration/
ad_trace_script.html.
enRoleMail.properties
El archivo enRoleMail.properties contiene atributos que especifican el protocolo
de transporte de correo que utiliza la API de JavaMail y otras propiedades
específicas de la aplicación Tivoli Identity Manager. Debe proporcionar los valores
para las propiedades específicas de la aplicación.
Los valores predeterminados vienen proporcionados por las propiedades
específicas de JavaMail (incluidos el protocolo y el proveedor de correo
predeterminados). Si cambia los valores predeterminados por las propiedades
específicas de JavaMail, debe proporcionar sus propias pruebas y verificación de la
implementación y el protocolo personalizado.
Consulte el siguiente URL para obtener información adicional acerca del proveedor
y la utilización:
http://java.sun.com/products/javamail/
La Tabla 23 define las propiedades que se utilizan para configurar las propiedades
de correo de IBM Tivoli Identity Manager.
Tabla 23. Propiedades de enRoleMail.properties
Atributos de correo específicos de la aplicación de IBM Tivoli Identity Manager
mail.baseurl
Especifica el URL base que se utiliza para construir el URL de inicio de sesión en las
notificaciones de correo electrónico enviadas a los nuevos usuarios de IBM Tivoli
Identity Manager. El valor predeterminado antes de ejecutar el programa de utilidad
runConfig por primera vez debe ser http://localhost:80.
Este valor se proporciona inicialmente durante la instalación de IBM Tivoli Identity
Manager. También puede proporcionar el valor por medio del programa de utilidad
runConfig.
Esta propiedad es obligatoria.
Ejemplo:
mail.baseurl=http://localhost:80
mail.itim.context
Consulta
159
Tabla 23. Propiedades de enRoleMail.properties (continuación)
Especifica el contexto raíz para IBM Tivoli Identity Manager.
Ejemplo:
mail.itim.context=/itim
mail.context.console
Especifica el contexto raíz para la consola de IBM Tivoli Identity Manager.
Esta propiedad es obligatoria.
Ejemplo:
mail.context.console=/itim/console
mail.context.enduser
Especifica el contexto raíz para la consola de autoservicio de IBM Tivoli Identity
Manager.
Esta propiedad es obligatoria.
Ejemplo:
mail.context.enduser=/itim/self
mail.from
Especifica la dirección de correo electrónico de devolución del usuario actual.
Este valor se proporciona inicialmente durante la instalación de IBM Tivoli Identity
Manager. También puede proporcionar el valor por medio del programa de utilidad
runConfig.
Esta propiedad es obligatoria.
Ejemplo:
[email protected]
mail.transport.protocol
Especifica el protocolo de transporte predeterminado. El valor predeterminado es el
protocolo de transporte SMTP de Sun.
Esta propiedad es obligatoria.
Ejemplo (predeterminado):
mail.transport.protocol=SMTP
mail.title
160
Consulta
Tabla 23. Propiedades de enRoleMail.properties (continuación)
Esta propiedad no se utiliza para especificar el mensaje de cabecera de título de una
notificación de correo electrónico en la versión 5.0 de IBM Tivoli Identity Manager.
La propiedad mail.title de Labels.properties especifica el mensaje de cabecera de
título de notificación de correo electrónico. Debe editar este archivo de propiedades
directamente para proporcionar el valor de esta propiedad.
Esta propiedad era obligatoria previamente.
Ejemplo (predeterminado) en releases anteriores:
mail.title=ITIM notification
Atributos de correo específicos para el servicio de correo integrado de Java
mail.host
Especifica la dirección IP de la máquina donde se ubica el servidor de correo.
Este valor se proporciona inicialmente durante la instalación de IBM Tivoli Identity
Manager. También puede proporcionar este valor por medio del programa de
utilidad runConfig.
Esta propiedad es obligatoria.
Ejemplo:
mail.host=111.222.333.444
mail.protocolo.host
Especifica la dirección IP del servidor de correo predeterminado específico del
protocolo. Esta clave de propiedad prevalece sobre la clave de propiedad mail.host.
De forma predeterminada, esta propiedad no es obligatoria y no se proporciona
ningún valor.
mail.protocolo.user
Especifica el nombre de usuario predeterminado específico de protocolo para
conectar con el servidor de correo. Esta clave de propiedad prevalece sobre la clave
de propiedad mail.user.
De forma predeterminada, esta propiedad no es obligatoria y no se proporciona
ningún valor.
mail.protocolo.class
Especifica la implementación de la clase Java del protocolo de correo.
Ejemplo (predeterminado):
mail.SMTP.class=com.sun.mail.smtp.SMTPTransport
mail.store.protocol
Especifica el protocolo de acceso a mensajes predeterminado.
De forma predeterminada, esta propiedad no es obligatoria y no se proporciona
ningún valor.
mail.user
Consulta
161
Tabla 23. Propiedades de enRoleMail.properties (continuación)
Especifica el nombre de usuario que se utiliza durante la autenticación cuando se
realiza la conexión a un servidor de correo.
De forma predeterminada, esta propiedad no es obligatoria y no se proporciona
ningún valor. En el entorno de IBM Tivoli Identity Manager, el servidor de correo
está ubicado dentro del cortafuegos, por lo que este nivel de autenticación se hace
innecesario.
mail.protocolo.user
Especifica el nombre de usuario específico del protocolo que se utiliza durante la
autenticación al conectarse a un servidor de correo. Esta clave de propiedad
prevalece sobre la clave de propiedad mail.user.
De forma predeterminada, esta propiedad no es obligatoria y no se proporciona
ningún valor.
enrolepolicies.properties
El archivo enrolepolicies.properties proporciona valores estándar y
personalizados que dan soporte a las funciones de la política de suministro.
Entre las funciones soportadas en este archivo de propiedades se incluyen:
v Especificar las clases Java para procesar los conflictos de la política de
suministro por medio de las directivas de unión
v Especificar los tiempos de espera de caché de la directiva de unión
predeterminada y no predeterminada
v Declarar atributos de política para que se omitan durante la validación de
conformidad con políticas
Una directiva de unión es un conjunto de reglas que se utiliza para determinar
cómo se manejan los atributos cuando una política de suministro entra en conflicto
con otra. Las directivas de unión utilizan las construcciones lógicas para resolver
los conflictos. Los ejemplos incluyen la combinación de todos los atributos de
política (unión), por medio sólo de atributos comunes (intersección) y la resolución
de conflictos por medio de AND booleano u OR lógico.
Hay 12 tipos de directivas de unión que puede utilizar. Las directivas de unión de
la política de suministro entran en vigor cuando hay más de una política de
suministro definida para el mismo usuario (o grupo de usuarios) para el mismo
servicio de destino, instancia de servicio o tipo de servicio.
Adicionalmente, las directivas de unión personalizadas se pueden definir si se
escribe una clase Java personalizada, se añade a la variable classpath y, a
continuación, se proporciona el nombre de clase Java completo en la GUI de la
configuración de política. Si amplía o sustituye una de las clases de la directiva de
unión existente, tendrá que agregar la clave y el valor de propiedad personalizada
al archivo enrolepolicies.properties. Por ejemplo, si desarrolló una clase nueva
(com.abc.TextualEx) para sustituir a la clase existente para las uniones textuales, la
línea de registro será la siguiente:
provisioning.policy.join.Textual= com.abc.TextualEx
La Tabla 24 en la página 163 define las propiedades que se utilizan para configurar
las políticas de IBM Tivoli Identity Manager.
162
Consulta
Tabla 24. Propiedades de enrolepolicies.properties
Clases de directiva de unión
provisioning.policy.join.PrecedenceSequence=com.ibm.itim.policy.join.
PrecedenceSequence
provisioning.policy.join.Boolean=com.ibm.itim.policy.join.Boolean
provisioning.policy.join.Bitwise=com.ibm.itim.policy.join.Bitwise
provisioning.policy.join.Numeric=com.ibm.itim.policy.join.Numeric
provisioning.policy.join.Textual=com.ibm.itim.policy.join.Textual
provisioning.policy.join.Textual.AppendSeparator=<<<>>>
provisioning.policy.join.Multivalued=com.ibm.itim.policy.join.Multivalued
No modifique estos valores y claves de propiedad.
Cada clave de propiedad especifica una clase Java que se puede utilizar para
procesar la lógica de una directiva de unión que es obligatoria para resolver un
conflicto de política de suministro.
Caracteres de separación de anexos
provisioning.policy.join.Textual.AppendSeparator
Especifica el carácter utilizado por la clase Java de la directiva de unión textual para
separar los valores individuales de un atributo de varios valores.
Ejemplo:
provisioning.policy.join.Textual.AppendSeparator=<<<>>>
Tiempos de espera de la caché de la directiva de unión
provisioning.policy.join.defaultCacheTimeout
Especifica el intervalo de tiempo de espera [en segundos] entre las renovaciones de
la caché que almacena los valores de la caché de la directiva de unión
predeterminada.
El valor predeterminado es 86400 segundos, que equivale a 24 horas.
Ejemplo (predeterminado):
provisioning.policy.join.defaultCacheTimeout=86400
provisioning.policy.join.overridingCacheTimeout
Especifica el intervalo de tiempo de espera [en segundos] entre las renovaciones de
la caché que almacena los valores de la directiva de unión no predeterminados.
El valor predeterminado es 300 segundos, que equivale a 5 minutos.
Ejemplo:
provisioning.policy.join.overridingCacheTimeout=300
Atributos de cuenta omitidos por la validación de conformidad con políticas
Atributos genéricos excluidos (valor predeterminado=1):
Consulta
163
Tabla 24. Propiedades de enrolepolicies.properties (continuación)
nonvalidateable.attribute.eraccountcompliance
nonvalidateable.attribute.eracl
nonvalidateable.attribute.eraccountstatus
nonvalidateable.attribute.erauthorizationowner
nonvalidateable.attribute.erglobalid
nonvalidateable.attribute.erhistoricalpassword
nonvalidateable.attribute.erisdeleted
nonvalidateable.attribute.erlastmodifiedtime
nonvalidateable.attribute.erlogontimes
nonvalidateable.attribute.ernumlogons
nonvalidateable.attribute.erparent
nonvalidateable.attribute.erpassword
nonvalidateable.attribute.erservice
#nonvalidateable.attribute.eruid
nonvalidateable.attribute.objectclass
nonvalidateable.attribute.owner
nonvalidateable.attribute.ercreatedate
nonvalidateable.attribute.erlaststatuschangedate
nonvalidateable.attribute.erpswdlastchanged
nonvalidateable.attribute.erlastaccessdate
nonvalidateable.attribute.ernumlogonattempt
Atributos excluidos de Windows NT®:
nonvalidateable.attribute.erntpasswordexpired
nonvalidateable.attribute.erntuserbadpwdcount
nonvalidateable.attribute.erntlockedout
Declara los atributos de cuenta que se deben omitir durante la validación de
conformidad con políticas. Esta lista de exclusión ayuda a reducir la actividad
general innecesaria durante la validación de conformidad y reduce el riesgo de
errores en el sistema que pueden estar provocados por los atributos que no se
pueden resolver lógicamente durante la validación.
Tamaño de partición
policy.partition.size
Para analizar una gran número de personas durante un suceso de cambio de
políticas sin incurrir en tiempos de espera de transacción excedidos, es necesario
dividir o desglosar el número total de personas afectadas. Esto se realiza no para el
inicio del análisis de la política actual, sino estrictamente para evitar esperar en una
transacción única de base de datos hasta que se procesen todas las personas. Crear
transacciones múltiples o particionar de forma rápida el número total de usuarios
disminuye el riesgo de que cualquiera de estas transacciones (más pequeñas) exceda
el valor de tiempo de espera de la transacción. Cuando se utiliza un clúster de
WebSphere Application Server con IBM Tivoli Identity Manager, es útil darse cuenta
de que la operación de particionamiento propiamente dicha no se realiza en clúster.
Se realiza en el mismo nodo de WebSphere Application Server que recibe la
solicitud de cambio de política.
Especifica el número de personas o cuentas que se evaluarán en cada hebra durante
el análisis de política de alto volumen. Se produce un análisis de política de alto
volumen cuando un cambio de políticas o un cambio en el nivel de imposición de
servicios afectan a un gran grupo de personas o cuentas. Un tamaño de partición
superior provoca menos hebras. Un tamaño de partición más pequeño hace que
haya más hebras ejecutándose en paralelo, con lo que se necesitará más memoria.
Ejemplo (predeterminado):
policy.partition.size=2500
policy.message.size
164
Consulta
Tabla 24. Propiedades de enrolepolicies.properties (continuación)
Especifica el número de personas que se analizan como parte del cambio de política
en un único mensaje JMS. Ya que WebSphere Application Server sondea y reutilizar
las hebras de WebSphere Application Server, el mecanismo JMS se utiliza para
poner en cola las unidades individuales de trabajo de análisis para todas las hebras
de WebSphere Application Server asignadas (o consumidores de mensajes). Por lo
tanto, es muy probable que al hacer grandes cambios de política que afecten a un
gran número de personas, todas las hebras de consumidor JMS estén ocupadas
procesando la imposición y análisis de política, y la cola para cada hebra se saturará
con aún más mensajes a procesar.
Ejemplo (predeterminado):
policy.message.size=25
enroleworkflow.properties
El archivo enroleworkflow.properties especifica las correlaciones de archivo XML
para los flujos de trabajo definidos por el sistema.
Un flujo de trabajo es un proceso que especifica el flujo de operaciones que implica
las operaciones empresariales y las interacciones humanas. Un diseño de flujo de
trabajo define el modo en que se procesa una lógica empresarial concreta. Los
archivos XML especificados en el archivo enroleworkflow.properties implementan
los diseños de flujo de trabajo.
El flujo de trabajo del sistema está identificado por un ID de tipo exclusivo y un
archivo XML asociado. Los archivos de flujo de trabajo XML están ubicados en el
directorio siguiente:
ITIM_HOME\data\workflow_systemprocess
No debe eliminar o modificar los valores de archivo XML e ID del tipo de flujo de
trabajo del sistema predeterminado proporcionado en el archivo
enroleworkflow.properties.
No se da soporte a la actualización de los siguientes archivos XML.
La Tabla 25 define las propiedades que se utilizan para configurar los flujos de
trabajo de IBM Tivoli Identity Manager.
Tabla 25. Propiedades de enroleworkflow.properties
Flujo de trabajo de imposición de política
enrole.workflow.PS=enforcepolicyforservice.xml
Flujo de trabajo de cumplimiento de cuenta para de cuentas no conformes
enrole.workflow.EN=fulfillpolicyforaccount.xml
Flujo de trabajo de gestión de selección de servicios
enrole.workflow.SA=addserviceselectionpolicy.xml
enrole.workflow.SC=changeserviceselectionpolicy.xml
enrole.workflow.SD=removeserviceselectionpolicy.xml
Flujo de trabajo de la gestión de la política de suministro
Consulta
165
Tabla 25. Propiedades de enroleworkflow.properties (continuación)
#Add policy
enrole.workflow.PA=addpolicy.xml
#Modify policy
enrole.workflow.PC=changepolicy.xml
#Delete policy
enrole.workflow.PD=removepolicy.xml
#User BU change
enrole.workflow.UO=userbuchange.xml
Flujo de trabajo de conciliación
enrole.workflow.RC=reconciliation.xml
enrole.workflow.HR=hrfeed.xml
Flujo de trabajo del rol dinámico
#Add dynamic role
enrole.workflow.DA=adddynamicrole.xml
#Modify dynamic role
enrole.workflow.DC=changedynamicrole.xml
#Delete dynamic role
enrole.workflow.DD=removedynamicrole.xml
#Import Policy Enforcement
enrole.workflow.PE=importpolicyenforcement.xml
#Process Lifecycle Rule
enrole.workflow.LC=lifecyclerule.xml
fesiextensions.properties (en desuso)
El archivo fesiextensions.properties (en desuso) proporciona soporte para las
ampliaciones JavaScript Free EcmaScript Interpreter (FESI) para versiones
anteriores a la 5.0 de Tivoli Identity Manager. No cree nuevas ampliaciones
utilizando esta arquitectura en desuso.
El archivo fesiextensions.properties define ampliaciones FESI personalizadas e
integradas necesarias para IBM Tivoli Identity Manager. FESI significa Free
EcmaScript Interpreter, un intérprete de JavaScript escrito en Java. El intérprete
FESI lee sus archivos de propiedades durante la inicialización de IBM Tivoli
Identity Manager para establecer las ampliaciones para las clases Java necesarias.
Las ampliaciones FESI representan regiones, o enlaces de mecanismos, en el
software de IBM Tivoli Identity Manager donde se permite el uso del código de
JavaScript para introducir la lógica empresarial integrada o personalizada. Las
ampliaciones FESI se especifican por medio de un formato de par de clave y valor
de propiedad:
nombre-clave-propiedad=valor
El valor es un nombre completo de archivo de la clase Java. La
nombre-clave-propiedad incluye un prefijo estándar (fesi.extension), un contexto y
(para clases personalizadas) un nombre identificador (ID) que represente el archivo
completo de Java. Por lo general, el nombre de clase más breve no cualificado se
utiliza como nombre identificador (ID).
fesi.extension.contexto.ID_clase=nombre-clase-completo
Las ampliaciones FESI del sistema que utiliza IBM Tivoli Identity Manager
incluyen un contexto global y tres contextos específicos.
166
Consulta
Identificador de contexto global:
Enrole
Identificadores de contexto específico:
IdentityPolicy
HostSelection
Workflow
A pesar de que no debe modificar las ampliaciones FESI del sistema integrado,
puede agregar ampliaciones FESI personalizadas que pueden ser obligatorias para
los programas personalizados. Al agregar una ampliación FESI personalizada a este
archivo de propiedades, debe utilizar uno de los contextos específicos o globales
establecidos.
Indique el nombre completo del archivo de la clase Java personalizada como valor
y proporciona un identificador (ID) de clave de propiedad exclusivo para la clase
personalizada. Ejemplos:
fesi.extension.IdentityPolicy.ID-clase-personalizada=nombre-completo-clase-personalizada
fesi.extension.HostSelection.ID-clase-personalizada=nombre-completo-clase-personalizada
La Tabla 26 define las propiedades en desuso utilizadas para configurar las
ampliaciones FESI (en un línea).
Tabla 26. Propiedades de fesiextensions.properties (en desuso)
Ampliaciones FESI del sistema
fesi.extension.Enrole=com.ibm.itim.fesiextensions.Enrole
fesi.extension.IdentityPolicy=com.ibm.itim.fesiextensions.IdentityPolicy
fesi.extension.HostSelection=com.ibm.itim.fesiextensions.ModelExtension
fesi.extension.OrphanAdoption.Model=com.ibm.itim.fesiextensions.ModelExtension
fesi.extension.PersonPlacementRules.Model=com.ibm.itim.
fesiextensions.ModelExtension
fesi.extension.Workflow=com.ibm.itim.workflow.fesiextensions.WorkflowExtension
fesi.extension.Workflow.Model=com.ibm.itim.fesiextensions.ModelExtension
(la siguiente sentencia de ampliación es en una línea)
fesi.extension.PostOffice=com.ibm.itim.mail.postoffice.fesiextensions.
PostOfficeExtension
fesi.extension.Reminder=com.ibm.itim.fesiextensions.ReminderExtension
El valor de cada clave de propiedad del sistema es un archivo de clase Java
completo que proporciona IBM Tivoli Identity Manager.
No elimine ni modifique la información de esta sección
Ampliaciones FESI personalizadas
Ejemplo:
fesi.extension.enRole.ID-clase-personalizada=nombre-completo-clase-personalizada
Puede modificar los archivos fesiextensions.properties para incluir ampliaciones
FESI adicionales para los métodos y los objetos personalizados obligatorios.
El valor de cada clave de propiedad personalizada es un archivo de clase Java
personalizada completo.
Todos los nombres de claves de propiedad deben ser exclusivos.
Consulta
167
Tabla 26. Propiedades de fesiextensions.properties (en desuso) (continuación)
Acceso a la contraseña de JavaScript
javascript.password.access.enabled
Determina si se puede acceder a las contraseñas sin formato desde los objetos
Person y Account. Los valores son:
v true – El acceso a la contraseña está habilitado.
v false – No se puede acceder a las contraseñas mediante javascript.
Ejemplo (predeterminado):
javascript.password.access.enabled=true
helpmappings.properties
El archivo helpmappings.properties permite a un cliente sustituir el sistema de
ayuda instalado de Tivoli Identity Manager por un sistema de ayuda alternativo.
El archivo helpmappings.properties contiene las propiedades siguientes:
Tabla 27. Propiedades de helpmappings.properties
url.contexthelp
Especifica un URL externo de ayuda. El valor predeterminado está en blanco, con lo
que se utiliza el URL del sistema de ayuda de IBM Tivoli Identity Manager. El URL
también añadirá el entorno local resuelto basado en los paquetes de idiomas de IBM
Tivoli Identity Manager que están instalados. Por ejemplo, http://
www.timcustomer.com/help/en/ui_login.html
Ejemplo:
url.contexthelp=www.timcustomer.com/help
Haciendo clic en el icono de ayuda (’?’) en la interfaz gráfica de usuario de IBM
Tivoli Identity Manager, cargará el archivo html de la correlación de clave
(http://www.timcustomer.com/help/customerfilename.html). Para una página de
inicio, el valor de customerfilename puede ser ui_login.html y la dirección completa
http://www.timcustomer.com/help/ui_login.html.
reportingLabels.properties
Este archivo de propiedades es como otros archivos de propiedades relacionados
con etiquetas, como labels.properties o customLabels.properties, y contiene las
etiquetas utilizadas por los informes.
reporttabledeny.properties
De forma predeterminada, esta propiedad contiene una lista de tablas de Tivoli
Identity Manager utilizadas por varios componentes de Tivoli Identity Manager
para almacenar datos internos o de configuración que no son adecuados para un
informe.
Este archivo lo utiliza el IBM Tivoli Identity Manager Server para el motor de
informes.
La tabla siguiente define las propiedades que determinan la información que no se
muestra en los informes.
168
Consulta
Tabla 28. reporttabledeny.properties
tables
Contiene una lista separada por comas de todas la tablas de base de datos de IBM
Tivoli Identity Manager que se excluyen de la producción de informes.
Si una tabla es parte de esta propiedad, la tabla y sus columnas no aparecen en el
diseñador de informes y no se puede diseñar un informe sobre las columnas de esta
tabla. Un usuario que quiera impedir que el diseñador de informes utilice una tabla
de base de datos específica, puede seleccionar añadir la tabla en la propiedad
tables.
Ejemplo:
tables=JMSState, JMSStore, entity_column, column_report, report,
synchronization_history, synchronization_lock, changelog,
resources_synchronizations, NextValue, ListData,
AUTH_KEY, ATTR_CHANGE, ACCT_CHANGE, LCR_INPROGRESS_TABLE, WORKFLOW_CALLBACK,
POLICY_ANALYSIS, POLICY_ANALYSIS_ERROR, PO_TOPIC_TABLE,
PO_NOTIFICATION_TABLE, BULK_DATA_SERVICE, MIGRATION_STATUS, SYNCH_POINT,
COMPLIANCE_ALERT, PO_NOTIFICATION_HTMLBODY_TABLE, BULK_DATA_STORE,
BULK_DATA_INDEX, MANUAL_SERVICE_RECON_ACCOUNTS, SCRIPT, ACTIVITY_LOCK
allowedRestrictedColumns
Hace que los administradores de IBM Tivoli Identity Manager puedan permitir
columnas explícitamente de tipos de datos restringidos, para que se utilicen para
informes personalizados de diseño y ejecución. No obstante, esta clase de informes
sólo funcionarán para los administradores de IBM Tivoli Identity Manager. Si un
usuario que no es administrador intenta ejecutar estos informes, el usuario recibirá
una AuthorizationException.
De forma predeterminada, las columnas de los tipos de datos siguientes no están
disponibles cuando se diseñan o ejecutan informes personalizados:
BLOB, CLOB, BINARY, VARBINARY, LONGVARBINARY y LONGVARCHAR
El valor de la propiedad es una lista separada por comas de
<TABLE_NAME>.<COLUMN_NAME>. Si está propiedad no está definida, ninguna
de las columnas del tipo de datos restringido estará disponible para informes.
Ejemplo (en una línea):
allowedRestrictedColumns=ACTIVITY.RESULT_DETAIL, PROCESS.RESULT_DETAIL,
PROCESSLOG.NEW_DATA
scriptframework.properties (recomendado)
Para todas las nuevas ampliaciones JavaScript, utilice el archivo
scriptframework.properties para configurar las ampliaciones de script y otras
funciones de scripts.
JavaScript se utiliza en IBM Tivoli Identity Manager para especificar políticas de
identidad, parámetros de política de suministro, políticas de selección de servicios,
reglas de colocación para las alimentaciones de identidades y adopción de cuentas
huérfanas.
Además, JavaScript se utiliza en los flujos de trabajo para especificar las
condiciones de transición, condiciones de bucle, actividades de JavaScript,
postscript de actividad y notificación de flujo de trabajo. IBM Tivoli Identity
Manager proporciona una variedad de ampliaciones de script para exponer los
servicios y datos útiles de cada uno de estos scripts. Además de estas
Consulta
169
ampliaciones, los administradores del sistema pueden configurar IBM Tivoli
Identity Manager para cargar ampliaciones JavaScript personalizadas.
El archivo scriptframework.properties se utiliza para configurar todas las partes del
soporte de scripts en IBM Tivoli Identity Manager. Incluye las ampliaciones de
script que se deben utilizar, el intérprete de scripts que se debe utilizar y algunas
otras propiedades relacionadas con los scripts.
La mayor parte del archivo scriptframework se divide en estos componentes de
host: PostOffice, ProvisioningPolicy, AccountTemplate, HostSelection,
PersonPlacementRules, Workflow, Reminder, IdentityPolicy, Notification y
OrphanAdoption.
La sección que más se utiliza del archivo de propiedades es para la configuración
de las ampliaciones a cargar para cada componente de host. Para que la
infraestructura del script cargue una ampliación, agregue una línea de valor de
clave al archivo scriptframework.properties, de forma similar a este ejemplo:
ITIM.extension.{Componente de host}=com.ibm.itim.nombre_clase
donde ITIM.extension.{Componente de host} es la clave y com.ibm.itim.nombre_clase es
el valor. El valor de {Componente de host} puede ser cualquiera de los componentes
enumerados anteriormente. Si quiere cargar más de una única ampliación para un
componente de host, puede agregar un sufijo en el componente de host, como:
ITIM.extension.{Componente de host}.suffix=com.ibm.itim.nombre_clase
La única regla es que cada clave debe ser única en el archivo.
El archivo scriptframework.properties viene configurado previamente para cargar
las ampliaciones necesarias para utilizar IBM Tivoli Identity Manager con sus
scripts predeterminados. No elimine ninguna línea en scriptframework.properties,
ya que podría producir que IBM Tivoli Identity Manager pare de funcionar
adecuadamente.
La siguiente sección del archivo scriptframework.properties configura el intérprete
de scripts a utilizar para cada componente de host. IBM Tivoli Identity Manager da
soporte actualmente a dos intérpretes de scripts diferentes, IBM JSEngine y FESI
JavaScript Interpreter.
Para configurar el intérprete a utilizar para cada componente de host, hay una
línea en el archivo como:
ITIM.interpreter.{Componente de host}={Motor}
El valor de {Componente de host} puede ser cualquiera de los componentes
enumerados anteriormente y el valor de {Motor} puede ser IBMJS o FESI. La
variable {Motor} no distingue entre mayúsculas y minúsculas, por lo que escribir
fesi funciona de la misma forma que escribir FESI. IBMJS es el motor de scripts
predeterminado, por lo que al indicar cualquier valor para {Motor} distinto a
IBMJS, FESI o ningún valor, se utilizará el motor IBMJS. El motor FESI está en
desuso y sólo se debe utilizar si ha actualizado desde la versión 4.6 o más antigua
de IBM Tivoli Identity Manager y está utilizando ampliaciones FESI
personalizadas.
La siguiente sección en el archivo de configuración habilita la configuración de
derivadores de JavaScript. Por motivos de seguridad, IBM Tivoli Identity Manager
no pone a disposición todos los objetos en el entorno de scrips. En lugar de esto, la
170
Consulta
mayoría de los objetos se derivan en una clase de derivador más restrictiva que
sólo pone a disposición determinados métodos. IBM Tivoli Identity Manager tiene
una configuración de derivador predeterminada que se puede sustituir o ampliar
en esta sección. Esta es una característica avanzada y no se debe utilizar en la
mayoría de los casos. Para obtener más detalles acerca de cómo configurar
derivadores personalizados, consulte los comentarios en el archivo
scriptframework.properties.
La siguiente sección permite configurar el acceso directo a Java desde scripts
ejecutados por el intérprete IBM JSEngine. El hecho de permitir acceso directo a
Java posibilita muchas cosas, pero también permite que los scripts omitan partes
de la seguridad integrada en la infraestructura del script, por lo que se debe
utilizar con cuidado. Consulte los comentarios en el archivo
scriptframework.properties para obtener más información acerca de cómo habilitar
el acceso directo a Java.
La sección final del archivo configura propiedades específicas que pueden ser
útiles. Cada propiedad específica se explica en los comentarios del archivo
scriptframework.properties, incluidos valores predeterminados y permitidos.
SelfServiceHelp.properties
El archivo SelfServiceHelp.properties puede utilizarse para redirigir la ayuda a
una ubicación personalizada para los clientes que desean tener su propio contenido
de ayuda para la interfaz de usuario de autoservicio.
La Tabla 29 define las propiedades que se utilizan para redirigir la ayuda a una
ubicación personalizada.
Tabla 29. Propiedades de SelfServiceHelp
Valores de SelfServiceHelp de IBM Tivoli Identity Manager
helpBaseUrl
Especifica el URL base al que enviar las solicitudes de ayuda. Un valor en blanco
indica que la ayuda debe ir al URL de la ayuda de aplicación de autoservicio.
Los valores válidos son el URL de la ayuda de aplicación de autoservicio:
Ejemplo:
helpBaseUrl=http://myserver:80
Las correlaciones de ID de ayuda son:
ID_ayuda = URL de página relativo
La sección de correlaciones de ayuda correlaciona los ID de páginas específicas con
un URL relativo que se envía al servidor de ayuda.
Por ejemplo:
helpBaseUrl=http://myserver:80
locale = en_US
loginId/relativeURL = login_help_url=ui/ui_eui_login.html
Final URL = http://myserver:80/en_US/ui/ui_eui_login.html
El entorno local se determina resolviendo el paquete de recursos
SelfServiceScreenText.properties correspondiente al usuario que tiene una sesión
iniciada actualmente y utilizando el entorno local asociado.
Consulta
171
SelfServiceHomePage.properties
El archivo SelfServiceHomePage.properties se utiliza para configurar las secciones
de la página de inicio inicialmente instalada para la interfaz de usuario de
autoservicio. En este archivo, puede agregar y eliminar tareas, así como actualizar
URL de iconos y etiquetas de la página de inicio.
El archivo tiene estos tipos de entradas:
v Sections=ActionNeeded, Password, nombre_configuración_sección ...
Define los nombres de configuración de sección en el orden en que se muestran.
v Definición de sección
Define las claves de etiquetas, iconos y otros objetos para la sección de la página
de inicio.
v Definiciones de tarea
Define la clave NLS y el enlace para el URL, la clave NLS para la descripción de
la tarea y otros atributos que permiten visualizar la tarea.
Para obtener más información acerca de estas propiedades, consulte la
documentación en el archivo de propiedades.
SelfServiceScreenText.properties
El archivo SelfServiceScreenText.properties es un paquete de recursos que
contiene las etiquetas para la interfaz de usuario de autoservicio.
Es posible que haya disponibles versiones del archivo para los idiomas instalados.
Por ejemplo: SelfServiceScreenText_en.properties y
SelfServiceScreenText_es.properties, que los clientes pueden editar.
SelfServiceUI.properties
El archivo SelfServiceUI.properties controla varias propiedades de la interfaz de
usuario de autoservicio.
La Tabla 30 define las propiedades que se utilizan para configurar la interfaz de
usuario de autoservicio.
Tabla 30. SelfServiceUI.properties
enrole.ui.pageSize
Especifica el tamaño de página para las listas de visualización.
Ejemplo:
enrole.ui.pageSize=10
enrole.ui.pageLinkMax
Especifica el número de enlaces de página que se mostrarán para los resultados que
abarcan varias páginas.
Ejemplo:
enrole.ui.pageLinkMax=100
enrole.ui.maxSearchResults
172
Consulta
Tabla 30. SelfServiceUI.properties (continuación)
Especifica el número máximo de resultados de búsqueda que se pueden mostrar.
Los resultados que se devolverán pueden ser menos, pero no más, que los valores
especificados en ui.properties.
Ejemplo:
enrole.ui.maxSearchResults=1000
enrole.ui.maxSearchResults.users
Especifica el número máximo de resultados de búsqueda que se pueden mostrar
para la tarea Delegar actividades - Buscar por usuario.
Ejemplo:
enrole.ui.maxSearchResults.users=100
enrole.ui.maxNrOfIteration
Especifica el número máximo de repeticiones de espera para el estado RequestInfo.
Ejemplo:
enrole.ui.maxNrOfIteration=20
enrole.ui.waitTime
Especifica el tiempo a esperar hasta que se pide el siguiente estado a la solicitud. El
producto de (maxNrOfIteration * waitTime) debe ser un máximo de 60 segundos. El
valor se interpreta en milisegundos.
Ejemplo:
enrole.ui.waitTime=3000
enrole.ui.logoffURL
Especifica el URL para reenviar al navegador cuando el usuario termine la sesión.
Ejemplo:
enrole.ui.logoffURL=myLogoffURL
enrole.ui.timeoutURL
Especifica el URL para reenviar al navegador en tiempo de espera excedido.
Ejemplo:
enrole.ui.timeoutURL=myTimeoutURL
ui.layout.showBanner
Especifica un cambio en los valores de las propiedades de ui.layout, para mostrar u
ocultar la imagen de cabecera de la interfaz de usuario de autoservicio.
Ejemplo:
ui.layout.showBanner=true
ui.layout.showFooter
Consulta
173
Tabla 30. SelfServiceUI.properties (continuación)
Especifica un cambio en los valores de las propiedades de ui.layout, para mostrar u
ocultar el pie de página de la interfaz de usuario de autoservicio.
Ejemplo:
ui.layout.showFooter=true
ui.layout.showToolbar
Especifica un cambio en los valores de las propiedades de ui.layout, para mostrar u
ocultar la barra de herramientas de la interfaz de usuario de autoservicio.
Ejemplo:
ui.layout.showToolbar=true
ui.layout.showNav
Especifica un cambio en los valores de las propiedades de ui.layout, para mostrar u
ocultar la página de navegación de la interfaz de usuario de autoservicio.
Ejemplo:
ui.layout.showNav=false
ui.usersearch.attr.cn
Especifica el atributo que aparecerá en el campo searchBy de una búsqueda de
usuario. El atributo incluye el prefijo ui.usersearch.attr. Para obtener más
información acerca de la correlación y sintaxis, consulte la documentación en el
archivo SelfServiceUI.properties.
Ejemplo:
ui.usersearch.attr.cn=cn
ui.usersearch.attr.sn
Especifica el atributo que aparecerá en el campo searchBy de una búsqueda de
usuario. El atributo incluye el prefijo ui.usersearch.attr. Para obtener más
información acerca de la correlación y sintaxis, consulte la documentación en el
archivo SelfServiceUI.properties.
Ejemplo:
ui.usersearch.attr.sn=sn
ui.usersearch.attr.telephonenumber
Especifica el atributo que aparecerá en el campo searchBy de una búsqueda de
usuario. El atributo incluye el prefijo ui.usersearch.attr. Para obtener más
información acerca de la correlación y sintaxis, consulte la documentación en el
archivo SelfServiceUI.properties.
Ejemplo:
ui.usersearch.attr.telephonenumber=telephonenumber
ui.usersearch.attr.mail
174
Consulta
Tabla 30. SelfServiceUI.properties (continuación)
Especifica el atributo que aparecerá en el campo searchBy de una búsqueda de
usuario. El atributo incluye el prefijo ui.usersearch.attr. Para obtener más
información acerca de la correlación y sintaxis, consulte la documentación en el
archivo SelfServiceUI.properties.
Ejemplo:
ui.usersearch.attr.mail=mail
ui.view.accounts.expandedbydefault
Especifica si los iconos de expansión de las cuentas afectadas de la página de
cambio de contraseña deben estar expandidos o contraídos (true|false) de forma
predeterminada. Los valores válidos son:
v true – Expande los iconos de expansión de las cuentas afectadas de la página de
cambio de contraseña de forma predeterminada.
v false – No expande los iconos de expansión de las cuentas afectadas de la página
de cambio de contraseña de forma predeterminada.
Ejemplo (predeterminado):
ui.view.accounts.expandedbydefault=false
ui.select.all.accounts
Especifica si se deben seleccionar o no todas las cuentas debajo del icono de
expansión de cuentas de forma predeterminada. Los valores válidos son:
v all – Selecciona todas las cuentas debajo del icono de expansión de cuentas.
v none – No selecciona ninguna de las cuentas debajo del icono de expansión de
cuentas.
v default – Mantiene el comportamiento predeterminado.
Ejemplo (predeterminado):
ui.select.all.accounts=default
ui.properties
El archivo ui.properties especifica los atributos que afectan al funcionamiento y
la visualización de la interfaz gráfica de usuario de Tivoli Identity Manager.
La Tabla 31 define la propiedades utilizadas para configurar la interfaz gráfica de
usuario de IBM Tivoli Identity Manager.
Tabla 31. Propiedades de ui.properties
Valores de configuración de la interfaz gráfica de usuario (GUI) de IBM Tivoli Identity
Manager
enrole.ui.customerLogo.image
Consulta
175
Tabla 31. Propiedades de ui.properties (continuación)
Especifica el nombre de archivo del gráfico que se visualiza en el lado derecho del
título de IBM Tivoli Identity Manager. El gráfico suele ser un logotipo de empresa.
Para visualizar la web en un navegador, el formato del archivo debe ser de un tipo
que el navegador soporte. El archivo de gráfico real debe estar almacenado en la
ubicación siguiente:
WebSphere Application Server:
WebSphere/AppServer/installedApps/nombre-dominio/ITIM.ear/
itim_console.war/html/images/
También puede especificar una vía de acceso bajo la consola webapp
(/itim/console/custom/banner.gif) o especificar el URL completo como
http://host.com/banner.gif.
Ejemplo:
enrole.ui.customerLogo.image=ibm_banner.gif
enrole.ui.customerLogo.url
Especifica el enlace de la URL que se activa cuando se hace clic en la imagen gráfica
personalizada (logotipo de empresa) a la derecha del título de IBM Tivoli Identity
Manager.
Ejemplo:
enrole.ui.customerLogo.url=www.ibm.com
enrole.ui.pageSize
Especifica el número de elementos de la lista que se muestra inicialmente en la
pantalla. Si hay más elementos en la lista, aparecen enlaces en la parte inferior de la
vista de lista que activa las continuaciones de la lista (por ejemplo, Página 2, Página
3, Página 4).
Ejemplo:
enrole.ui.pageSize=50
enrole.ui.maxSearchResults
Especifica el número de elementos devueltos en una búsqueda. El valor de esta
propiedad puede controlar la posible degradación del rendimiento del sistema
cuando se devuelve un número muy elevado de elementos.
Si modifica el valor de esta propiedad, debe reiniciar el servidor de aplicaciones.
Ejemplo:
enrole.ui.maxSearchResults=1000
ui.banner.showForLogin
176
Consulta
Tabla 31. Propiedades de ui.properties (continuación)
Especifica si mostrar la imagen de cabecera de la consola en la página de inicio de
sesión, en lugar de la imagen de cabecera de inicio de sesión predeterminada.
Cualquier personalización que se realice en la imagen de cabecera de la consola,
aparecerá también en la página de inicio de sesión cuando esta propiedad se
aplique.
yes
Muestra la imagen de cabecera de la consola en la página de inicio de
sesión.
no
Muestra la imagen de cabecera de inicio de sesión predeterminada. Un
valor vacío presupone un no.
Ejemplo (predeterminado):
ui.banner.showForLogin=no
ui.footer.URL
Especifica el URL para la consola administrativa de IBM Tivoli Identity Manager.
Especifica la dirección completa (http://su_host.com/footer.html) o una dirección
del servidor web de IBM Tivoli Identity Manager (/itim/console/custom/
footer.html). Un valor en blanco utiliza la dirección predeterminada del pie de
página de IBM Tivoli Identity Manager.
Ejemplo:
ui.footer.URL=http://itim99.mylab.raleigh.ibm.com:9080/itim/console/main
ui.footer.height
Especifica la altura en píxeles del pie de página en la consola administrativa de IBM
Tivoli Identity Manager.
Ejemplo (predeterminado):
ui.footer.height=50
ui.footer.isVisible
Muestra u oculta el pie de página de la consola administrativa de IBM Tivoli
Identity Manager.
Los valores válidos son:
v yes (o en blanco) - Muestra el pie de página.
v no - Oculta el pie de página.
Ejemplo (predeterminado):
ui.footer.isVisible=yes
ui.banner.URL
Especifica el URL para la imagen de cabecera en la consola administrativa de IBM
Tivoli Identity Manager.
Especifica la dirección completa (http://su_host.com/banner.html) o una vía de
acceso del servidor web de IBM Tivoli Identity Manager (/itim/console/custom/
banner.html). Un valor en blanco utiliza la dirección predeterminada de la imagen
de cabecera de IBM Tivoli Identity Manager.
Ejemplo:
ui.banner.URL=http://itim99.mylab.raleigh.ibm.com:9080/itim/console/main
Consulta
177
Tabla 31. Propiedades de ui.properties (continuación)
ui.banner.height
Especifica la altura en píxeles de la imagen de cabecera en la consola administrativa
de IBM Tivoli Identity Manager.
Ejemplo (predeterminado):
ui.banner.height=48
ui.homepage.path
Ubicación de la página de inicio de la consola administrativa de IBM Tivoli Identity
Manager. Especifica una vía de acceso relativa de la raíz de contexto de la consola
de IBM Tivoli Identity Manager (/itim/console).
Por ejemplo, si la vía de acceso completa a la página de inicio era
http://su_host:9080/itim/console/custom/home.html, el valor siguiente debe ser
ui.homepage.path=custom/home.html.
La página de inicio personalizada debe residir en la aplicación web de IBM Tivoli
Identity Manager. Por ejemplo: vía de acceso/ITIM.ear/itim_console.war/custom/
home.html). Un valor en blanco utiliza la dirección predeterminada de la página de
inicio de IBM Tivoli Identity Manager.
Ejemplo:
ui.homepage.path=custom/home.html
ui.titlebar.text
Especifica el texto que aparece en la barra de título del navegador para la consola
de IBM Tivoli Identity Manager. Un valor en blanco utiliza el nombre
predeterminado del producto IBM Tivoli Identity Manager.
Ejemplo:
ui.titlebar.text=Our Home Page
ui.userManagement.includeAccounts
Especifica el comportamiento predeterminado para incluir las cuentas al suspender,
restaurar o suprimir usuarios. Los valores válidos son:
v true – Las cuentas se incluyen al suspender, restaurar o suprimir usuarios.
v false – Las cuentas se excluyen al suspender, restaurar o suprimir usuarios.
Ejemplo (predeterminado):
ui.userManagement.includeAccounts=true
ui.challengeResponse.showAnswers
178
Consulta
Tabla 31. Propiedades de ui.properties (continuación)
Especifica si las respuestas a las preguntas de contraseña se tratarán como
contraseñas o como texto visible en la página Contraseña olvidada y en la página
de definición de respuestas a las preguntas de contraseña de la interfaz de usuario.
Los valores válidos son:
v true – Las respuestas a las preguntas de contraseña se mostrarán como texto
visible.
v false – Las respuestas a las preguntas de contraseña se mostrarán como
contraseñas.
Ejemplo (predeterminado):
ui.challengeResponse.showAnswers=true
Propiedades del applet de WfDesigner y FormDesigner
enrole.build.version
enrole.java.plugin
enrole.java.plugin.classid
enrole.java.pluginspage
enrole.java.plugin.jpi-version
enrole.java.plugin.version
enrole.java.entWflowHeightIE
enrole.java.entWflowWidthIE
enrole.java.entWflowHeightMZ
enrole.java.entWflowWidthMZ
enrole.java.opWflowHeightIE
enrole.java.opWflowWidthIE
enrole.java.opWflowHeightMZ
enrole.java.opWflowWidthMZ
enrole.java.joinDirHeightIE
enrole.java.joinDirWidthIE
enrole.java.joinDirHeightMZ
enrole.java.joinDirWidthMZ
enrole.java.formDesignHeightIE
enrole.java.formDesignWidthIE
enrole.java.formDesignHeightMZ
enrole.java.formDesignWidthMZ
express.java.formDesignHeightIE
express.java.formDesignWidthIE
express.java.formDesignHeightMZ
express.java.formDesignWidthMZ
#enrole.ui.logoffURL (de forma predeterminada está comentado)
#enrole.ui.timeoutURL (de forma predeterminada está comentado)
No debe modificar ni eliminar la información de esta sección.
Estos pares de clave y valor de propiedad proporcionan el soporte del applet de
Java necesario para el navegador web que ejecuta la interfaz gráfica de usuario de
IBM Tivoli Identity Manager.
Propiedades del menú de informes
enrole.ui.report.maxRecordsInReport
Consulta
179
Tabla 31. Propiedades de ui.properties (continuación)
Muestra el número de registros que se pueden visualizar en un informe PDF sin
obtener un error de falta de memoria. El número no garantiza que la generación del
informe en PDF sea correcta. Si el informe contiene más registros de los
especificados por esta propiedad, la generación del informe en PDF no se intentará.
Ejemplo:
enrole.ui.report.maxRecordsInReport=5000
Habilitar/inhabilitar el inicio de sesión único de WebSEAL (SSO)
enrole.ui.ssoEnabled
El par de clave y valor de propiedad de esta sección no pertenece a la GUI de IBM
Tivoli Identity Manager.
Habilita o inhabilita la funcionalidad de inicio de sesión único de WebSEAL.
Se requiere una configuración adicional para la funcionalidad de inicio de sesión
único de WebSEAL.
Los valores válidos son:
v true - El inicio de sesión único de WebSEAL está habilitado.
v false - El inicio de sesión único de WebSEAL está inhabilitado.
Ejemplo (predeterminado):
enrole.ui.ssoEnabled=false
enrole.ui.ssoEncoding
Especifica la codificación utilizada para descodificar las credenciales del usuario con
el inicio de sesión único de WebSEAL.
Ejemplo (predeterminado):
enrole.ui.ssoEncoding=UTF-8
Propiedades de renovación
enrole.ui.httpRefreshSecs
Define, en segundos, la tasa de renovación para las páginas de la interfaz gráfica de
usuario. Esta propiedad se utiliza durante las vistas previas de la política.
Ejemplo (predeterminado):
enrole.ui.httpRefreshSecs=10
Correlación de clase de búsqueda para ObjectProfileCategory
Los pares de clave y valor de propiedad de esta sección no pertenecen a la interfaz
gráfica de usuario de IBM Tivoli Identity Manager y no se deben modificar ni
eliminar.
180
Consulta
Configuración de propiedades del sistema en enRole.properties
En esta sección se proporciona información detallada sobre los valores y las claves
de propiedad contenidos en el archivo de configuración del sistema
ITIM_HOME\data\enRole.properties.
El archivo de configuración del sistema enRole.properties contiene muchas de las
propiedades utilizadas para configurar IBM Tivoli Identity Manager. Las
propiedades del archivo controlan la funcionalidad del programa y permiten la
personalización por parte del usuario de las funciones especiales.
Comprensión de los archivos de propiedades
Los archivos de propiedades Java definen los atributos que permiten personalizar y
controlar el software Java. Los archivos de propiedades del sistema estándar y los
archivos de propiedades personalizadas se utilizan para configurar las preferencias
de usuario y la personalización del usuario.
Un archivo de propiedades Java define los valores de los recursos con nombre que
pueden especificar opciones del programa, como la información de acceso a la base
de datos, los valores del entorno, y las funciones y funcionalidad especiales.
Un archivo de propiedades define los recursos con nombre por medio de un
formato de par de clave y valor de propiedad:
nombre-clave-propiedad=valor
nombre-clave-propiedad es un identificador para el recurso. El valor es normalmente
el nombre del objeto Java real que proporciona el recurso o una cadena que
representa el valor de la clave de propiedad, como por ejemplo,
database.name=itimdb. La sintaxis de la sentencia permite espacios antes y después
del signo igual (=) y puede distribuirse en varias líneas si coloca un carácter de
continuación de línea \ (una barra inclinada invertida) al final de la línea. Para
obtener más información acerca de la sintaxis de la sentencia, consulte las guías de
consulta del lenguaje Java.
Propiedades de WebSphere Application Server
Las propiedades de WebSphere Application Server definen valores específicos para
integrar IBM Tivoli Identity Manager con WebSphere Application Server.
La Tabla 32 define las propiedades específicas para integrar IBM Tivoli Identity
Manager con WebSphere Application Server.
Tabla 32. Propiedades de WebSphere Application Server
Nombre de la fábrica de contexto de la plataforma
enrole.platform.contextFactory
No modifique este valor ni esta clave de propiedad.
Especifica la clase Java para la fábrica del contexto de plataforma que define el
punto de integración para IBM Tivoli Identity Manager con WebSphere Application
Server.
Ejemplo (predeterminado, especificado como una línea):
enrole.platform.contextFactory=com.ibm.itim.apps.impl.websphere.
WebSpherePlatformContextFactory
Consulta
181
Tabla 32. Propiedades de WebSphere Application Server (continuación)
Servidor de aplicaciones
enrole.appServer.contextFactory
No modifique este valor ni esta clave de propiedad.
Especifica la clase Java que determina qué fábrica JNDI utilizar con WebSphere
Application Server.
Ejemplo (predeterminado):
enrole.appServer.contextFactory=com.ibm.websphere.naming.
WsnInitialContextFactory
enrole.appServer.url
Sólo un administrador cualificado debe cambiar este valor y esta clave de
propiedad.
Especifica la ubicación del servicio de denominación del servidor de aplicaciones.
Este valor se obtiene durante la instalación de IBM Tivoli Identity Manager.
Ejemplo:
enrole.appServer.url=iiop://localhost:2809
enrole.appServer.usertransaction.jndiname
No modifique este valor ni esta clave de propiedad.
Especifica el nombre JNDI del objeto de transacción del usuario de JTA (Java
Transaction API).
Ejemplo (predeterminado):
enrole.appServer.usertransaction.jndiname=jta/usertransaction
enrole.appServer.systemUser
Sólo un administrador cualificado debe cambiar este valor y esta clave de
propiedad. Modifíquelos únicamente por medio del programa de utilidad
runConfig.
Especifica el nombre del administrador para WebSphere Application Server cuando
la seguridad está habilitada. En un entorno de WebSphere Application Server, este
valor es obligatorio sólo cuando está habilitada la seguridad global. El valor no está
establecido si la seguridad no está habilitada.
El valor se utiliza para iniciar, detener y configurar el IBM Tivoli Identity Manager
Server. El valor también lo utilizan las rutinas de instalación y configuración de IBM
Tivoli Identity Manager para autenticar WebSphere Application Server.
Ejemplo:
enrole.appServer.systemUser=system
enrole.appServer.systemUser.credentials
182
Consulta
Tabla 32. Propiedades de WebSphere Application Server (continuación)
Sólo un administrador cualificado debe cambiar este valor y esta clave de
propiedad. Modifíquelos únicamente por medio del programa de utilidad
runConfig. Este valor se almacena en formato cifrado que depende de la opción
seleccionada con el programa de utilidad runConfig.
Especifica la contraseña del usuario del sistema.
Ejemplo:
enrole.appServer.systemUser.credentials=password
enrole.appServer.ejbuser.principal
Sólo un administrador cualificado debe cambiar este valor y esta clave de
propiedad. Modifíquelos únicamente por medio del programa de utilidad
runConfig.
Especifica el nombre utilizado por IBM Tivoli Identity Manager para la
autenticación cuando se realicen llamadas a beans de Java.
Ejemplo:
enrole.appServer.ejbuser.principal=rasweb
enrole.appServer.ejbuser.credentials
Sólo un administrador cualificado debe cambiar este valor y esta clave de
propiedad. Modifíquelos únicamente por medio del programa de utilidad
runConfig.
Especifica la contraseña para el principal especificado.
El cifrado de este valor está especificado en la propiedad
enrole.password.appServer.encrypted de enRole.properties.
Ejemplo:
enrole.appServer.ejbuser.credentials=password
enrole.appServer.ejbuser.realm
Sólo un administrador cualificado debe cambiar este valor y esta clave de
propiedad.
Especifica el nombre de dominio de seguridad del servidor de destino si IBM Tivoli
Identity Manager se está ejecutando en una instancia de WebSphere Application
Server diferente a la configurada para ejecutarse con un dominio de seguridad
distinto.
Ejemplo (en una línea):
enrole.appServer.ejbuser.realm=
enrole.appServer.ejbuser.realm=ldap.ibm.com:389
El valor predeterminado es vacío (ningún valor).
enrole.appServer.alwayssetisolevelrc
Consulta
183
Tabla 32. Propiedades de WebSphere Application Server (continuación)
No modifique este valor ni esta clave de propiedad.
Esta propiedad especifica que IBM Tivoli Identity Manager debe establecer siempre
el nivel de aislamiento de la transacción de lectura comprometida cuando adquiere
las conexiones de la base de datos.
Debido a que WebSphere Application Server tiene soporte interno para establecer el
nivel de aislamiento, esta propiedad se debe establecer en false.
Ejemplo (predeterminado):
enrole.appServer.alwayssetisolevelrc=false
Asistente del inicio de sesión
enrole.appServer.loginHelper.class
No modifique este valor ni esta clave de propiedad.
Especifica la clase Java que se utiliza para registrar cada hebra en la seguridad de
J2EE.
Ejemplo (predeterminado):
enrole.appServer.loginHelper.class=com.ibm.itim.util.was.WAS40LoginHelper
Separador de la vía de acceso del servlet del servidor de aplicaciones
enrole.servlet.path.separator
No modifique este valor ni esta clave de propiedad.
Especifica el carácter de separación que se utiliza para especificar los nombres de
vía de acceso de los recursos obligatorios.
Ejemplo (predeterminado):
enrole.servlet.path.separator=.
Inicio de sesión del sistema de notificación de suceso
SystemLoginContextFactory
No modifique este valor ni esta clave de propiedad.
Especifica la clase de fábrica Java para el inicio de sesión del sistema de notificación
de sucesos adecuado para WebSphere Application Server.
Ejemplo (predeterminado, especificado como una línea):
SystemLoginContextFactory=com.ibm.itim.remoteservices.provider.itim.
websphere.WSSystemLogonContextFactory
Propiedades del servidor de aplicaciones
Las propiedades del servidor de aplicaciones definen las propiedades específicas
para el servidor de aplicaciones, como por ejemplo, un entorno local seleccionado
por el usuario.
184
Consulta
La Tabla 33 define las propiedades específicas para el servidor de aplicaciones.
Tabla 33. Propiedades del servidor de aplicaciones
Entorno local seleccionado por el usuario
entorno local
Especifica la configuración del entorno local para el entorno de IBM Tivoli Identity
Manager.
Ejemplo (predeterminado):
locale=en
Nombre de la fábrica de contextos
enrole.appServer.name
Especifica el nombre exclusivo del servidor de aplicaciones.
En un entorno de clúster, es importante que este nombre sea exclusivo para cada
miembro del clúster.
Ejemplo (predeterminado):
enrole.appServer.name=myserver
enrole.password.database.encrypted
Use el programa de utilidad runConfig para modificar esta propiedad.
Especifica si la contraseña para la conexión de la base de datos (especificada por la
propiedad database.db.password del archivo enroleDatabase.properties) está cifrada
o no. Los valores válidos son:
v true – La contraseña está cifrada.
v false – La contraseña no está cifrada.
Ejemplo (predeterminado):
enrole.password.database.encrypted=true
enrole.password.ldap.encrypted
Use el programa de utilidad runConfig para modificar esta propiedad.
Especifica si la contraseña LDAP (especificada por la propiedad
java.naming.security.credentials del archivo enRoleLDAPConnection.properties) está
cifrada o no. Los valores válidos son:
v true – La contraseña está cifrada.
v false – La contraseña no está cifrada.
Ejemplo (predeterminado):
enrole.password.ldap.encrypted=true
enrole.password.appServer.encrypted
Consulta
185
Tabla 33. Propiedades del servidor de aplicaciones (continuación)
Use el programa de utilidad runConfig para modificar esta propiedad.
Especifica si la contraseña del servidor de aplicaciones (especificada por la
propiedad enrole.appServer.ejbuser.credentials en el archivo enRole.properties) está
cifrada o no. Los valores válidos son:
v true – La contraseña está cifrada.
v false – La contraseña no está cifrada.
Ejemplo (predeterminado):
enrole.password.appServer.encrypted=true
Propiedades de la organización
Las propiedades de la organización definen el nombre de la organización que el
servidor de directorios utiliza.
La Tabla 34 define las propiedades del nombre de la organización que utiliza el
servidor de directorios.
Tabla 34. Propiedades de la organización
enrole.defaulttenant.id
Use el programa de utilidad ldapConfig para modificar esta propiedad.
Especifica el formato corto del nombre de la organización que utiliza el servidor de
directorios.
Este valor se especifica durante la instalación de IBM Tivoli Identity Manager o
ejecutando el programa de utilidad ldapConfig.
Ejemplo (predeterminado):
enrole.defaulttenant.id=org
En LDAP, este valor se expresa como:
ou=org
enrole.organization.name
Use el programa de utilidad ldapConfig para modificar esta propiedad.
Especifica el formato largo del nombre de la organización que utiliza el servidor de
directorios.
Este valor se especifica durante la instalación de IBM Tivoli Identity Manager o
ejecutando el programa de utilidad ldapConfig.
Ejemplo (predeterminado):
enrole.organization.name=Organization
Propiedades del servidor LDAP
Las propiedades de servidor LDAP que el servidor de directorios utiliza en el que
IBM Tivoli Identity Manager almacena los datos.
La Tabla 35 en la página 187 define las propiedades que el servidor de directorios
utiliza.
186
Consulta
Tabla 35. Propiedades del servidor LDAP
enrole.ldapserver.root
Especifica el nodo de entrada de nivel superior de la estructura de datos del
servidor de directorios (dc= control de dominio). Use el programa de utilidad
ldapConfig para modificar este valor.
Este valor se especifica durante la instalación de IBM Tivoli Identity Manager.
Ejemplo (predeterminado):
enrole.ldapserver.root=dc=com
enrole.ldapserver.home
No modifique este valor ni esta clave de propiedad.
Especifica la ubicación de la información de configuración del sistema en el servidor
de directorios.
Ejemplo (predeterminado):
enrole.ldapserver.home=ou=itim
enrole.ldapserver.agelimit
Sólo un administrador cualificado debe cambiar este valor y esta clave de
propiedad. Use el programa de utilidad runConfig para modificar este valor.
Especifica el número de días que permanece un objeto en la papelera de reciclaje del
sistema antes de que lo puedan suprimir cuando se invoque el script de limpieza. El
límite de duración de la papelera de reciclaje del sistema protege los objetos de la
papelera de reciclaje de los scripts de limpieza durante el período de tiempo
especificado.
Los scripts de limpieza sólo pueden eliminar los objetos que son más antiguos que
el valor de límite de duración. Por ejemplo, si el parámetro del límite de duración es
de 62 días (valor predeterminado), sólo se pueden suprimir los objetos que han
estado en la papelera de reciclaje durante más de 62 días invocando el script de
limpieza.
Ejemplo (predeterminado):
enrole.ldapserver.agelimit=62
enrole.ldapserver.ditlayout
No modifique este valor ni esta clave de propiedad.
Especifica la clase Java que define la estructura de los datos almacenados en el
servidor de directorios.
Ejemplo (predeterminado, estructura plana):
enrole.ldapserver.ditlayout=com.ibm.itim.dataservices.dit.itim.
FlatHashedLayout
enrole.ldap.provider
Ejemplo (predeterminado):
enrole.ldap.provider=IBM
Consulta
187
Propiedades del control LDAP y de la búsqueda
Las propiedades del control LDAP y de la búsqueda se utilizan para configurar la
estrategia de búsqueda y el control LDAP.
Para obtener más información acerca de la configuración de estos parámetros para
su entorno, consulte la guía de ajuste que se proporciona para IBM Tivoli Identity
Manager.
La Tabla 36 define las propiedades utilizadas para configurar la estrategia de
búsqueda y el control LDAP.
Tabla 36. Propiedades del control LDAP y de la búsqueda
enrole.search.sss.enable
No modifique este valor ni esta clave de propiedad.
Especifica si se debe utilizar la ordenación del servidor para las búsquedas del
servidor de directorios. La habilitación de la ordenación del servidor con esta
propiedad puede causar un importante impacto negativo al visualizar grandes
unidades organizativas. Se recomienda mantener esta opción inhabilitada en la
mayoría de los entornos.
Ejemplo (predeterminado):
enrole.search.sss.enable=false
enrole.search.vlv.enable
No modifique este valor ni esta clave de propiedad.
Especifica si se debe utilizar la vista de lista virtual (VLV) para todos los datos de
retorno del servidor de directorios. Esta propiedad sólo se puede habilitar cuando es
soportada por el servidor de directorios. Esta opción reduce la carga de memoria en
el servidor de aplicaciones pero coloca una significativa carga en el servidor LDAP.
Ejemplo (predeterminado):
enrole.search.vlv.enable=false
enrole.search.paging.enable
No modifique este valor ni esta clave de propiedad.
Especifica si se debe utilizar la ordenación de páginas para las búsquedas del
servidor de directorios. Esta opción reduce la carga de memoria del servidor de
aplicaciones, pero no se recomienda habilitarla porque el servidor de directorios
podría establecer un límite en la cantidad de búsquedas compaginadas destacadas.
Ejemplo (predeterminado):
enrole.search.paging.enable=false
enrole.search.paging.pagesize
No modifique este valor ni esta clave de propiedad.
Especifica el tamaño de página que se utiliza para las búsquedas LDAP de páginas
cuando enrole.search.paging.enable=true.
Ejemplo (predeterminado):
enrole.search.paging.pagesize=128
188
Consulta
Tabla 36. Propiedades del control LDAP y de la búsqueda (continuación)
enrole.search.cache.enable
No modifique este valor ni esta clave de propiedad.
Especifica el uso de la caché al buscar, para aumentar la velocidad de las búsquedas
LDAP.
Ejemplo (predeterminado):
enrole.search.cache.enable=true
enrole.search.cache.secondary.enable
No modifique este valor ni esta clave de propiedad.
Especifica el uso de la caché secundaria al buscar, para aumentar la velocidad de las
búsquedas LDAP.
Ejemplo (predeterminado):
enrole.search.cache.secondary.enable=true
enrole.search.cache.secondary.filter.1
No modifique este valor ni esta clave de propiedad.
Utiliza un fragmento de filtro para personas, para evitar que se utilice la caché en
los filtros de búsqueda LDAP. Para los filtros de búsqueda LDAP filtrados se utiliza
la caché secundaria, si está habilitada.
Ejemplo (predeterminado):
enrole.search.cache.secondary.filter.1=ou=people
enrole.search.cache.secondary.filter.2
No modifique este valor ni esta clave de propiedad.
Utiliza un fragmento de filtro para cuentas, para evitar que se utilice la caché en los
filtros de búsqueda LDAP. Para los filtros de búsqueda LDAP filtrados se utiliza la
caché secundaria, si está habilitada.
Ejemplo (predeterminado):
enrole.search.cache.secondary.filter.2=ou=accounts
enrole.search.cache.secondary.filter.3
No modifique este valor ni esta clave de propiedad.
Utiliza un fragmento de filtro para el usuario del sistema, para evitar que se utilice
la caché en los filtros de búsqueda LDAP. Para los filtros de búsqueda LDAP
filtrados se utiliza la caché secundaria, si está habilitada.
Ejemplo (predeterminado):
enrole.search.cache.secondary.filter.3=ou=systemuser
enrole.search.cache.secondary.filter.4
Consulta
189
Tabla 36. Propiedades del control LDAP y de la búsqueda (continuación)
No modifique este valor ni esta clave de propiedad.
Utiliza un fragmento de filtro para cuentas huérfanas, para evitar que se utilice la
caché en los filtros de búsqueda LDAP. Para los filtros de búsqueda LDAP filtrados
se utiliza la caché secundaria, si está habilitada.
Ejemplo (predeterminado):
enrole.search.cache.secondary.filter.4=ou=orphans
enrole.search.clientside.filtering.enable
No modifique este valor ni esta clave de propiedad.
Especifica el uso del filtro de la parte del cliente como una alternativa de
rendimiento en búsquedas LDAP complejas.
Ejemplo (predeterminado):
enrole.search.clientside.filtering.enable=true
enrole.search.strategy
No modifique este valor ni esta clave de propiedad.
Especifica la clase Java que define la estrategia de búsqueda para procesar los datos
de retorno del servidor de directorios.
Los valores de la estrategia son:
v com.ibm.itim.apps.ejb.search.EnumeratedSearch (procesar datos a petición)
Evita el uso de conjuntos, si es posible. Mantiene una caché del número de
enlaces de búsqueda multiplicado por el tamaño de página. La conexión
subyacente se cierra cuando la caché de la página está llena. Los elementos de
control de accesos se aplican como resultados recuperados.
v com.ibm.itim.apps.ejb.search.CollectedSearch (procesar todos los datos)
Este es el mecanismo de búsqueda heredado, que convertirá los resultados de
búsqueda en un conjunto y lo ordenará, aplicando elementos de control de
accesos en el conjunto a medida que se recuperan páginas. La conexión LDAP
subyacente se libera en cuanto los resultados se transforman en un conjunto.
Ejemplo (predeterminado):
enrole.search.strategy=com.ibm.itim.apps.ejb.search.EnumeratedSearch
enrole.recyclebin.enable
Inhabilite el uso de la papelera de reciclaje para la mayoría de los objetos para
mejorar así el tiempo de búsqueda.
Ejemplo (predeterminado para instalaciones nuevas):
enrole.recyclebin.enable=false
Propiedades de perfil de persona
Las propiedades de perfil de persona identifican un perfil de persona.
La Tabla 37 en la página 191 define la propiedad que se utiliza para identificar un
perfil de persona. De forma predeterminada, esta propiedad selecciona el perfil
dado cuando crea una persona o realiza búsquedas de personas avanzadas en la
consola administrativa.
190
Consulta
Tabla 37. Propiedad de perfil de persona
enrole.personProfile
Busca en IBM Tivoli Identity Manager el uso el perfil de persona Person. Si desea
utilizar los esquemas de persona personalizados, establezca esta propiedad en su
perfil.
Ejemplo (predeterminado):
enrole.personProfile=Person
Ejemplo:
enrole.personProfile=su_perfil
Propiedades de la caché y del esquema y del perfil
Las propiedades de la caché del esquema y del perfil definen el rendimiento de la
caché del sistema.
La Tabla 38 define las propiedades que se utilizan para configurar el rendimiento
de la caché del sistema.
Tabla 38. Propiedades de la caché y del esquema y del perfil
enrole.profile.timeout
El valor y la clave de propiedad afectan al ajuste de rendimiento para IBM Tivoli
Identity Manager y sólo lo debe cambiar un administrador cualificado.
Especifica el valor de tiempo de espera [en minutos] para obtener la información
que se encuentra en la sección de perfil de la caché. La información que excede este
valor de tiempo de espera se elimina de la caché.
Ejemplo (predeterminado):
enrole.profile.timeout=10
enrole.schema.timeout
El valor y la clave de propiedad afectan al ajuste de rendimiento para IBM Tivoli
Identity Manager y sólo lo debe cambiar un administrador cualificado.
Especifica el valor de tiempo de espera [en minutos] para obtener la información
que se encuentra en la sección de esquema de la caché. La información que excede
este valor de tiempo de espera se elimina de la caché.
Ejemplo (predeterminado):
enrole.schema.timeout=10
password.attributes
Especifica el atributo que el componente dataservices cifrará.
Ejemplo (predeterminado, en una línea):
password.attributes=ersynchpassword erServicePassword erServicePwd1
erServicePwd2 erServicePwd3 erServicePwd4 erADDomainPassword
erPersonPassword erNotesPasswdAddCert eritamcred erep6umds
enrole.reminder.timeout
Consulta
191
Tabla 38. Propiedades de la caché y del esquema y del perfil (continuación)
Sólo un administrador cualificado debe cambiar este valor y esta clave de
propiedad.
Especifica el intervalo de la caché (en minutos) para un recordatorio del flujo de
trabajo.
Ejemplo:
enrole.reminder.timeout=10
signedObjectsCacheTimeout
Sólo un administrador cualificado debe cambiar este valor y esta clave de
propiedad.
Especifica el intervalo de la caché (en horas) para objetos firmados.
Ejemplo:
signedObjectsCacheTimeout=8
Propiedades de mensajería
Las propiedades de mensajería configuran la comunicación interna entre los
componentes de Java Message Service (JMS) utilizados por IBM Tivoli Identity
Manager.
La Tabla 39 define las propiedades que se utilizan para configurar la comunicación
interna entre los componentes de Java Message Service (JMS) utilizados por IBM
Tivoli Identity Manager.
El ajuste de estos valores de propiedades es importante para el ajuste de
rendimiento y la escalabilidad adecuados del producto IBM Tivoli Identity
Manager. Los valores de propiedades de esta sección sólo deben ser modificados
por administradores cualificados.
Tabla 39. Propiedades de mensajería
Configuración del tiempo de espera del mensaje
enrole.messaging.ttl
Este valor y clave de propiedad afecta al ajuste de rendimiento de JMS y sólo la
debe cambiar un administrador cualificado.
Especifica la duración [en minutos] de un mensaje en la cola. Un valor de cero
especifica una duración sin límite.
Ejemplo (predeterminado):
enrole.messaging.ttl=0
Configuración de la cola de mensajería
192
Consulta
Tabla 39. Propiedades de mensajería (continuación)
enrole.messaging.managers= \
enrole.messaging.adhocSyncQueue \
enrole.messaging.workflowQueue \
enrole.messaging.sharedWorkflowQueue \
enrole.messaging.partitioningServiceQueue \
enrole.messaging.remoteServicesQueue \
enrole.messaging.remotePendingQueue \
enrole.messaging.mailServicesQueue \
enrole.messaging.policyAnalysisQueue \
enrole.messaging.policySimulationQueue \
enrole.messaging.importExportQueue
No modifique estos valores y claves de propiedad.
Especifica los nombres de clave de las colas de IBM Tivoli Identity Manager con
soporte.
enrole.messaging.adhocSyncQueue=adhocSyncQueue
enrole.messaging.workflowQueue=workflowQueue
enrole.messaging.sharedWorkflowQueue=sharedWorkflowQueue
enrole.messaging.partioningServiceQueue=partitioningServiceQueue
enrole.messaging.remoteServicesQueue=remoteServicesQueue
enrole.messaging.remotePendingQueue=remotePendingQueue
enrole.messaging.mailServicesQueue=mailServicesQueue
enrole.messaging.policyAnalysisQueue=policyAnalysisQueue
enrole.messaging.policySimulationQueue=policySimulationQueue
enrole.messaging.importExportQueue=importExportQueue
No modifique estos valores y claves de propiedad.
Especifica el nombre de cola real, tal como lo denomina el servidor de aplicaciones.
Configuración del atributo de cola
Consulta
193
Tabla 39. Propiedades de mensajería (continuación)
v SHARED
Un valor booleano que indica si la cola se comparte o no en un despliegue de
clúster. En un clúster, todos los miembros de este pueden escribir y leer una cola
compartida.
No modifique esta propiedad.
Ejemplo (en una línea):
enrole.messaging.sharedWorkflowQueue.attributes=SHARED=true
enrole.messaging.policyAnalysisQueue.attributes=SHARED=true
enrole.messaging.policySimulationQueue.attributes=SHARED=true
Los errores de procesamiento de mensajes detectados por el sistema de mensajería
provocarán que mensajes individuales se vuelvan a enviar e intentos adicionales
para manejar el mensaje. Siguiendo la primera indicación del error de proceso, se
planificará inmediatamente un nuevo intento. Si el primer intento de reintento falla,
se planifica otro con un retraso que coincida con el valor de la propiedad
FIRST_RETRY_DELAY. Si el segundo intento de reintento falla, se planifica otro con
un retraso que coincida con el valor de la propiedad RETRY_DELAY. Los reintentos
siguientes se efectúan por medio del valor de la propiedad RETRY_DELAY hasta
que se alcanza el umbral de MAX_RETRY_TIME.
Establezca las propiedades siguientes para gestionar cómo maneja el sistema los
reintentos.
v FIRST_RETRY_DELAY
El tiempo [en milisegundos] que retrasar tras el reintento inmediato inicial. El
valor predeterminado es 900000 (15 minutos).
v RETRY_DELAY
El tiempo [en milisegundos] que retrasar antes de realizar el reintento después de
que haya fallado el primer reintento inmediato. El valor predeterminado es
3600000 (60 minutos).
v MAX_RETRY_TIME
Tiempo máximo permitido para los reintentos que empiezan con el primer error.
El valor predeterminado es 86400000 (24 horas)
Ejemplo (en una línea):
enrole.messaging.workflowQueue.attributes=SHARED=false
FIRST_RETRY_DELAY=300000 RETRY_DELAY=900000 MAX_RETRY_TIME=3600000
Propiedades de planificación
Las propiedades de planificación se utilizan para configurar el planificador interno
que ejecuta sucesos basados en calendario y planificados.
La Tabla 40 define las propiedades utilizadas para configurar el planificador
interno responsable de ejecutar los sucesos planificados basados en el calendario.
Los sucesos y sus planificaciones se almacenan en una tabla de la base de datos.
Tabla 40. Propiedades de planificación
enrole.scheduling.heartbeat
194
Consulta
Tabla 40. Propiedades de planificación (continuación)
El valor y la clave de propiedad afectan al ajuste de rendimiento para IBM Tivoli
Identity Manager y sólo lo debe cambiar un administrador cualificado.
Especifica el intervalo [en segundos] durante el cual el supervisor de sucesos
comprueba la tabla de la base de datos para los sucesos planificados.
Ejemplo (predeterminado):
enrole.scheduling.heartbeat=30
enrole.scheduling.timeout
El valor y la clave de propiedad afectan al ajuste de rendimiento para IBM Tivoli
Identity Manager y sólo lo debe cambiar un administrador cualificado.
Especifica el valor de tiempo de espera [en minutos] para el procesador de sucesos.
Ejemplo (predeterminado):
enrole.scheduling.timeout=10
enrole.scheduling.fetchsize
El valor y la clave de propiedad afectan al ajuste de rendimiento para IBM Tivoli
Identity Manager y sólo lo debe cambiar un administrador cualificado.
Especifica el número de mensajes que recuperar a la vez cuando se está en
modalidad de proceso por lotes.
Ejemplo (predeterminado):
enrole.scheduling.fetchsize=50
Propiedades de supervisión de la transacción de contraseñas
Las propiedades de supervisión de la transacción de contraseñas se utilizan para
comprobar las respuestas a las transacciones de contraseña y hacer caducar las
transacciones donde el usuario no ha podido responder en el intervalo permitido.
Cuando se cambia la contraseña de un usuario, o se genera automáticamente, se
envía una notificación de correo electrónico al usuario. El correo electrónico
contiene la contraseña real o un enlace que el usuario puede utilizar para obtener
la contraseña nueva. Esta actividad se denomina transacción de contraseñas. El
usuario debe responder al correo electrónico e incorporar la contraseña nueva en
un período de tiempo especificado. Si el usuario no responde en el período de
tiempo permitido, la transacción de contraseñas caduca.
El supervisor de la transacción de contraseñas es responsable de comprobar las
respuestas a las transacciones de contraseña y hacer caducar las transacciones en
las que el usuario no ha podido responder a la notificación de correo electrónico.
Tabla 41. Propiedades de supervisión de la transacción de contraseñas
enrole.passwordtransactionmonitor.heartbeat
Especifica la frecuencia [en horas] con la que el supervisor de la transacción de
contraseñas comprueba las transacciones de contraseña caducadas.
Ejemplo (predeterminado):
enrole.passwordtransactionmonitor.heartbeat=1
Consulta
195
Propiedades XML y DTD
Las propiedades XML y DTD ya no se utilizan.
Estas propiedades ya no se utilizan.
Tabla 42. Propiedades XML y DTD
enrole.dtd.uri
No se utiliza.
Propiedades de la agrupación de conexiones LDAP
Las propiedades de la agrupación de conexiones LDAP se utilizan para configurar
las solicitudes de conexión de la caché al servidor de directorios.
La Tabla 43 define las propiedades que se utilizan para configurar los valores que
afectan a las solicitudes de conexión de la caché al servidor de directorios de IBM
Tivoli Identity Manager.
Tabla 43. Propiedades de la agrupación de conexiones LDAP
enrole.connectionpool.incrementcount
El valor y la clave de propiedad afectan al ajuste de rendimiento para IBM Tivoli
Identity Manager y sólo lo debe cambiar un administrador cualificado.
Especifica el número de conexiones creadas cada vez que se incrementa la
agrupación de conexiones LDAP para adecuarse a una demanda creciente.
Ejemplo (predeterminado):
enrole.connectionpool.incrementcount=3
enrole.connectionpool.authentication
El valor y la clave de propiedad afectan al ajuste de rendimiento para IBM Tivoli
Identity Manager y sólo lo debe cambiar un administrador cualificado.
Especifica una lista de tipo de conexiones de autenticación separadas por espacios
que pueden ser agrupadas.
Los tipos válidos son:
v none - No se necesita autenticación.
v simple
v DIGEST-MD5
Ejemplo (predeterminado):
enrole.connectionpool.authentication=none simple
enrole.connectionpool.debug
196
Consulta
Tabla 43. Propiedades de la agrupación de conexiones LDAP (continuación)
Este valor y clave de propiedad especifica el nivel de salida de la depuración. Los
valores válidos son ″fine″ (rastrea la creación y eliminación de la conexión) y ″all″
(toda la información de depuración).
Los valores válidos son:
v fine - Rastrea la creación y eliminación de la conexión.
v all - Toda la información de depuración.
Ejemplo (predeterminado, comentado):
#enrole.connectionpool.debug=fine
enrole.connectionpool.initialpoolsize
El valor y la clave de propiedad afectan al ajuste de rendimiento para IBM Tivoli
Identity Manager y sólo lo debe cambiar un administrador cualificado.
Especifica el número inicial de conexiones físicas LDAP que crear para la
agrupación de conexiones LDAP. Este valor debe ser inferior o igual al valor de la
propiedad maxpoolsize.
Ejemplo (predeterminado):
enrole.connectionpool.initialpoolsize=50
enrole.connectionpool.maxpoolsize
El valor y la clave de propiedad afectan al ajuste de rendimiento para IBM Tivoli
Identity Manager y sólo lo debe cambiar un administrador cualificado.
Especifica la cantidad máxima de conexiones físicas LDAP que se pueden crear.
Ejemplo (predeterminado):
enrole.connectionpool.maxpoolsize=100
enrole.connectionpool.prefsize
El valor y la clave de propiedad afectan al ajuste de rendimiento para IBM Tivoli
Identity Manager y sólo lo debe cambiar un administrador cualificado.
Especifica el número preferido de conexiones LDAP físicas que se deben mantener
actualmente e incluye conexiones en uso y desocupadas. Un tamaño cero o sin valor
significa que no hay tamaño preferido; en tal caso, una solicitud para una conexión
de agrupación tendrá como resultado la creación de una conexión nueva, sólo si no
hay disponibles conexiones desocupadas.
Ejemplo (sin valor):
enrole.connectionpool.prefsize=
enrole.connectionpool.protocol
Consulta
197
Tabla 43. Propiedades de la agrupación de conexiones LDAP (continuación)
El valor y la clave de propiedad afectan al ajuste de rendimiento para IBM Tivoli
Identity Manager y sólo lo debe cambiar un administrador cualificado.
Especifica una lista de tipos de conexiones de protocolos separados por espacios que
pueden ser agrupadas.
Los valores válidos son:
v plain
v ssl
Ejemplo (predeterminado):
enrole.connectionpool.protocol=plain
enrole.connectionpool.timeout
El valor y la clave de propiedad afectan al ajuste de rendimiento para IBM Tivoli
Identity Manager y sólo lo debe cambiar un administrador cualificado.
Especifica los milisegundos que una conexión desocupada puede mantenerse en la
agrupación sin cerrarse o eliminarse de ésta.
Ejemplo (predeterminado, comentado):
#enrole.connectionpool.timeout=10000
Propiedades de cifrado de contraseñas
Las propiedades de cifrado de contraseñas se utilizan para configurar el cifrado de
contraseña.
La Tabla 44 define las propiedades utilizadas para configurar el cifrado de
contraseñas.
Tabla 44. Propiedades de cifrado
enrole.encryption.algorithm
No modifique este valor ni esta clave de propiedad.
Especifica el conjunto de cifrado que utilizar con el cifrado. Por ejemplo, AES o
PBEWithMD5AndDES.
Ejemplo (predeterminado):
enrole.encryption.algorithm=AES
enrole.encryption.password
198
Consulta
Tabla 44. Propiedades de cifrado (continuación)
No modifique este valor ni esta clave de propiedad. Este valor se especifica durante
la instalación de IBM Tivoli Identity Manager.
Para los algoritmos de cifrado basados en contraseña (PBE) (utilizados para
actualizar las instalaciones de IBM Tivoli Identity Manager Versión 4.6), especifica la
contraseña utilizada como parámetro de entrada en el cifrado basado en contraseña
(PBE), que es un método de cifrado y descifrado de datos mediante una clave
secreta basada en una contraseña proporcionada por el usuario. Por ejemplo, los
datos cifrados incluyen secretos compartidos, contraseñas de servicio y algunos
atributos de cuenta protegidos.
Especifica la contraseña del almacén de claves cuando AES es el algoritmo de
cifrado. Para algoritmos de cifrado que no están basados en PBE (utilizados para
instalaciones nuevas de IBM Tivoli Identity Manager Versión 5.0), la contraseña se
utiliza para cifrar el almacén de claves que almacena la clave privada. Para obtener
más información, consulte la propiedad enrole.encryption.keystore.
Este valor se especifica durante la instalación de IBM Tivoli Identity Manager.
Ejemplo (predeterminado):
enrole.encryption.password=sunshine
enrole.encryption.passwordDigest
No modifique este valor ni esta clave de propiedad.
Especifica el tipo de resumen de contraseña utilizado para una contraseña de IBM
Tivoli Identity Manager. La actualización de Tivoli Identity Manager de la versión
4.6 continuará utilizando el algoritmo hash original hasta que los usuarios cambien
sus contraseñas. Este algoritmo original está definido por la propiedad
enrole.pre50.encryption.passwordDigest. Los valores válidos son:
v SHA-256 – algoritmo de hash aprobado por FIPS (Federal Information Processing
Standards) utilizado por la versión 5.0 de IBM Tivoli Identity Manager para las
contraseñas. Se añade un valor aleatorio ″salt″ a los datos antes de utilizar el
algoritmo de hash.
v SHA-384 – algoritmo de hash aprobado por FIPS (Federal Information Processing
Standards) que proporciona 384 bits de seguridad (truncando la salida del
algoritmo SHA-512). Se añade un valor aleatorio ″salt″ a los datos antes de
utilizar el algoritmo de hash.
v SHA-512 – algoritmo de hash aprobado por FIPS (Federal Information Processing
Standards) que proporciona 512 bits de seguridad. Se añade un valor aleatorio
″salt″ a los datos antes de utilizar el algoritmo de hash.
Ejemplo (predeterminado):
enrole.encryption.passwordDigest=SHA-256
enrole.pre50.encryption.passwordDigest
Consulta
199
Tabla 44. Propiedades de cifrado (continuación)
No modifique este valor ni esta clave de propiedad. La actualización de Tivoli
Identity Manager de la versión 4.6 añade esta propiedad de forma dinámica a este
archivo de propiedades.
Especifica el tipo de resumen de contraseña utilizado para datos de contraseña
migrados de IBM Tivoli Identity Manager de las versiones anteriores a la 5.0 de IBM
Tivoli Identity Manager. La falta de ″:″ en un valor de contraseña de IBM Tivoli
Identity Manager cifrado se utiliza para identificar estos datos migrados. Tenga en
cuenta que todas la contraseñas nuevas de IBM Tivoli Identity Manager, incluidas
las contraseñas migradas cambiadas, se almacenarán mediante el algoritmo de
enrole.encryption.passwordDigest.
Ejemplo (predeterminado para instalaciones migradas, no presente para
instalaciones nuevas):
enrole.pre50.encryption.passwordDigest=MD5
enrole.encryption.keystore
No modifique este valor ni esta clave de propiedad.
Especifica el nombre del archivo de almacén de claves utilizado para contener la
clave secreta generada de forma aleatoria para algoritmos de cifrado que no están
basados en PBE, como AES. Este archivo de almacén de claves se protege mediante
el valor enrole.encryption.password. Este archivo se encuentra en el directorio
ITIM_HOME\data\keystore.
Ejemplo (predeterminado):
enrole.encryption.keystore=itimKeystore.jceks
Propiedades de codificación de preguntas y respuestas de
contraseña
Las propiedades de codificación de preguntas y respuestas de contraseña
determinan si una respuesta se codifica para que distinga o no entre mayúsculas y
minúsculas.
La Tabla 45 define las propiedades utilizadas para codificar una respuesta para que
distinga o no entre mayúsculas y minúsculas.
Tabla 45. Propiedades de codificación de preguntas y respuestas de contraseña
enrole.challengeresponse.responseConvertCase
Sólo un administrador cualificado debe cambiar este valor y esta clave de
propiedad.
Especifica cómo se codifican las preguntas y respuestas de contraseña antes de
almacenarse en el directorio. Los valores válidos son:
v lower – Codifica las preguntas y respuestas de contraseña como minúsculas.
v upper – Codifica las preguntas y respuestas de contraseña como mayúsculas.
v none – No codifica las preguntas y respuestas de contraseña. Mantiene las
mayúsculas y minúsculas de la respuesta.
Ejemplo (predeterminado):
enrole.challengeresponse.responseConvertCase=lower
200
Consulta
Propiedades del puerto de escucha del sistema
Las propiedades del puerto de escucha del sistema se utilizan para configurar los
valores del puerto de escucha del IBM Tivoli Identity Manager Server.
La Tabla 46 define las propiedades que se utilizan para configurar los valores del
puerto de escucha del IBM Tivoli Identity Manager Server.
Tabla 46. Propiedades de la configuración del sistema
enrole.system.listenPort
No modifique este valor ni esta clave de propiedad.
Especifica el valor del puerto de escucha TCP (comunicación no segura).
Este valor se establece durante la instalación de IBM Tivoli Identity Manager.
Ejemplo (predeterminado):
enrole.system.listenPort=80
enrole.system.SSLlistenPort
No modifique este valor ni esta clave de propiedad.
Especifica el valor del puerto de escucha de Capa de sockets seguros (SSL).
Este valor se establece durante la instalación de IBM Tivoli Identity Manager.
Ejemplo (predeterminado):
enrole.system.SSLlistenPort=443
Propiedades de correo
Las propiedades se utilizan para configurar la notificación interna de correo.
La Tabla 47 define las propiedades que se utilizan para configurar la notificación
interna de correo.
Tabla 47. Propiedades de los servicios de correo
enrole.mail.notify
Especifica si el envío de correo electrónico interno del flujo de trabajo está
sincronizado o no.
Los valores son:
v SYNC - Sincronizado.
v ASYNC - No sincronizado.
Ejemplo (predeterminado):
enrole.mail.notify=ASYNC
Propiedades de flujo de trabajo
Propiedades de flujo de trabajo que se utilizan para configurar el motor principal
del flujo de trabajo de IBM Tivoli Identity Manager.
Consulta
201
La Tabla 48 define las propiedades que se utilizan para configurar el núcleo del
motor de flujo de trabajo de IBM Tivoli Identity Manager.
Nota: Si ha comenzado a actualizar a la versión 5.0 de Tivoli Identity Manager
4.5.x y, a continuación, a la 4.6, las propiedades de notificación del flujo de trabajo
no se modificarán durante la actualización. Para tener la personalización de la
plantilla de notificación disponible en IBM Tivoli Identity Manager 4.6 después de
una actualización, debe modificar los valores de estas propiedades con las fábricas
de notificaciones de plantilla (con el prefijo Plantilla).
Por ejemplo, la propiedad enrole.workflow.notification.activitytimeout para Tivoli
Identity Manager 4.5.x se muestra a continuación (en una línea).
enrole.workflow.notification.activitytimeout=
com.ibm.itim.workflow.notification.ActivityTimeoutNotification
Si actualiza la versión 4.6 de Tivoli Identity Manager a la versión 5.0, el cambio se
produce automáticamente. Esto presupone que, o la versión 4.6 fue el punto de
inicio de la actualización, o ha cambiado manualmente la propiedad
enrole.workflow.notification.activitytimeout antes de actualizar desde la versión
4.5.x.
Tabla 48. Propiedades de configuración del flujo de trabajo
Configuración de flujo de trabajo
enrole.workflow.lrucache.size
Especifica el tamaño de la caché utilizada para acceder y utilizar temporalmente los
objetos del flujo de trabajo. No se debería cambiar a menos que el soporte técnico de
IBM así lo indique. Si este valor es demasiado grande, se pueden producir
situaciones de falta de memoria en el IBM Tivoli Identity Manager Server.
Ejemplo (predeterminado, comentado):
## enrole.workflow.lrucache.size=número_de_entradas
donde el valor predeterminado de número_de_entradas es 2000.
enrole.workflow.notifyoption
Sólo un administrador cualificado debe cambiar este valor y esta clave de
propiedad.
Especifica las opciones para la notificación de finalización del proceso.
Un valor de 1 implica que se avisará al solicitante cuando el flujo de trabajo haya
terminado. Un valor de 0 implica que no se avisará al solicitante.
Ejemplo (predeterminado):
enrole.workflow.notifyoption=1
enrole.workflow.notifypassword
202
Consulta
Tabla 48. Propiedades de configuración del flujo de trabajo (continuación)
Sólo un administrador cualificado debe cambiar este valor y esta clave de
propiedad.
Especifica el tipo de notificación de correo electrónico en una transacción de
contraseñas (provocada cuando una contraseña de usuario cambia o se genera
automáticamente). Los valores pueden ser:
v true – La notificación por correo electrónico de un cambio de contraseña se puede
enviar al usuario. El mecanismo de notificación real, así como la opción de incluir
la contraseña real en el correo electrónico, está estipulado por la configuración del
valor de la propiedad enrole.workflow.notification.newpassword.
v false – La notificación por correo electrónico de un cambio de contraseña se envía
al usuario. El correo electrónico contiene un URL donde el usuario puede obtener
la contraseña. El URL solicita el secreto compartido del usuario.
Ejemplo (predeterminado):
enrole.workflow.notifypassword=true
enrole.workflow.notifyaccountsonwarning
Especifica si se envían o no las notificaciones de correo electrónico cuando la
operación de la cuenta tiene como resultado un aviso. Los valores pueden ser:
v true – Envía notificaciones de correo electrónico de cuenta.
v false – No envía notificaciones de correo electrónico de cuenta.
Ejemplo (predeterminado):
enrole.workflow.notifyaccountsonwarning=false
enrole.workflow.maxretry
Sólo un administrador cualificado debe cambiar este valor y esta clave de
propiedad.
Especifica el número de veces que se realiza un intento para iniciar un flujo de
trabajo que es inicialmente erróneo. Consulte también enrole.workflow.retrydelay.
Ejemplo (predeterminado):
enrole.workflow.maxretry=2
enrole.workflow.retrydelay
Sólo un administrador cualificado debe cambiar este valor y esta clave de
propiedad.
Especifica el retraso de tiempo [en milisegundos] entre los intentos sucesivos de
iniciar una aplicación de flujo de trabajo que inicialmente ha sido errónea. Consulte
también enrole.workflow.maxretry.
Ejemplo (predeterminado):
enrole.workflow.retrydelay=60000
enrole.workflow.skipapprovalforrequester
Consulta
203
Tabla 48. Propiedades de configuración del flujo de trabajo (continuación)
Sólo un administrador cualificado debe cambiar este valor y esta clave de
propiedad.
Para una actividad de flujo de trabajo que requiere aprobación, esta propiedad
especifica si omitir la aprobación para otras personas que otorgan aprobaciones si el
solicitante puede otorgarlas también.
El valor true omite la aprobación para las personas que otorgan aprobaciones (si el
solicitante es una de estas personas). El valor false fuerza la comprobación de
aprobaciones de todas las personas que otorgan aprobaciones de la actividad excepto
el solicitante (si el solicitante también es una persona que otorga aprobaciones).
Ejemplo (predeterminado):
enrole.workflow.skipapprovalforrequester=false
enrole.workflow.skipfornoncompliantaccount
Sólo un administrador cualificado debe cambiar este valor y esta clave de
propiedad.
Especifica si involucrar o no el flujo de trabajo de titularidad asociado a la cuenta,
cuando se desencadene una modificación de la cuenta de sistema como resultado de
una acción de imposición de políticas.
El valor true implica la omisión de esta acción. El valor false implica que no se
omitirá esta acción.
Ejemplo (predeterminado):
enrole.workflow.skipfornoncompliantaccount=true
enrole.workflow.distribution
Sólo un administrador cualificado debe cambiar este valor y esta clave de
propiedad.
Especifica si las solicitudes del flujo de trabajo se aprovechan o no de las colas
compartidas de IBM Tivoli Identity Manager, que permiten la distribución de carga
de trabajo.
El valor true indica que las solicitudes del flujo de trabajo son válidas para la
distribución. El valor false indica que no lo son.
Ejemplo (predeterminado):
enrole.workflow.distribution=true
enrole.workflow.async_completion_enabled
204
Consulta
Tabla 48. Propiedades de configuración del flujo de trabajo (continuación)
Sólo un administrador cualificado debe cambiar este valor y esta clave de
propiedad.
Especifica si el sistema utiliza o no la comprobación de finalización asíncrona para
algunos flujos de trabajo del sistema, lo cual puede disminuir la tasa de bloqueo de
la base de datos y mejorar el rendimiento.
El valor true utiliza la comprobación de finalización asíncrona. El valor false no
utiliza la comprobación de finalización asíncrona.
Ejemplo (predeterminado):
enrole.workflow.async_completion_enabled=true
enrole.workflow.async_completion_interval_sec
Sólo un administrador cualificado debe cambiar este valor y esta clave de
propiedad.
Especifica el intervalo en segundos que el sistema comprueba si determinados flujos
de trabajo del sistema han finalizado. Sólo se aplica cuando
enrole.workflow.async_completion_enabled=true.
Ejemplo (predeterminado):
enrole.workflow.async_completion_interval_sec=30
enrole.workflow.notification.activitytimeout
Sólo un administrador cualificado debe cambiar este valor y esta clave de
propiedad.
Especifica la clase Java predeterminada que genera la notificación de tiempo de
espera excedido de la actividad de flujo de trabajo.
Ejemplo (predeterminado, especificado como una línea):
enrole.workflow.notification.activitytimeout=
com.ibm.itim.workflow.notification.TemplateActivityTimeoutNotification
enrole.workflow.notification.processtimeout
Sólo un administrador cualificado debe cambiar este valor y esta clave de
propiedad.
Especifica la clase Java predeterminada que genera la notificación de tiempo de
espera excedido del proceso de flujo de trabajo.
Ejemplo (predeterminado, especificado como una línea):
enrole.workflow.notification.processtimeout=com.ibm.itim.workflow.
notification.TemplateProcessTimeoutNotification
enrole.workflow.notification.processcomplete
Consulta
205
Tabla 48. Propiedades de configuración del flujo de trabajo (continuación)
Sólo un administrador cualificado debe cambiar este valor y esta clave de
propiedad.
Especifica la clase Java predeterminada que genera la notificación cuando se
completa un proceso de flujo de trabajo.
Ejemplo (predeterminado, especificado como una línea):
enrole.workflow.notification.processcomplete=com.ibm.itim.workflow.
notification.TemplateProcessCompleteNotification
enrole.workflow.notification.pendingwork
Sólo un administrador cualificado debe cambiar este valor y esta clave de
propiedad.
Especifica la clase Java predeterminada que genera la notificación cuando un
proceso de flujo de trabajo se completa para las actividades manuales (Aprobaciones
y Solicitudes de información).
Ejemplo (predeterminado, especificado como una línea):
enrole.workflow.notification.pendingwork=com.ibm.itim.workflow.
notification.TemplatePendingWorkNotification
enrole.workflow.notification.newaccount
Sólo un administrador cualificado debe cambiar este valor y esta clave de
propiedad.
Especifica la clase Java predeterminada que genera la notificación cuando se
completa un proceso de flujo de trabajo en una cuenta nueva.
Ejemplo (predeterminado, especificado como una línea):
enrole.workflow.notification.newaccount=com.ibm.itim.workflow.
notification.TemplateNewAccountNotification
enrole.workflow.notification.newpassword
206
Consulta
Tabla 48. Propiedades de configuración del flujo de trabajo (continuación)
Sólo un administrador cualificado debe cambiar este valor y esta clave de
propiedad.
Especifica la clase Java predeterminada que genera una notificación cuando se
cambia la contraseña del usuario. Esta propiedad se utiliza sólo cuando el valor de
la propiedad es true.
enrole.workflow.notifypassword=true
Esta propiedad responde a los tres siguientes casos de ejemplo de cambio de
contraseña:
v Cuando el usuario cambia la contraseña de la cuenta
v Cuando el administrador fuerza un cambio de contraseña en la cuenta
v Cuando el usuario se identifica correctamente por medio de la función Preguntas
y respuestas de contraseña y se configuran las preguntas y respuestas.
Las clases válidas son:
v NewPasswordNotification
Se envía al usuario una notificación de correo electrónico (predeterminada) que
incluye la contraseña (en texto ASCII).
v EmptyNotificationFactory
Suprime la notificación por correo electrónico. El método preferido para suprimir
las notificaciones es por medio de la GUI de notificación del flujo de trabajo.
v PasswordChangeNotificationFactory
Se envía al usuario una notificación por correo electrónico que no incluye la
contraseña. El cuerpo del mensaje dice: ″Proceso completado″.
Las clases EmptyNotificationFactory y PasswordChangeNotificationFactory están
ubicadas en el paquete examples.jar, que se encuentra en el directorio de ejemplos.
Ejemplo (predeterminado, especificado como una línea):
enrole.workflow.notification.newpassword=com.ibm.itim.workflow.
notification.TemplateNewPasswordNotification
enrole.workflow.notification.deprovision
Sólo un administrador cualificado debe cambiar este valor y esta clave de
propiedad.
Especifica la clase Java predeterminada que genera la notificación de eliminación del
suministro.
Ejemplo (predeterminado, especificado como una línea):
enrole.workflow.notification.deprovision=com.ibm.itim.workflow.
notification.TemplateDeprovisionNotification
enrole.workflow.notification.workorder
Sólo un administrador cualificado debe cambiar este valor y esta clave de
propiedad.
Especifica la clase Java predeterminada que genera las notificaciones de orden de
trabajo.
Ejemplo (predeterminado, especificado como una línea):
enrole.workflow.notification.workorder=com.ibm.itim.workflow.
notification.TemplateWorkOrderNotification
Consulta
207
Tabla 48. Propiedades de configuración del flujo de trabajo (continuación)
enrole.workflow.notification.changeaccount
Sólo un administrador cualificado debe cambiar este valor y esta clave de
propiedad.
Especifica la clase Java predeterminada que genera las notificaciones de cambio de
cuenta.
Ejemplo (predeterminado, como una línea):
enrole.workflow.notification.changeaccount=
com.ibm.itim.workflow.notification.TemplateChangeAccountNotification
enrole.workflow.notification.restoreaccount
Sólo un administrador cualificado debe cambiar este valor y esta clave de
propiedad.
Especifica la clase Java predeterminada que genera las notificaciones de restauración
de cuenta.
Ejemplo (como una línea):
enrole.workflow.notification.restoreaccount=
com.ibm.itim.workflow.notification.TempateRestoreAccountNotification
enrole.workflow.notification.suspendaccount
Sólo un administrador cualificado debe cambiar este valor y esta clave de
propiedad.
Especifica la clase Java predeterminada que genera las notificaciones de suspensión
de cuenta.
Ejemplo (como una línea):
enrole.workflow.notification.suspendaccount=
com.ibm.itim.workflow.notification.TemplateSuspendAccountNotification
Propiedades de conciliación
Las propiedades de conciliación se utilizan para configurar el proceso de
conciliación donde los datos que se recuperan de los agentes se sincronizan en la
base de datos de IBM Tivoli Identity Manager.
La Tabla 49 define las propiedades de conciliación utilizadas para configurar los
valores que afectan al proceso de conciliación donde los datos que se recuperan de
los agentes se sincronizan en la base de datos de IBM Tivoli Identity Manager.
Tabla 49. Propiedades de conciliación
Configuración de conciliación
enrole.reconciliation.accountcachesize
208
Consulta
Tabla 49. Propiedades de conciliación (continuación)
Sólo un administrador cualificado debe cambiar este valor y esta clave de
propiedad.
Especifica el tamaño máximo de la caché para la caché de cuentas existente que se
utiliza con el proceso de conciliación. Configurar un valor mayor que el
predeterminado podría provocar que no se pueda realizar el proceso de
conciliaciones.
Ejemplo (predeterminado):
enrole.reconciliation.accountcachesize=2000
enrole.reconciliation.threadcount
Sólo un administrador cualificado debe cambiar este valor y esta clave de
propiedad.
Especifica la cantidad de hebras que se utilizan para manejar las entradas
conciliadas. Este número de hebras se crea para cada proceso de conciliación.
Ejemplo (predeterminado):
enrole.reconciliation.threadcount=8
enrole.reconciliation.failurethreshold
Sólo un administrador cualificado debe cambiar este valor y esta clave de
propiedad.
Especifica el número máximo de cuentas locales para suprimir al final de la
conciliación. Si se excede el valor, no se suprimirá ninguna cuenta local o ninguna
entrada de datos con soporte. Si el valor está seguido por un signo de porcentaje
(%), especifica el máximo como porcentaje comparado con el total de (cuentas
locales en el inicio de la conciliación + cuentas nuevas devueltas por la conciliación).
El valor 100% especifica que no hay límite.
Ejemplo (predeterminado, comentado):
#enrole.reconciliation.failurethreshold=100%
enrole.reconciliation.logTimeInterval
Sólo un administrador cualificado debe cambiar este valor y esta clave de
propiedad.
Especifica el intervalo de tiempo en segundos para los mensajes de registro de
rastreo del progreso de la conciliación. El valor de cero inhabilita este intervalo de
tiempo.
Ejemplo (predeterminado, comentado):
#enrole.reconciliation.logTimeInterval=600
enrole.reconciliation.logEveryNResults
Sólo un administrador cualificado debe cambiar este valor y esta clave de
propiedad.
Especifica la cuenta para los mensajes de registro de rastreo del progreso de la
conciliación. El valor de cero inhabilita esta cuenta.
Ejemplo (predeterminado, comentado):
#enrole.reconciliation.logEveryNResults=5000
Consulta
209
Tabla 49. Propiedades de conciliación (continuación)
Sucesos de notificación no solicitados
account.EventProcessorFactory
No modifique este valor ni esta clave de propiedad.
Especifica la clase Java integrada para la fábrica del procesador de sucesos de la
cuenta.
Ejemplo (predeterminado, especificado como una línea):
account.EventProcessorFactory=com.ibm.itim.remoteservices.ejb.
reconciliation.AccountEventProcessorFactory
person.EventProcessorFactory
No modifique este valor ni esta clave de propiedad.
Especifica la clase Java integrada para la fábrica del procesador de sucesos de la
persona.
Ejemplo (predeterminado, especificado como una línea):
person.EventProcessorFactory=com.ibm.itim.remoteservices.ejb.
reconciliation.PersonEventProcessorFactory
Proceso de conciliación
account.ReconEntryHandlerFactory
No modifique este valor ni esta clave de propiedad.
Especifica la clase Java integrada para la fábrica del manejador de la entrada de
cuentas.
Ejemplo (predeterminado, especificado como una línea):
account.ReconEntryHandlerFactory=com.ibm.itim.remoteservices.ejb.
mediation.AccountEntryHandlerFactory
person.ReconEntryHandlerFactory
No modifique este valor ni esta clave de propiedad.
Especifica la clase Java integrada para la fábrica del manejador de la entrada de
personas.
Ejemplo (predeterminado, especificado como una línea):
person.ReconEntryHandlerFactory=com.ibm.itim.remoteservices.ejb.
mediation.PersonEntryHandlerFactory
Posposición de solicitudes para recursos remotos erróneos
com.ibm.itim.remoteservices.ResourceProperties.DEFER_FAILED_RESOURCE
210
Consulta
Tabla 49. Propiedades de conciliación (continuación)
No modifique este valor ni esta clave de propiedad.
Especifica si posponer solicitudes para recursos erróneos y esperar a que el recurso
se reinicie antes de enviarlas. Los valores válidos son:
v true – Pospone solicitudes de recursos erróneos y espera a que se reinicie el
recurso.
v false – Si el recurso es erróneo, las solicitudes seguirán el mecanismo de reintento
del flujo de trabajo configurado (consulte enrole.workflow.maxretry y
enrole.workflow.retrydelay) antes de que finalice como erróneo.
Ejemplo (predeterminado):
com.ibm.itim.remoteservices.ResourceProperties.DEFER_FAILED_RESOURCE=true
remoteservices.remotepending.interval
No modifique este valor ni esta clave de propiedad.
Especifica el intervalo en segundos (120 mínimo a 3600 máximo) para comprobar si
los recursos erróneos se han reiniciado.
Ejemplo (predeterminado):
remoteservices.remotepending.interval=600
com.ibm.itim.remoteservices.ResourceProperties.MAX_REQUEST_TIME
No modifique este valor ni esta clave de propiedad.
Especifica el tiempo máximo en segundos que una solicitud a un recurso puede
estar pendiente, incluido el tiempo en estado pendiente para solicitudes asíncronas o
solicitudes pospuestas debido a un error del servicio o a la acumulación de
solicitudes pendientes. Los valores válidos son:
v -1 – Sin límite. En este caso, los tiempos de espera de ejecución de la actividad
del flujo de trabajo definirán la duración máxima real, como especifican las
definiciones del proceso del flujo de trabajo.
v 60 + (valor de remoteservices.remotepending.interval) – Intervalo de tiempo
mínimo para solicitudes pendientes.
Ejemplo (predeterminado):
com.ibm.itim.remoteservices.ResourceProperties.MAX_REQUEST_TIME=-1
remoteservices.remotepending.restart.retry
No modifique este valor ni esta clave de propiedad.
Especifica el intervalo de tiempo en minutos que se da para la finalización de las
solicitudes pendientes generadas desde el reinicio de un servicio erróneo. Cuando el
intervalo de tiempo finaliza, el servidor reintenta las solicitudes.
Ejemplo (predeterminado):
remoteservices.remotepending.restart.retry=1440
com.ibm.itim.remoteservices.DSML2ServiceProvider.modifyAsREPLACE
Consulta
211
Tabla 49. Propiedades de conciliación (continuación)
Sólo un administrador cualificado debe cambiar este valor y esta clave de
propiedad.
Para los servicios remotos, especifica la modalidad del proveedor (en desuso)
DSMLv2 de envío de una solicitud de modificación para atributos.
Los valores son:
v true – Utiliza la operación REPLACE (sustituir).
v false – Utiliza las operaciones ADD (agregar) y DELETE (suprimir).
Ejemplo (predeterminado):
com.ibm.itim.remoteservices.DSML2ServiceProvider.modifyAsREPLACE=true
Propiedades del secreto compartido
Las propiedades del secreto compartido se utilizan para configurar el nivel de
protección del código de secreto compartido.
La Tabla 50 define las propiedades utilizadas para configurar el nivel de protección
del código de secreto compartido.
El secreto compartido lo utiliza un propietario de cuenta para recuperar una
contraseña nueva o cambiada para una cuenta cuando el sistema está configurado
de forma que no envíe por correo electrónico contraseñas en texto legible (es decir,
el valor de enrole.workflow.notifypassword=false). Esta propiedad determina si el
secreto compartido almacenado se debe ocultar por motivos de protección
adicional.
Tabla 50. Propiedades ocultas del secreto compartido
enrole.sharedsecret.hashed
Sólo un administrador cualificado debe cambiar este valor y esta clave de
propiedad.
Especifica si el código del secreto compartido está oculto (seguro) o no (no seguro).
Los valores son:
v true – Almacena el secreto compartido como oculto.
v false – Almacena el secreto compartido como no oculto.
Ejemplo (predeterminado):
enrole.sharedsecret.hashed=false
Propiedades de la regla de ciclo vital
Las propiedades de la regla de ciclo vital definen valores, como por ejemplo el
tamaño de partición, utilizados para las reglas de ciclo vital.
La Tabla 51 define las propiedades que se utilizan para configurar las reglas de
ciclo vital.
Tabla 51. Propiedades de la regla de ciclo vital
enrole.lifecyclerule.partition.size
212
Consulta
Tabla 51. Propiedades de la regla de ciclo vital (continuación)
No cambie este valor a menos que el soporte técnico de IBM se lo solicite. Especifica
el tamaño de las particiones de datos utilizadas cuando se procesan las reglas de
ciclo vital. Este parámetro determina cuántos datos se procesarán en un paso único.
Ejemplo (predeterminado):
enrole.lifecyclerule.partition.size=100
Propiedades del nombre de producto
Las propiedades del nombre de producto identifican este producto.
La Tabla 52 define la propiedad que se utiliza para identificar el producto.
Tabla 52. Propiedad del producto
enrole.product.name
No cambie este nombre. Esta clave de propiedad identifica el nombre del producto
como IBM Tivoli Identity Manager.
Ejemplo (predeterminado):
enrole.product.name=ITIM Enterprise
Propiedades de solicitud del cliente de aplicación
Las propiedades de solicitud del cliente de aplicación definen las propiedades que
se utilizan para configurar el valor de la duración o el tiempo de espera, para la
señal de autenticación utilizada para permitir la comunicación de terceros con el
IBM Tivoli Identity Manager Server.
La Tabla 53 define las propiedades utilizadas para configurar el valor de la
duración o el tiempo de espera, para la señal de autenticación utilizada por la API
de la aplicación IBM Tivoli Identity Manager para permitir a aplicaciones de
terceros la comunicación con el IBM Tivoli Identity Manager Server.
Tabla 53. Propiedades de solicitud del cliente de aplicación
authTokenTimeout
Especifica el valor de tiempo de espera [en horas] para la señal de autenticación que
se utiliza para la comunicación entre aplicaciones de terceros (por medio de la API
de aplicaciones de IBM Tivoli Identity Manager) y el IBM Tivoli Identity Manager
Server.
Un valor de -1 indica que no hay tiempo de espera para la señal de autenticación.
Ejemplo (predeterminado):
authTokenTimeout=48
Propiedades de sincronización inversa de contraseñas
Las propiedades de sincronización inversa de contraseñas se utilizan para
configurar la sincronización inversa de contraseñas.
Consulta
213
La Tabla 54 define las propiedades que se utilizan para configurar la sincronización
inversa de contraseñas.
Tabla 54. Propiedades de sincronización inversa de contraseñas
reversePasswordSynch.bypassPwdValidationOnOrphanAccount
Especifica si se omite la validación de contraseña en la cuenta huérfana cuando se
envía la solicitud del agente. Los valores válidos son:
v true – Omite la validación de contraseñas.
v false – Valida las contraseñas.
Ejemplo (predeterminado):
reversePasswordSynch.bypassPwdValidationOnOrphanAccount=false
enrole.passwordsynch.module.sendMail
Especifica si habilitar o inhabilitar las notificaciones de correo electrónico cuando el
agente de sincronización inversa de contraseñas desencadena la sincronización de
contraseñas, no desde la interfaz gráfica de usuario de IBM Tivoli Identity Manager.
Los valores válidos son:
v true – Habilita las notificaciones de correo electrónico.
v false – Inhabilita las notificaciones de correo electrónico.
Ejemplo (predeterminado):
enrole.passwordsynch.module.sendMail=false
Propiedades de oficina de correos
Las propiedades de oficina de correos se utilizan para configurar la oficina de
correos para el conjunto de correos electrónicos.
La Tabla 55 define las propiedades para probar la configuración de la oficina de
correos.
Tabla 55. Propiedades de oficina de correos
enrole.postoffice.test.subject1
enrole.postoffice.test.textbody1
enrole.postoffice.test.xhtmlbody1
Especifica el contenido de los correos electrónicos que se utilizan cuando se prueba
la configuración de la oficina de correos. Este es uno de los tres correos electrónicos
a los que se aplica la plantilla.
Ejemplo (predeterminado):
enrole.postoffice.test.subject1=This is subject 1
enrole.postoffice.test.textbody1=This is the text body 1
enrole.postoffice.test.xhtmlbody1=This is the xhtml body 1
enrole.postoffice.test.subject2
enrole.postoffice.test.textbody2
enrole.postoffice.test.xhtmlbody2
214
Consulta
Tabla 55. Propiedades de oficina de correos (continuación)
Especifica el contenido de los correos electrónicos que se utilizan cuando se prueba
la configuración de la oficina de correos. Este es uno de los tres correos electrónicos
a los que se aplica la plantilla.
Ejemplo (predeterminado):
enrole.postoffice.test.subject2=This is subject 2
enrole.postoffice.test.textbody2=This is the text body 2
enrole.postoffice.test.xhtmlbody2=This is the xhtml body 2
enrole.postoffice.test.subject3
enrole.postoffice.test.textbody3
enrole.postoffice.test.xhtmlbody3
Especifica el contenido de los correos electrónicos que se utilizan cuando se prueba
la configuración de la oficina de correos. Este es uno de los tres correos electrónicos
a los que se aplica la plantilla.
Ejemplo (predeterminado):
enrole.postoffice.test.subject3=This is subject 3
enrole.postoffice.test.textbody3=This is the text body 3
enrole.postoffice.test.xhtmlbody3=This is the xhtml body 3
enrole.postoffice.test.topic
Especifica el tema del correo electrónico que se utiliza cuando se prueba la
configuración de la oficina de correos. Los tres correos electrónicos de prueba, cuyo
contenido se define por las propiedades mencionadas anteriormente, tendrán este
tema. La función oficina de correos obtiene y almacena correos electrónicos por
tema y entorno local para que se agreguen y envíen como un solo correo electrónico
en un intervalo configurado, como por ejemplo, una vez al día o una vez a la
semana. Esto evita el envío masivo de correo al destinatario con muchos correos
electrónicos individuales para un tipo de suceso. Los datos del tema, que
normalmente indican el tipo de suceso, también se hacen disponibles para el
entorno de programación que se activa cuando los correos electrónicos obtenidos se
agregan en un correo electrónico de resumen. De esta forma, el tema bajo el que
todos estos correos electrónicos se han obtenido se puede mostrar de forma
principal en el correo electrónico acumulado que se envía.
Ejemplo (predeterminado):
enrole.postoffice.test.topic=topic1
enrole.postoffice.test.locale
Especifica el entorno local para el idioma que se utiliza en un correo electrónico.
Ejemplo (predeterminado):
enrole.postoffice.test.locale=en_US
Propiedades del paquete de recursos de la base de datos
Las propiedades del paquete de recursos de la base de datos determinan el
intervalo de renovación para el paquete de recursos de la base de datos.
La Tabla 56 en la página 216 define las propiedades que se utilizan para
determinar el intervalo de renovación para el paquete de recursos de la base de
datos.
Consulta
215
Tabla 56. Propiedades del paquete de recursos de la base de datos
enrole.databaseresourcebundle.refreshInterval
Especifica los minutos a esperar antes de que se compruebe si hay cambios en
DatabaseResourceBundle o se ha cargado de nuevo.
Ejemplo (predeterminado):
enrole.databaseresourcebundle.refreshInterval=5
Propiedades de limpieza de la base de datos
Las propiedades de limpieza de la base de datos definen los parámetros para
limpiar la información de sesión en la base de datos.
La Tabla 57 define los parámetros para la hebra de limpieza del análisis de política
para limpiar la información de sesión en la base de datos.
Tabla 57. Propiedades de limpieza de la base de datos
provisioning.policy.preview.cleanup.interval
Especifica el intervalo en minutos en el que la hebra de limpieza explorará la base
de datos.
Ejemplo:
provisioning.policy.preview.cleanup.interval=30
provisioning.policy.analysis.idle.timeout
Representa el valor de tiempo de caducidad para una sesión de análisis de política.
La hebra de limpieza limpia los datos en fases guardados de una sesión de análisis
de política si la sesión finaliza en un intervalo mayor que el valor de tiempo de
espera, como por ejemplo, 120 minutos.
Ejemplo:
provisioning.policy.analysis.idle.timeout=120
Propiedades de restauración de cuentas
Las propiedades de restauración de cuentas pueden suprimir la necesidad de tener
contraseña nueva cuando se restaura una cuenta.
La Tabla 58 define las propiedades para la configuración de la restauración de
cuentas.
Tabla 58. Propiedades de restauración de cuentas
account.restore.password.suppress
216
Consulta
Tabla 58. Propiedades de restauración de cuentas (continuación)
Inhabilita la solicitud de una contraseña nueva cuando se restauran cuentas.
Esta propiedad se debe agregar manualmente al archivo enRole.properties si
implementa esta función. Incluso cuando esta propiedad se establece en true,
algunas cuentas seguirán necesitando una contraseña nueva durante la restauración.
Para inhabilitar la solicitud de contraseña nueva durante la restauración de una
cuenta, detenga el IBM Tivoli Identity Manager Server, agregue la propiedad
(elimine el comentario), establézcala en true y reinicie el servidor.
Ejemplo (comentado):
# account.restore.password.suppress=true
Propiedades de recuadro de selección para crear contraseñas
Las propiedades de recuadro de selección para crear contraseñas definen las
propiedades de recuadro de selección predeterminadas para crear una contraseña.
La Tabla 59 define las propiedades de recuadro de selección predeterminadas para
la creación de contraseñas.
Tabla 59. Propiedades de recuadro de selección para crear contraseñas predeterminadas
enrole.CreatePassword
Especifica si una contraseña se crea de forma automática. Los valores válidos son:
v true – Crea una contraseña.
v false – No crea una contraseña. El usuario debe escribir la contraseña.
Ejemplo (predeterminado):
enrole.CreatePassword=true
Propiedades de alimentación de identidades
Las propiedades de alimentación de identidades definen una acción de
alimentación de identidad predeterminada, como por ejemplo, suspender o no una
cuenta.
La Tabla 60 define las propiedades de alimentación de identidades
predeterminadas.
Tabla 60. Propiedades de alimentación de identidades predeterminadas
enrole.suspend.accounts.identity.feed
Especifica si todas las cuentas de usuario se suspenden cuando la persona se
suspende durante una alimentación de identidades. Los valores válidos son:
v true – Suspende todas las cuentas de un usuario suspendido.
v false – No suspende todas la cuentas de un usuario suspendido.
Ejemplo (predeterminado):
enrole.suspend.accounts.identity.feed=true
Consulta
217
Propiedades de actualización
Las propiedades de actualización definen valores para la actualizaciones de un
release dado de IBM Tivoli Identity Manager.
La Tabla 61 define las propiedades de actualización del producto.
Tabla 61. Propiedades de actualización predeterminadas
minUpgradeVersion
Especifica la versión mínima que la actualización soporta para un release dado de
IBM Tivoli Identity Manager.
Ejemplo (predeterminado):
minUpgradeVersion=4.6
file.merge.list
Especifica los archivos de propiedades que se fusionan durante la actualización de
IBM Tivoli Identity Manager.
Ejemplo (predeterminado):
file.merge.list=enRole \
enRoleLDAPConnection \
enRoleDatabase \
enRoleLogging \
enRoleMail \
ui \
CustomLabels \
enRoleAuthentication \
adhocreporting \
enroleworkflow \
enroleAuditing \
crystal \
SelfServiceScreenText \
SelfServiceScreenText_en \
SelfServiceHelp \
SelfServiceUI \
SelfServiceHomePage
Se debe realizar una copia de seguridad de estos archivos mediante
backupPropertyFiles.sh o backupPropertyFiles.cmd.
Propiedades de varios agentes de sincronización de
contraseñas
Las propiedades de varios agentes de sincronización de contraseñas se utilizan
para configurar el IBM Tivoli Identity Manager Server para que dé soporte a varios
agentes de sincronización de contraseñas.
La Tabla 62 define las propiedades que se utilizan para configurar el soporte para
varios agentes de sincronización de contraseñas.
Tabla 62. Propiedades de varios agentes de sincronización de contraseñas
enrole.passwordsynch.enabledonresource
218
Consulta
Tabla 62. Propiedades de varios agentes de sincronización de contraseñas (continuación)
Especifica si se debe habilitar o inhabilitar el soporte para varios agentes de
sincronización de contraseñas. Los valores válidos son:
v true – Habilita el soporte para varios agentes de sincronización de contraseñas.
v false – Inhabilita el soporte para varios agentes de sincronización de contraseñas.
Ejemplo (predeterminado):
enrole.passwordsynch.enabledonresource=false
enrole.passwordsynch.toleranceperiod
Especifica el periodo de tiempo máximo, en segundos, entre una solicitud de cambio
de contraseña enviada desde el IBM Tivoli Identity Manager Server al recurso de
sincronización de contraseñas, y la recepción de una solicitud inversa de
sincronización de contraseñas desde el plug-in instalado en el recurso de
sincronización de contraseñas.
Ejemplo (predeterminado):
enrole.passwordsynch.toleranceperiod=60
enrole.PasswordSynchStoreMonitor.heartbeat
Especifica el latido de supervisión de transacciones de sincronización de
contraseñas, en horas.
Ejemplo (predeterminado):
enrole.PasswordSynchStoreMonitor.heartbeat=1
Consulta
219
220
Consulta
Índice
A
ampliación JavaScript (continuación)
ampliación JavaScript (continuación)
objeto (continuación)
objeto (continuación)
accesibilidad 1
Error.getErrorCode 82
RoleSearch.searchByName 110
Account
Error.getMessage 82
SeparationOfDutyRuleViolation 110
objeto, ampliación JavaScript 56
Error.setErrorCode 82
Service 111
AccountModelExtension, ampliaciones
Error.setMessage 82
ServiceSearch 111
JavaScript 42
IdentityPolicy 83
ServiceSearch.searchByFilter 112
adhocreporting.properties 127
IdentityPolicy.getNextCount 83
ServiceSearch.searchByName 112
ampliación JavaScript
IdentityPolicy.userIDExists 84
ServiceSearch.searchForClosestToPerson
objeto
PackagedApprovalDocument 84
ampliaciones
Account 56
PackagedApprovalItem 86
JavaScript 40
AccountSearch 57
Participant 87
AccountModelExtension 42
AccountSearch.searchByOwner 57
Participant.implementation 88
AttributesExtension 40
AccountSearch.searchByUid 58
Participant.name 89
EmailContextExtension 40
AccountSearch.searchByUidAndService 58 Participant.type 89
EnroleExtension 40
Activity 58
ParticipantType 89
IdentityPolicyExtension 41
Activity.auditEvent 60
Person 91
LoopCountExtension 41
Activity.description 61
Person.getNewRoles 92
Modelo 41
Activity.id 61
Person.getRemovedRoles 92
OrganizationModelExtension 42
Activity.index 61
Person.getRoles 91
PersonModelExtension 42
Activity.name 61
Person.isInRole 93
PersonPlacementRulesExtension 43
Activity.participant 62
Person.removeRole 93
PostOfficeExtension 43
Activity.resultDetail 62
PersonSearch 93
ProvisioningPolicyExtension 43
Activity.resultSummary 62
PersonSearch.searchByFilter 94
registro 46
Activity.setResult 62
PostOffice 95
ReminderExtension 44
Activity.started 63
PostOffice.getAllEmailMessages 95
RoleModelExtension 42
Activity.state 63
PostOffice.getEmailAddress 96
ServiceExtension 44
Activity.subtype 64
PostOffice.getPersonByEmailAddress 96
ServiceModelExtension 43
Activity.type 64
PostOffice.getTopic 96
SubjectExtension 44
AttributeChangeOperation 64
Process 96
WorkflowExtension 45
AttributeChangeOperation.attr 65
Process.auditEvent 99
migración
AttributeChangeOperation.op 65
Process.comment 99
constructor 52
AttributeChangeOperation.values 65
Process.description 99
conversión de script 51
ContainerSearch 65
Process.getActivity 99
ejemplo 49
ContainerSearch.searchByFilter 66
Process.getParent 100
FESI 48
Context 66
Process.getRootProcess 100
scriptframework.properties 47
Context.getAccountParameter 68
Process.getRootRequesterName 101 ampliaciones JavaScript
Context.getActivityResult 68
Process.id 101
AttributesExtension 40
Context.getActivityResultById 69
Process.name 101
diferencias de funciones, FESI e IBM
Context.getLoopCount 69
Process.parentId 101
JSEngine 48
Context.getLoopCountByID 69
Process.requesteeDN 102
EmailContextExtension 40
Context.getProcessType 70
Process.requesteeName 102
empaquetado 40
Context.getRequestee 70
Process.requestorName 102
EnroleExtension 40
Context.getService 70
Process.requestorType 103
fesiextensions.properties 46
Context.isAccountDataChanged 71
Process.resultDetail 103
IdentityPolicyExtension 41
DirectoryObject 71
Process.resultSummary 103
LoopCountExtension 41
DirectoryObject.dn 72
Process.setRequesteeData 103
migración
DirectoryObject.getChanges 72
Process.setResult 104
FESI 48
DirectoryObject.getProperty 73
Process.setSubjectData 104
Modelo 41
DirectoryObject.getPropertyNames 74
Process.started 105
AccountModelExtension 42
DirectoryObject.name 74
Process.state 105
OrganizationModelExtension 42
DirectoryObject.removeProperty 74
Process.subject 105
PersonModelExtension 42
EmailContext 75
Process.type 106
RoleModelExtension 42
Enrole 78
ProcessData 106
ServiceModelExtension 43
Enrole.generatePassword 79
ProcessData.get 106
PersonPlacementRulesExtension 43
Enrole.getAttributeValue 79
ProcessData.set 107
PostOfficeExtension 43
Enrole.getAttributeValues 79
RecertificationWorkflow 107
ProvisioningPolicyExtension 43
Enrole.localize 80
Reminder 108
registro 46
Enrole.log 80
Role 109
ReminderExtension 44
Enrole.toGeneralizedTime 80
Role.getOwner 109
scriptframework.properties 46, 47
Enrole.toMilliseconds 81
RoleSearch 109
ServiceExtension 44
Error 81
221
113
ampliaciones JavaScript (continuación)
SubjectExtension 44
visión general 38
WorkflowExtension 45
API
Análisis de política 8
API de IBM Directory Integration 7
Autenticación 7
Autoregistro 5
Conciliación 6
Control de accesos 6
Correo 8
Flujo de trabajo 9
Grupo 6
Inicio de sesión único 9
JavaScript 8
Proveedor de servicios 9
Reglas de contraseña 8
Servicios de datos 5, 7
visión general 4
archivo enRole.properties 181
actualizar 218
alimentación de identidades 217
Configuración de servicios de correo
electrónico 201
configuración de solicitud del cliente
de aplicación 213
configuración específica de
WebSphere 181
cuenta de restauración 216
enviando mensajes de
información 192
estrategia de búsqueda y
configuración de control LDAP 188
información de agrupación de
conexiones LDAP 196
información de caché 191
información de cifrado 198
información de codificación de
preguntas y respuestas de
contraseña 200
información de conciliación 208
información de configuración del flujo
de trabajo 202
Información de planificación 194
información del inquilino,
predeterminado 186
información del servidor de
aplicaciones 185
Información del servidor LDAP 186
Información XML y DTD 196
limpieza de base de datos 216
nombre de organización 186
nombre de producto 213
oficina de correos 214
paquete de recursos de base de
datos 215
perfil de persona 190
programa de configuración del
sistema 201
recuadro de selección de creación de
contraseñas 217
regla de ciclo vital 212
secreto compartido oculto 212
sincronización de contraseñas 218
sincronización inversa de
contraseñas 214
222
Consulta
archivo enRole.properties (continuación)
Valores de supervisión de la
transacción de contraseñas 195
archivos de propiedades
adhocreporting.properties 127
adicional, no configurable 125
crystal.properties 134
DataBaseFunctions.conf 136
enroleAuditing.properties 137
enRoleAuthentication.properties 139
enRoleDatabase.properties 141
enRoleLDAPConnection.properties 144
enRoleLogging.properties 148
enRoleMail.properties 159
enrolepolicies.properties 162
enroleworkflow.properties 165
fesiextensions.properties 166
helpmappings.properties 168
propiedades suplementarias 122
reportingLabels.properties 168
reporttabledeny.properties 168
scriptframework.properties 169
SelfServiceHelp.properties 171
SelfServiceHomePage.properties 172
SelfServiceScreenText.properties 172
SelfServiceUI.properties 172
ui.properties 175
AttributesExtension, ampliaciones
JavaScript 40
C
ConfigErrorMessages.properties, no
configurable 125
ConfigLabels.properties, no
configurable 125
ConfigMessages.properties, no
configurable 125
Configuración de servicios de correo
electrónico 201
configuración de solicitud del cliente de
aplicación 213
configuración específica de
WebSphere 181
constructor
migración JavaScript, ejemplo 52
crystal.properties 134
CustomForms.properties, no
configurable 125
CustomLabels.properties 135
D
DataBaseFunctions.conf 136
Dsml2RootDSE.properties, no
configurable 125
Dsml2Schema.properties, no
configurable 125
E
EmailContextExtension, ampliaciones
JavaScript 40
enRole2ldif.properties, en desuso 125
enroleAuditing.properties 137
enRoleAuthentication.properties 139
enRoleDatabase.properties 141
enRoleEntityHiddenAttributes, no
modificar 126
EnroleExtension, ampliaciones
JavaScript 40
enRoleFonts.properties, no
configurable 126
enRoleHelp.properties, no
configurable 126
enRoleHiddenAttributes.properties, no
configurable 126
enRoleHiddenSearchAttributes.properties,
no configurable 126
enRoleLDAPConnection.properties 144
enRoleLogging.properties 148
enRoleMail.properties 159
enrolepolicies.properties 162
enroleStartup.properties, no
configurable 126
enRoleUnchangedAttributes.properties,
no configurable 126
enRoleValidateAttributes.properties, no
configurable 126
enroleworkflow.properties 165
entitlementHiddenAttributes.properties,
no configurable 126
enviando mensajes de información 192
estrategia de búsqueda y configuración
de control LDAP 188
expresiones regulares 118
expressHiddenAttributes.properties, no
configurable 126
F
FESI
fesi.jar, descarga 52
migración
ejemplo 48
fesi.jar
descarga 52
fesiextensions.properties 46, 166
flujos de trabajo
ampliación de la aplicación
métodos 3
registro 3
objetos JavaScript
datos relevantes 45
funciones de JavaScript 116
H
helpmappings.properties 168
HighContrastBigFontTheme.properties,
no configurable 126
HighContrastTheme.properties, no
configurable 126
I
ibmSchemaSyntax.properties, no
configurable 126
IdentityPolicyExtension, ampliaciones
JavaScript 41
información de actualización 218
objeto (continuación)
objeto (continuación)
ampliación JavaScript (continuación)
ampliación JavaScript (continuación)
Activity.auditEvent 60
Person.removeRole 93
Activity.description 61
PersonSearch 93
Activity.id 61
PersonSearch.searchByFilter 94
Activity.index 61
PostOffice 95
Activity.name 61
PostOffice.getAllEmailMessages 95
Activity.participant 62
PostOffice.getEmailAddress 96
Activity.resultDetail 62
PostOffice.getPersonByEmailAddress 96
Activity.resultSummary 62
PostOffice.getTopic 96
Activity.setResult 62
Process 96
Activity.started 63
Process.auditEvent 99
Activity.state 63
Process.comment 99
Activity.subtype 64
Process.description 99
Activity.type 64
Process.getActivity 99
AttributeChangeOperation 64
Process.getParent 100
AttributeChangeOperation.attr 65
Process.getRootProcess 100
AttributeChangeOperation.op 65
Process.getRootRequesterName 101
AttributeChangeOperation.values 65
Process.id 101
ContainerSearch 65
Process.name 101
ContainerSearch.searchByFilter 66
Process.parentId 101
Context 66
Process.requesteeDN 102
Context.getAccountParameter 68
Process.requesteeName 102
Context.getActivityResult 68
Process.requestorName 102
Context.getActivityResultById 69
Process.requestorType 103
Context.getLoopCount 69
Process.resultDetail 103
Context.getLoopCountByID 69
Process.resultSummary 103
Context.getProcessType 70
Process.setRequesteeData 103
Context.getRequestee 70
Process.setResult 104
Context.getService 70
Process.setSubjectData 104
Context.isAccountDataChanged 71
Process.started 105
DirectoryObject 71
Process.state 105
DirectoryObject.dn 72
Process.subject 105
Labels.properties, no configurable 127
DirectoryObject.getChanges 72
Process.type 106
Log4j 148
DirectoryObject.getProperty 73
ProcessData 106
LoopCountExtension, ampliaciones
DirectoryObject.getPropertyNames 74
ProcessData.get 106
JavaScript 41
DirectoryObject.name 74
ProcessData.set 107
DirectoryObject.removeProperty 74
RecertificationWorkflow 107
EmailContext 75
Reminder 108
Enrole 78
Role 109
Enrole.generatePassword 79
Role.getOwner 109
Messages.properties, no
Enrole.getAttributeValue 79
RoleSearch 109
configurable 127
Enrole.getAttributeValues 79
RoleSearch.searchByName 110
métodos de ampliación de la
Enrole.localize 80
SeparationOfDutyRuleViolation 110
aplicación 3
Enrole.log 80
Service 111
migración
Enrole.toGeneralizedTime 80
ServiceSearch 111
JavaScript
Enrole.toMilliseconds 81
ServiceSearch.searchByFilter 112
ejemplo de constructor 52
Error 81
ServiceSearch.searchByName 112
ejemplo de FESI 49
Error.getErrorCode 82
ServiceSearch.searchForClosestToPerson 113
ejemplo de script 51
Error.getMessage 82
objeto AccountSearch, ampliación
FESI 48
Error.setErrorCode 82
JavaScript 57
Modelo, ampliaciones JavaScript 41
Error.setMessage 82
objeto AccountSearch.searchByOwner,
IdentityPolicy 83
ampliación JavaScript 57
IdentityPolicy.getNextCount 83
objeto AccountSearch.searchByUid,
IdentityPolicy.userIDExists 84
ampliación JavaScript 58
nombre de producto 213
Oerson.isInRole 93
objeto
PackagedApprovalDocument 84
AccountSearch.searchByUidAndService,
PackagedApprovalItem 86
ampliación JavaScript 58
Participant 87
objeto Activity, ampliación JavaScript 58
objeto
Participant.implementation 88
objeto Activity.auditEvent, ampliación
ampliación JavaScript
Participant.name 89
JavaScript 60
Account 56
Participant.type 89
objeto Activity.description, ampliación
AccountSearch 57
ParticipantType 89
JavaScript 61
AccountSearch.searchByOwner 57
Person 91
objeto Activity.id, ampliación
AccountSearch.searchByUid 58
Person.getNewRoles 92
JavaScript 61
AccountSearch.searchByUidAndService 58 Person.getRemovedRoles 92
objeto Activity.index, ampliación
Activity 58
Person.getRoles 91
JavaScript 61
información de agrupación de conexiones
LDAP 196
información de alimentación de
identidades 217
información de caché 191
información de cifrado 198
información de codificación de preguntas
y respuestas de contraseña 200
información de conciliación 208
información de configuración del flujo de
trabajo 202
información de la oficina de correos 214
información de limpieza de base de
datos 216
Información de planificación 194
información de recuadro de selección de
creación de contraseña 217
información de restauración de
cuentas 216
información del inquilino,
predeterminado 186
información del servidor de
aplicaciones 185
Información del servidor LDAP 186
Información XML y DTD 196
iplanetSchemaSyntax.properties, no
configurable 127
itiminstaller.properties, no
configurable 127
L
M
N
O
Índice
223
objeto Activity.name, ampliación
JavaScript 61
objeto Activity.participant, ampliación
JavaScript 62
objeto Activity.resultDetail, ampliación
JavaScript 62
objeto Activity.resultSummary, ampliación
JavaScript 62
objeto Activity.setResult, ampliación
JavaScript 62
objeto Activity.started, ampliación
JavaScript 63
objeto Activity.state, ampliación
JavaScript 63
objeto Activity.subtype, ampliación
JavaScript 64
objeto Activity.type, ampliación
JavaScript 64
objeto AttributeChangeOperation,
ampliación JavaScript 64
objeto AttributeChangeOperation.attr,
ampliación JavaScript 65
objeto AttributeChangeOperation.op,
ampliación JavaScript 65
objeto AttributeChangeOperation.values,
ampliación JavaScript 65
objeto ContainerSearch, ampliación
JavaScript 65
objeto ContainerSearch.searchByFilter,
ampliación JavaScript 66
objeto Context, ampliación JavaScript 66
objeto Context.getAccountParameter,
ampliación JavaScript 68
objeto Context.getActivityResult,
ampliación JavaScript 68
objeto Context.getActivityResultById,
ampliación JavaScript 69
objeto Context.getLoopCount, ampliación
JavaScript 69
objeto Context.getLoopCountByID,
ampliación JavaScript 69
objeto Context.getProcessType,
ampliación JavaScript 70
objeto Context.getRequestee, ampliación
JavaScript 70
objeto Context.getService, ampliación
JavaScript 70
objeto Context.isAccountDataChanged,
ampliación JavaScript 71
objeto DirectoryObject, ampliación
JavaScript 71
objeto DirectoryObject.dn, ampliación
JavaScript 72
objeto DirectoryObject.getChanges,
ampliación JavaScript 72
objeto DirectoryObject.getProperty,
ampliación JavaScript 73
objeto DirectoryObject.getPropertyNames,
ampliación JavaScript 74
objeto DirectoryObject.name, ampliación
JavaScript 74
objeto DirectoryObject.removeProperty,
ampliación JavaScript 74
objeto EmailContext, ampliación
JavaScript 75
objeto Enrole, ampliación JavaScript 78
224
Consulta
objeto Enrole.generatePassword,
ampliación JavaScript 79
objeto Enrole.getAttributeValue,
ampliación JavaScript 79
objeto Enrole.getAttributeValues,
ampliación JavaScript 79
objeto Enrole.localize, ampliación
JavaScript 80
objeto Enrole.log, ampliación
JavaScript 80
objeto Enrole.toGeneralizedTime,
ampliación JavaScript 80
objeto Enrole.toMilliseconds, ampliación
JavaScript 81
objeto Error, ampliación JavaScript 81
objeto Error.getErrorCode, ampliación
JavaScript 82
objeto Error.getMessage, ampliación
JavaScript 82
objeto Error.setErrorCode, ampliación
JavaScript 82
objeto Error.setMessage, ampliación
JavaScript 82
objeto IdentityPolicy, ampliación
JavaScript 83
objeto IdentityPolicy.getNextCount,
ampliación JavaScript 83
objeto IdentityPolicy.userIDExists,
ampliación JavaScript 84
objeto Participant, ampliación
JavaScript 87
objeto Participant.implementation,
ampliación JavaScript 88
objeto Participant.name, ampliación
JavaScript 89
objeto Participant.type, ampliación
JavaScript 89
objeto ParticipantType, ampliación
JavaScript 89
objeto Person, ampliación JavaScript 91
objeto Person.getNewRoles, ampliación
JavaScript 92
objeto Person.getRemovedRoles,
ampliación JavaScript 92
objeto Person.getRoles, ampliación
JavaScript 91
objeto Person.isInRole, ampliación
JavaScript 93
objeto Person.removeRoles, ampliación
JavaScript 93
objeto PersonSearch, ampliación
JavaScript 93
objeto PersonSearch.searchByFilter,
ampliación JavaScript 94
objeto PostOffice, ampliación
JavaScript 95
objeto PostOffice.getAllEmailMessages,
ampliación JavaScript 95
objeto PostOffice.getEmailAddress,
ampliación JavaScript 96
objeto
PostOffice.getPersonByEmailAddress,
ampliación JavaScript 96
objeto PostOffice.getTopic, ampliación
JavaScript 96
objeto Process, ampliación JavaScript 96
getRootProcess 100
objeto Process.auditEvent, ampliación
JavaScript 99
objeto Process.comment, ampliación
JavaScript 99
objeto Process.description, ampliación
JavaScript 99
objeto Process.getActivity, ampliación
JavaScript 99
objeto Process.getParent, ampliación
JavaScript 100
objeto Process.getRootRequesterName,
ampliación JavaScript 101
objeto Process.id, ampliación
JavaScript 101
objeto Process.name, ampliación
JavaScript 101
objeto Process.parentId, ampliación
JavaScript 101
objeto Process.requesteeDN, ampliación
JavaScript 102
objeto Process.requesteeName, ampliación
JavaScript 102
objeto Process.requestorName, ampliación
JavaScript 102
objeto Process.requestorType, ampliación
JavaScript 103
objeto Process.resultDetail, ampliación
JavaScript 103
objeto Process.resultSummary, ampliación
JavaScript 103
objeto Process.setRequesteeData,
ampliación JavaScript 103
objeto Process.setResult, ampliación
JavaScript 104
objeto Process.setSubjectData, ampliación
JavaScript 104
objeto Process.started, ampliación
JavaScript 105
objeto Process.state, ampliación
JavaScript 105
objeto Process.subject, ampliación
JavaScript 105
objeto Process.type, ampliación
JavaScript 106
objeto ProcessData, ampliación
JavaScript 106
objeto ProcessData.get, ampliación
JavaScript 106
objeto ProcessData.set, ampliación
JavaScript 107
objeto Reminder, ampliación
JavaScript 108
objeto Role, ampliación JavaScript 109
objeto Role.getOwner, ampliación
JavaScript 109
objeto RoleSearch, ampliación
JavaScript 109
objeto RoleSearch.searchByName,
ampliación JavaScript 110
objeto Service, ampliación JavaScript 111
objeto ServiceSearch, ampliación
JavaScript 111
objeto ServiceSearch.searchByFilter,
ampliación JavaScript 112
objeto ServiceSearch.searchByName,
ampliación JavaScript 112
objeto
ServiceSearch.searchForClosestToPerson,
ampliación JavaScript 113
objetos de datos relevantes de
JavaScript 45
objetos JavaScript
datos relevantes 45
política de selección de servicios 119
OrganizationModelExtension,
ampliaciones JavaScript 42
P
PackagedApprovalDocument objeto,
ampliación JavaScript 84
PackagedApprovalItem objeto,
ampliación JavaScript 86
paquete de recursos de base de
datos 215
parámetros de titularidad 115
passwordrules.properties, no
configurable 127
perfil de persona 190
personalización del intervalo de
fechas 15
PersonModelExtension, ampliaciones
JavaScript 42
PersonPlacementRulesExtension,
ampliaciones JavaScript 43
platformcontext.properties, no
configurable 127
política de selección de servicios
objetos JavaScript 119
script 119
Política de suministro
Grupo 6
políticas de suministro
constante 115
expresiones regulares 118
JavaScript 116
parámetro
casos de ejemplo 114
parámetros 115
tipos null (nulo) 115
PostOfficeExtension, ampliaciones
JavaScript 43
programa de configuración del
sistema 201
Properties.properties, no
configurable 127
propiedades del sistema
actualizar 218
alimentación de identidades 217
archivo enRole.properties 181
comprensión de los archivos de
propiedades 122, 181
Configuración de servicios de correo
electrónico 201
configuración de solicitud del cliente
de aplicación 213
configuración específica de
WebSphere 181
cuenta de restauración 216
enviando mensajes de
información 192
estrategia de búsqueda y
configuración de control LDAP 188
propiedades del sistema (continuación)
propiedades suplementarias
información de agrupación de
(continuación)
conexiones LDAP 196
adicional, no configurable
información de caché 191
(continuación)
información de cifrado 198
tenant.properties 127
información de codificación de
tmsMessages.properties 127
preguntas y respuestas de
TungstenTheme.properties 127
contraseña 200
crystal.properties 134
información de conciliación 208
CustomLabels.properties 135
información de configuración del flujo
DataBaseFunctions.conf 136
de trabajo 202
enroleAuditing.properties 137
Información de planificación 194
enRoleAuthentication.properties 139
información del inquilino,
enRoleDatabase.properties 141
predeterminado 186
enRoleLDAPConnection.properties 144
información del servidor de
enRoleLogging.properties 148
aplicaciones 185
enRoleMail.properties 159
Información del servidor LDAP 186
enrolepolicies.properties 162
Información XML y DTD 196
enroleworkflow.properties 165
limpieza de base de datos 216
fesiextensions.properties 166
nombre de organización 186
helpmappings.properties 168
nombre de producto 213
reportingLabels.properties 168
oficina de correos 214
reporttabledeny.properties 168
paquete de recursos de base de
scriptframework.properties 169
datos 215
SelfServiceHelp.properties 171
perfil de persona 190
SelfServiceHomePage.properties 172
programa de configuración del
SelfServiceScreenText.properties 172
sistema 201
SelfServiceUI.properties 172
recuadro de selección de creación de
ui.properties 175
contraseñas 217
ProvisioningPolicyExtension,
regla de ciclo vital 212
ampliaciones JavaScript 43
secreto compartido oculto 212
sincronización de contraseñas 218
sincronización inversa de
contraseñas 214
RecertificationWorkflow objeto,
Valores de supervisión de la
ampliación JavaScript 107
transacción de contraseñas 195
registro, ampliaciones JavaScript 46
propiedades suplementarias 122
registro de ampliaciones de la
adhocreporting.properties 127
aplicación 3
adicional, no configurable 125
regla de ciclo vital 212
ConfigErrorMessages.properties 125
ReminderExtension, ampliaciones
ConfigLabels.properties 125
JavaScript 44
ConfigMessages.properties 125
reportingLabels.properties 168
CustomForms.properties 125
reporttabledeny.properties 168
Dsml2RootDSE.properties 125
RoleModelExtension, ampliaciones
Dsml2Schema.properties 125
JavaScript 42
enRole2ldif.properties 125
enRoleEntityHiddenAttributes 126
enRoleFonts.properties 126
enRoleHelp.properties 126
script
enRoleHiddenAttributes.properties 126
enRoleHiddenSearchAttributes.properties política
126 de selección de servicios 119
scriptframework.properties 46, 169
enroleStartup.properties 126
JavaScript
enRoleUnchangedAttributes.properties 126
configurar 47
enRoleValidateAttributes.properties 126
entitlementHiddenAttributes.propertiessecreto
126 compartido oculto 212
SelfServiceHelp.properties 171
expressHiddenAttributes.properties 126
172
HighContrastBigFontTheme.properties SelfServiceHomePage.properties
126
HighContrastTheme.properties 126 SelfServiceScreenText.properties 172
SelfServiceUI.properties 172
ibmSchemaSyntax.properties 126
iplanetSchemaSyntax.properties 127 SeparationOfDutyRuleViolation
objeto, ampliación JavaScript 110
itiminstaller.properties 127
ServiceExtension, ampliaciones
Labels.properties 127
JavaScript 44
Messages.properties 127
ServiceModelExtension, ampliaciones
passwordrules.properties 127
JavaScript 43
platformcontext.properties 127
sincronización inversa de
Properties.properties 127
contraseñas 214
subform.properties 127
R
S
Índice
225
subform.properties, no configurable
SubjectExtension, ampliaciones
JavaScript 44
127
T
tenant.properties, no configurable 127
tipo de control
Subformulario 120
escribir 122
nombres de parámetros 121
parámetros contextuales 121
tipo de control Subformulario 120
escribir 122
226
Consulta
tipo de control Subformulario
(continuación)
nombres de parámetros 121
parámetros contextuales 121
tipos null (nulo) 115
tmsMessages.properties, no
configurable 127
TungstenTheme.properties, no
configurable 127
U
ui.properties
175
V
Valores de supervisión de la transacción
de contraseñas 195
W
WorkflowExtension, ampliaciones
JavaScript 45
Descargar