A l'aide de la méthode update(DataObject) et de GroupMembershipControl, vous pouvez supprimer une ou plusieurs entités d'un ou de plusieurs groupes.
Cet exemple montre comment supprimer des affectations ou SalesPerson1 des groupes Admins et Managers.
DataObject toot = SDOHelper.createRootDataObject();
DataObject entity = SDOHelper.createEntityDataObject(root, null, DO_ENTITY);
entity.createDataObject(DO_IDENTIFIER).set(PROP_UNIQUE_NAME,
"uid=SalesPerson1,ou=CA,o=Sales,cn=users,dc=yourco,dc=com");
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);
DataObject grpMbrCtrl = SDOHelper.createControlDataObject(root, null, DO_GROUP_MEMBERSHIP_CONTROL);
// Mode de suppression d'affectation
grpMbrCtrl.setInt(PROP_MODIFY_MODE, VALUE_MODIFY_MODE_UNASSIGN);
root = service.update(root);
<?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>
<wim:identifier uniqueName="uid=SalesPerson1,ou=CA,o=Sales,cn=users,dc=yourco,dc=com"/>
<wim:groups>
<wim:identifier uniqueId="73dc5d64-be44-4db0-9697-9a69056eb699"/>
</wim:groups>
<wim:groups>
<wim:identifier uniqueName="cn=Managers,cn=groups,dc=yourco,dc=com"/>
</wim:groups>
</wim:entities>
<wim:controls xsi:type="wim:GroupMembershipControl" modifyMode="3"/>
</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>
Consultez également la rubrique Exemple de code pour la suppression d'utilisateurs d'un groupe.