It can be unwieldy to display many admin roles using the MultiSelect component (either the applet or HTML version). Identity Manager provides a more scalable way of displaying and managing admin roles: the objectSelector field template.
The Scalable Selection Library (in sample/formlib.xml) includes an example of using an objectSelector field template to search for admin role names that a user can select.
<Field name=’scalableWaveset.adminRoles’> <FieldRef name=’objectSelector’> <Property name=’selectorTitle’ value=’_FM_ADMIN_ROLES’/> <Property name=’selectorFieldName’ value=’waveset.adminRoles’/> <Property name=’selectorObjectType’ value=’AdminRole’/> <Property name=’selectorMultiValued’ value=’true’/> <Property name=’selectorAllowManualEntry’ value=’true’/> <Property name=’selectorFixedConditions’> <appendAll> <new class=’com.waveset.object.AttributeCondition’> <s>hidden</s> <s>notEquals</s> <s>true</s> </new> <map> <s>onlyAssignedToCurrentSubject</s> <Boolean>true</Boolean> </map> </appendAll> </Property> <Property name=’selectorFixedInclusions’> <appendAll> <ref>waveset.original.adminRoles</ref> </appendAll> </Property> </FieldRef> </Field> |
From the Identity Manager IDE, open the Administrator Library UserForm object.
Add the following code to this form:
<Include> <ObjectRef type=’UserForm’ name=’Scalable Selection Library’/> </Include> |
Select the accounts[Lighthouse].adminRoles field within the AdministratorFields field.
Replace the entire accounts[Lighthouse].adminRoles with the following reference:
<FieldRef name=’scalableWaveset.adminRoles’/>
Save the object.
When you subsequently edit a user and select the Security tab, Identity Manager displays the customized form. Clicking... opens the Selector component and exposes a search field. Use this field to search for admin roles that begin with a text string and set the value of the field to one or more values.
To restore the form, import $WSHOME/sample/formlib.xml from Configure > Import Exchange File.
See the Scalable Selection Library in sample/formlib.xml for other examples of using the objectSelector template to manage resources and roles in environments with many objects.