diff --git a/product/ERP5Type/Base.py b/product/ERP5Type/Base.py
index 4f93cd40cf1a62f5132257f5ade0a2e4cbdd3981..4f4d0783ff5ef1452c525cba097e991917685aa8 100644
--- a/product/ERP5Type/Base.py
+++ b/product/ERP5Type/Base.py
@@ -3100,13 +3100,15 @@ class Base( CopyContainer,
 
   security.declareProtected(Permissions.ManagePortal,
                             'updateRoleMappingsFor')
-  def updateRoleMappingsFor(self, wf_id,**kw):
+  def updateRoleMappingsFor(self, wf_id, **kw):
     """
     Update security policy according to workflow settings given by wf_id
     """
     workflow = self.portal_workflow.getWorkflowById(wf_id)
     if workflow is not None:
-      workflow.updateRoleMappingsFor(self)
+      changed = workflow.updateRoleMappingsFor(self)
+      if changed:
+        self.reindexObjectSecurity()
 
   # Template Management
   security.declareProtected(Permissions.View, 'getDocumentTemplateList')