Add VMM attributes
The Virtual Member Manager (VMM) is configured with a default attribute schema that might not be compatible with the LDAP server. Add attributes to extend the VMM attribute schema and then map them between HCL WebSphere Portal and the user registry. We can add multiple attributes at one time by creating an XML file that includes the properties and attributes for each property. The XML file is referred to as a deployment file.
To add attributes:
- Create the XML file. The following sample is an XML deployment file used to add three properties.
<wplc-add-property> <resource propertyName="attribute_name_1" dataType="Int" entityTypes="Group" multiValued="true" /> <resource propertyName="attribute_name_2" dataType="String" entityTypes="PersonAccount" multiValued="true" /> <resource propertyName="attribute_name_3" dataType="Base64Binary" entityTypes="Group,PersonAccount" multiValued="false" /> </wplc-add-property>- In a stand-alone environment, ensure that the WebSphere_Portal server is running.
In a clustered environment, stop all application servers on the system, including the WebSphere_Portal server. Then, start the node agent and deployment manager servers.
- Install the enterprise archive (.ear) file on WebSphere Application Server:
Environment Task Stand-alone environment cd wp_profile_root/ConfigEngine
./ConfigEngine.sh wp-la-install-ear -DWasPassword=passwordClustered environment cd wp_profile_root/ConfigEngine
./ConfigEngine.sh wp-la-install-ear -DWasPassword=dmgr_password -DServerName=dmgr_server_name -DNodeName=node
The default value for dmgr_server_name is dmgr. We can find the dmgr_server_name value in the WebSphere Integrated Solutions Console. Go to...
System administrator > Deployment Manager > Configuration tab > General Properties > Name
node is the name of the node where the deployment manager is located. We can find the node value in the WebSphere Integrated Solutions Console. Go to...
System administrator > Deployment Manager > Runtime tab > General Properties > Node Name
- Stop and restart the appropriate servers to propagate the changes. For instructions, go to Start and stop servers, deployment managers, and node agents.
- Use a text editor to open the wkplc.properties file in the wp_profile_root/ConfigEngine/properties directory.
- Find the VMM Property Extension Properties heading. We can either add a single attribute or multiple attributes.
- To add a single attribute, update the following properties with information about the property to add.
- la.providerURL
- Description
- The remote endpoint where the portal server or deployment manager installation is available. Check the value for hostname:port. The port points to the BOOTSTRAP_ADDRESS port of either the WebSphere_Portal server or the deployment manager. The deployment manager is used in a clustered environment.
- la.propertyName
- Description
- The name of the property that we are adding.
- la.entityTypes
- Description
- This value is a list of entity types that the new property is applicable to. To enter multiple values, use a comma to separate each value, for example "value1,value2".
- Valid values
- Group
- PersonAccount
- la.dataType
- Description
Defines the type of data stored in the attribute that is being created. If this attribute is mapped to LDAP, this data type must match the corresponding attribute type in LDAP. Consult the LDAP administrator if we are unsure of the data types in LDAP. If this attribute is stored in the VMM property extension database, the data type must match the corresponding attribute type as defined in VMM's database.
While it is possible to add attributes of different types to VMM, the Registration/Edit My Profile Portlet is only capable of working with attributes of type String and Int. If we need UI support for other types, you would need our own custom form or portlet that can process those types. Portal does not have a UI that reads or updates group attributes. The one exception is the UI that is used to create a group.
- Valid values
- String
- Int
- DateTime
- Base64Binary
- IdentifierType
- Boolean
- Long
- Double
- Short
- la.multiValued
- Description
- Defines if the property can contain multiple values or not.
- To add multiple attributes, update the following properties:
- la.providerURL
- Description
- The remote endpoint where the portal server or deployment manager installation is available. Check the value for hostname:port. The port points to the BOOTSTRAP_ADDRESS port of either the WebSphere_Portal server or the deployment manager. The deployment manager is used in a clustered environment.
- la.deployfile
- Description
- Use this property when we want to create multiple properties by using a single ConfigEngine operation. Specify the path and name of the XML file that contains the properties that we want to add. We can specify a path that is relative to the ConfigEngine or the fully qualified file system path. If we specify a value for this property, do not specify a value for la.propertyName, la.dataType, or la.Multivalued. The following is a sample of an XML deploy file used to add three properties.
<wplc-add-property> <resource propertyName="attribute_name_1" dataType="Int" entityTypes="Group" multiValued="true" /> <resource propertyName="attribute_name_2" dataType="String" entityTypes="PersonAccount" multiValued="true" /> <resource propertyName="attribute_name_3" dataType="Base64Binary" entityTypes="Group,PersonAccount" multiValued="false" /> </wplc-add-property>The resource tag includes attributes that are specific for the property: propertyName, dataType, entityType, and multiValued.
- Save changes to the wkplc.properties file.
- Run the wp-add-property task to add a property that maps to an attribute in the user registry. If we are defining a new property to store in the property extension database, run wp-add-la-property.
Note: This task calls an EJB that must authenticate against WebSphere Application Server. Depending on the configuration in the sas.client.props file, we might receive a prompt that asks for the user ID and password. Enter the WebSphere Application Server user ID and password.
./ConfigEngine.sh wp-add-property -DWasPassword=password
- Stop and restart the appropriate servers to propagate the changes.