Implementación de Servigistics InService > Configuraciones avanzadas > Asignación de atributos de usuarios de empresa
  
Asignación de atributos de usuarios de empresa
Los atributos de usuario definidos en el sistema empresarial se pueden utilizar para automatizar parte del proceso de aprovisionamiento del usuario. Por ejemplo, los usuarios se pueden asignar automáticamente a determinados perfiles y grupos de servicio en función del valor de estos atributos de empresa.
* 
Las comas no se pueden utilizar como delimitador en valores de atributo LDAP. Se deben utilizar puntos y coma como delimitador.
Para asignar atributos del sistema de gestión de identidades de empresa a atributos de empresa de Servigistics InService, utilice el siguiente procedimiento:
* 
En los ejemplos que se proporcionan en esta sección se utiliza un sistema LDAP de Windchill y PTC para la demostración. Edite los comandos y el código según sea necesario para el entorno.
1. Inicie sesión en la utilidad Info*Engine Administration. Seleccione el adaptador JNDI que está configurado para el LDAP en el que se incluyen los atributos adicionales que desea asignar a los usuarios.
* 
La identidad de inicio de sesión que se utiliza aquí no es necesariamente la misma que la identidad del administrador de Servigistics InService. En su lugar, el inicio de sesión se realiza en el sistema interno de LDAP y se define durante la instalación. Una configuración típica de inicio de sesión y contraseña sería cn=Manager/admin.
Para utilizar usuarios de LDAP externo, seleccione el adaptador JNDI externo que está configurado para el sistema LDAP externo. Para obtener más información, consulte Configuración de Servigistics InService para utilizar un sistema LDAP externo.
2. Navegue hasta la página de propiedades del adaptador JNDI y en la sección Propiedades adicionales, añada la siguiente propiedad:
<service.name>.windchill.mapping.user.attributes
3. Introduzca los atributos (separados mediante comas) que desee asignar como valores de esta propiedad.
4. Guarde el adaptador.
5. Navegue hasta <INICIO_InService>\SW_InS\Applications\Windchill.ear\codebase.war y abra el siguiente fichero:
LogicalAttributes.xml
6. Busque cualquier definición del nombre de clase WTUser y añada a esta sección las definiciones para los atributos que se han creado antes. Por ejemplo, para un nombre de atributo title, la definición se muestra a continuación. Asegúrese de que el valor de la etiqueta LogicalForm sea el mismo que el atributo definido arriba. Los atributos hacen distinción entre mayúsculas y minúsculas.
<Property>
<LogicalForm>title<LogicalForm>
<ExternalForm>SCA|title.key</ExternalForm>
<Property>
7. En un bundle de recursos que se soporte para la personalización, añada lo siguiente:
Todas las definiciones adicionales para cada atributo que se ha creado.
Todas las Server Calculated Attribute Functions (SCAF) correspondientes que se deben invocar para recuperar estos atributos.
Por ejemplo, navegue hasta <INICIO_InService>\SW\Applications\Windchill.ear\src\wt\org y modifique el fichero orgModelRB.rbInfo para añadir entradas similares a lo siguiente:
WCTYPE|wt.org.WTUser~SCA|title.key.value=Title
WCTYPE|wt.org.WTUser~SCA|title.key.abbreviatedDisplay=Title
WCTYPE|wt.org.WTUser~SCA|title.key.dataType=java.lang.String
WCTYPE|wt.org.WTUser~SCA|title.key.serverFunction=
com.ptc.core.foundation.org.server.impl.SACFLdapAttributeContainerFunction
WCTYPE|wt.org.WTUser~SCA|title.key.serverFunction.arg1=String{title}
* 
El valor de serverFunction debe permanecer igual al proporcionado arriba, a menos que el usuario escriba su propia función SCAF. Además, si el atributo se ha definido como booleano, key.dataType debe ser java.lang.Boolean. No cambie el tipo en key.serverFunction. Siempre debe ser del tipo Cadena.
8. En un símbolo del sistema, genere el fichero .ser correspondiente. Para ello, ejecute el siguiente comando en la ubicación de tiempo de ejecución (por ejemplo, <INICIO_InService>\SW_InS\Applications\Windchill.ear\codebase.war\wt\org:
tools bundle -Dbundle.input=<Servigistics InService_HOME>\InS_SW\SW\
Applications\Windchill.ear\
src\wt\org -Dbundle.recurse=true
9. Navegue hasta Core/src/com/ptc/sc/resource/ y añada las entradas de atributo adicionales a SCEnterpriseAttributesRB.java. Por ejemplo, para añadir el atributo "Title", añada lo siguiente:
@RBEntry("Title")
public static final String TITLE = "title";
10. Compile la clase Java con el siguiente comando:
Javac -d <WT_HOME>/codebase.war/WEB-INF/classes ./SCEnterpriseAttributesRB.java
11. Inicie sesión en Servigistics InService como administrador y navegue hasta Atributos. Seleccione Usuario y añada un nuevo atributo con un nombre similar al atributo añadido en los pasos anteriores. En este ejemplo, title. Pulse en Crear atributo para añadir el atributo bajo Usuario. La opción Asignación debe ser idéntica a la que se indica en el valor ExternalForm del fichero LogicalAttributes.xml. Por ejemplo:
Internal Name: title
Data Type: String
Display Name: Title
Description: Job Title
Mapping: SCA|title.key
12. Reinicie el servidor Servigistics InService.