Mappatura degli attributi aziendali per l'utente
Gli attributi utente definiti nel sistema aziendale possono essere utilizzati per automatizzare parte del processo di provisioning utente. Ad esempio, è possibile assegnare automaticamente gli utenti a determinati profili e gruppi servizi di assistenza in base al valore di questi attributi aziendali.
|
Le virgole non possono essere utilizzate come delimitatori nei valori di attributo LDAP. Utilizzare il punto e virgola come delimitatore.
|
Per mappare gli attributi dal sistema aziendale di gestione delle identità agli attributi aziendali in Servigistics InService, attenersi alla procedura indicata di seguito.
|
Gli esempi riportati in questa sezione utilizzano un sistema LDAP Windchill e PTC a scopo dimostrativo. Modificare i comandi e il codice in base alle esigenze dell'ambiente in uso.
|
1. Accedere all'utilità Info*Engine Administration. Selezionare l'adattatore JNDI configurato per il sistema LDAP contenente gli attributi aggiuntivi che si desidera mappare agli utenti.
|
L'identità di accesso utilizzata qui non è necessariamente la stessa identità dell'amministratore di Servigistics InService. L'accesso avviene invece al sistema LDAP interno e viene impostato durante l'installazione. Una configurazione tipica di accesso e password è cn=Manager/admin.
|
2. Passare alla pagina delle proprietà dell'adattatore JNDI e nella sezione Altre proprietà aggiungere la seguente proprietà:
<service.name>.windchill.mapping.user.attributes
3. Immettere gli attributi (separati da virgola) che si desidera mappare come valori per questa proprietà.
4. Salvare l'adattatore.
5. Passare a <HOME_InService>\InS_SW\SW\Applications\Windchill.ear\codebase.war e aprire il file indicato di seguito.
LogicalAttributes.xml
6. Cercare qualsiasi definizione del nome di classe WTUser e aggiungere le definizioni degli attributi precedentemente creati a questa sezione. Di seguito è riportata ad esempio la definizione per un nome di attributo title. Assicurarsi che il valore nel tag LogicalForm sia uguale all'attributo precedentemente definito. Per gli attributi viene fatta distinzione tra maiuscole e minuscole.
<Property>
<LogicalForm>title<LogicalForm>
<ExternalForm>SCA|title.key</ExternalForm>
<Property>
7. In un resource bundle supportato per la personalizzazione aggiungere quanto segue:
◦ Tutte le definizioni aggiuntive di ogni attributo creato
◦ Tutte le funzioni Server Calculated Attribute Functions (SCAF) corrispondenti che devono essere richiamate per recuperare questi attributi
Ad esempio, passare a <HOME_InService>\SW\Applications\Windchill.ear\src\wt\org e modificare il file orgModelRB.rbInfo per aggiungere voci simili a quelle riportate di seguito.
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}
| Il valore di serverFunction deve essere uguale a quello precedentemente specificato, a meno che non si scriva una funzione SCAF personalizzata. Inoltre, se l'attributo è stato definito come booleano, key.dataType deve essere java.lang.Boolean. Non modificare il tipo in key.serverFunction, che deve essere sempre String. |
8. Da un prompt dei comandi, generare il file .ser corrispondente eseguendo il comando riportato di seguito nella posizione di runtime, ad esempio <HOME_InService>\InS_SW\SW\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. Passare a Core/src/com/ptc/sc/resource/ e aggiungere le altre voci di attributi a SCEnterpriseAttributesRB.java. Ad esempio, per aggiungere l'attributo "Titolo" aggiungere la stringa riportata di seguito.
@RBEntry("Title")
public static final String TITLE = "title";
10. Completare la classe Java utilizzando il seguente comando:
Javac -d <WT_HOME>/codebase.war/WEB-INF/classes ./SCEnterpriseAttributesRB.java
11. Accedere a Servigistics InService in qualità di amministratore e passare ad Attributi. Selezionare Utente e aggiunge un nuovo attributo con un nome simile all'attributo aggiunto nei passi precedenti. In questo esempio, title. Fare clic su Crea attributo per aggiungere l'attributo sotto Utente. La Mappatura deve corrispondere esattamente come nel valore ExternalForm nel file LogicalAttributes.xml. Ad esempio:
Internal Name: title
Data Type: String
Display Name: Title
Description: Job Title
Mapping: SCA|title.key
12. Riavviare il server Servigistics InService.