A l'aide de la méthode update(DataObject) et de la commande GroupMembershipControl, vous pouvez affecter une entité à un ou plusieurs groupes.
DataObject root = SDOHelper.createRootDataObject();
DataObject entity = SDOHelper.createEntityDataObject(root, null, DO_ENTITY);
entity.createDataObject(DO_IDENTIFIER).set(PROP_UNIQUE_ID,
"79184c75-15df-4995-8587-bb763a236dc8");
DataObject grp1 = SDOHelper.createDataObject(WIM_NS_URI, DO_GROUP);
grp1.createDataObject(DO_IDENTIFIER).setString(PROP_UNIQUE_NAME,
"cn=Admins,cn=groups,dc=yourco,dc=com");
DataObject grp2 = SDOHelper.createDataObject(WIM_NS_URI, DO_GROUP);
grp2.createDataObject(DO_IDENTIFIER).setString(PROP_UNIQUE_NAME,
"cn=Managers,cn=groups,dc=yourco,dc=com");
entity.getList(DO_GROUPS).add(grp1);
entity.getList(DO_GROUPS).add(grp2);
root = service.update(root);
<?xml version="1.0" encoding="UTF-8"?>
<sdo:datagraph xmlns:sdo="commonj.sdo"
xmlns:wim="http://www.ibm.com/websphere/wim">
<wim:Root>
<wim:entities>
<wim:identifier uniqueId="e7db8c0e-d2b3-43fe-be14-1475125606f4"/>
<wim:groups>
<wim:identifier uniqueName="cn=Admins,cn=groups,dc=yourco,dc=com"/>
</wim:groups>
<wim:groups>
<wim:identifier uniqueId="6e45af37-bc3f-4260-af27-666e1ebdbda2"/>
</wim:groups>
</wim:entities>
</wim:Root>
</sdo:datagraph>
<?xml version="1.0" encoding="UTF-8"?>
<sdo:datagraph xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:sdo="commonj.sdo"
xmlns:wim="http://www.ibm.com/websphere/wim">
<wim:Root>
<wim:entities xsi:type="wim:PersonAccount">
<wim:identifier externalId="e7db8c0e-d2b3-43fe-be14-1475125606f4"
externalName="uid=SalesPerson1,ou=CA,o=Sales,cn=users,dc=yourco,dc=com"
repositoryId="LDAP1"
uniqueId="e7db8c0e-d2b3-43fe-be14-1475125606f4"
uniqueName="uid=SalesPerson1,ou=CA,o=Sales,cn=users,dc=yourco,dc=com"/>
</wim:entities>
</wim:Root>
</sdo:datagraph>
Pour un exemple de code de bout en bout, voir la rubrique Exemple de code pour l'utilisation des utilisateurs, des groupes, des membres de groupe et de l'appartenance aux groupes.