Сопоставление атрибутов предприятия пользователя
Атрибуты пользователя, определенные в системе предприятия, можно использовать для автоматизации части процесса предоставления ресурсов пользователю. Например, в соответствии со значениями этих атрибутов предприятия пользователям могут автоматически назначаться определенные профили и группы обслуживания.
|
|
Запятые не могут использоваться в качестве разделителя в значениях атрибута LDAP. Используйте точку с запятой в качестве разделителя.
|
Чтобы сопоставить атрибуты из системы управления реквизитами предприятия с атрибутами предприятия в Servigistics InService, используйте следующую процедуру:
|
|
В представленных в этом разделе примерах PTC и система Windchill LDAP используются в целях демонстрации. Измените команды и код в соответствии с требованиями вашей среды.
|
1. Войдите в утилиту Info*Engine Administration. Выберите адаптер JNDI, настроенный для LDAP и содержащий дополнительные атрибуты, которые требуется сопоставить с пользователями.
|
|
Используемые здесь для входа реквизиты могут не совпадать с реквизитами администратора Servigistics InService. Предпочтительнее вариант, когда имя пользователя относится к внутренней системе LDAP и задается во время установки. Типичной конфигурацией имени пользователя и пароля будет cn=Manager/admin.
|
2. Перейдите к странице свойств адаптера JNDI и в разделе Дополнительные свойства добавьте следующее свойство:
<service.name>.windchill.mapping.user.attributes
3. Введите атрибуты (разделяемые запятой), которые вы хотите сопоставить как значения для этого свойства.
4. Сохраните адаптер.
5. Перейдите на страницу <InService_HOME>\InS_SW\SW\Applications\Windchill.ear\codebase.war и откройте следующий файл:
LogicalAttributes.xml
6. Найдите любое определение наименования класса WTUser и добавьте определения для атрибутов, которые были созданы выше в этом разделе. Например, ниже показано определение для наименования атрибута title. Удостоверьтесь, что значение в теге LogicalForm соответствует атрибуту, который был определен выше. При определении атрибутов учитывается регистр.
<Property>
<LogicalForm>title<LogicalForm>
<ExternalForm>SCA|title.key</ExternalForm>
<Property>
7. В поддерживающем настройку наборе ресурсов добавьте следующее:
◦ Все дополнительные определения для каждого созданного атрибута
◦ Все соответствующие Server Calculated Attribute Functions (SCAF), которые должны вызываться для извлечения этих атрибутов.
Например, перейдите в папку <Корневая_папка_InService_HOME>\src\wt\org и измените файл orgModelRB.rbInfo для добавления записей, подобных следующим:
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}
| Значение serverFunction должно соответствовать представленному выше, если только не была написана собственная функция SCAF. Кроме того, если атрибут был определен как логический, параметр key.dataType должен иметь значение java.lang.Boolean. Не изменяйте тип в key.serverFunction. Всегда следует использовать тип Строка. |
8. Создайте в командной строке соответствующий файл .ser, выполнив следующую команду в расположении времени выполнения (например, <Корневая_папка_InService_HOME>\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. Перейдите в папку Core/src/com/ptc/sc/resource/ и добавьте дополнительные записи атрибутов в файл SCEnterpriseAttributesRB.java. Например, чтобы добавить атрибут "Title", добавьте следующее:
@RBEntry("Title")
public static final String TITLE = "title";
10. Скомпилируйте Java-класс с помощью следующей команды:
Javac -d <WT_HOME>/codebase.war/WEB-INF/classes ./SCEnterpriseAttributesRB.java
11. Войдите в систему Servigistics InService как администратор и перейдите в раздел Атрибуты. Выберите Пользователь и добавьте новый атрибут с наименованием, аналогичным наименованию атрибута, добавленного на приведенных выше шагах. В этом примере: title. Щелкните Создать атрибут, чтобы добавить атрибут в разделе Пользователь. Сопоставление должно быть точно таким же, как значение ExternalForm в файле LogicalAttributes.xml. Например:
Internal Name: title
Data Type: String
Display Name: Title
Description: Job Title
Mapping: SCA|title.key
12. Перезапустите сервер Servigistics InService.