Workflow audit
The audit service logs workflow information in the activity event topic (default location: openidm/audit/activity.audit.json
).
Example workflow audit events using the provisioning-with-workflow sample:
Each step shows the action performed along with the resulting audit data.
-
user1
completes the Contractor Onboarding Form.{ "_id": "f24ac83b-200c-449d-b017-d12b9c6c9091-3871", "timestamp": "2020-05-06T17:39:52.021Z", "eventName": "workflow-create_process", "transactionId": "f24ac83b-200c-449d-b017-d12b9c6c9091-3865", "userId": "user1", "runAs": "user1", "objectId": "workflow/processinstance/6", "operation": "CREATE", "changedFields": [], "revision": null, "status": "SUCCESS", "message": "Process created. processDefinitionId = contractorOnboarding:1:5, processDefinitionKey = null, businessKey = null", "passwordChanged": false }
-
manager1
self-assigns the task.{ "_id": "f24ac83b-200c-449d-b017-d12b9c6c9091-5748", "timestamp": "2020-05-06T17:43:18.058Z", "eventName": "workflow-update_task", "transactionId": "f24ac83b-200c-449d-b017-d12b9c6c9091-5744", "userId": "manager1", "runAs": "manager1", "objectId": "workflow/taskinstance/36", "operation": "UPDATE", "changedFields": [ "/assignee" ], "revision": null, "status": "SUCCESS", "message": "Task updated", "passwordChanged": false }
"changedFields":["/assignee"]
only displays whenconf/audit.json
contains the property"watchedFields" : [ "assignee" ]
. For a complete list of fields that can be watched in this situation, see the API Descriptor forUPDATE workflow/taskinstance/
. -
manager1
completes the task. Notice thattransactionId
is correlated to all managed/user, and other, operations.{ "_id": "f24ac83b-200c-449d-b017-d12b9c6c9091-5868", "timestamp": "2020-05-06T17:43:22.138Z", "eventName": "activity", "transactionId": "f24ac83b-200c-449d-b017-d12b9c6c9091-5838", "userId": "user1", "runAs": "user1", "objectId": "managed/user/d736487d-c146-4a0e-b677-ebfd6805b1d2", "operation": "CREATE", "changedFields": [], "revision": "000000001edd9dc2", "status": "SUCCESS", "message": "create", "passwordChanged": false } { "_id": "f24ac83b-200c-449d-b017-d12b9c6c9091-5871", "timestamp": "2020-05-06T17:43:22.141Z", "eventName": "activity", "transactionId": "f24ac83b-200c-449d-b017-d12b9c6c9091-5838", "userId": "user1", "runAs": "user1", "objectId": "internal/usermeta/cd237cca-913e-481e-9282-ba16c84b5131", "operation": "CREATE", "changedFields": [], "revision": "0000000030b45c3e", "status": "SUCCESS", "message": "create", "passwordChanged": false } { "_id": "f24ac83b-200c-449d-b017-d12b9c6c9091-5876", "timestamp": "2020-05-06T17:43:22.145Z", "eventName": "relationship_created", "transactionId": "f24ac83b-200c-449d-b017-d12b9c6c9091-5838", "userId": "user1", "runAs": "user1", "objectId": "managed/user/d736487d-c146-4a0e-b677-ebfd6805b1d2/authzRoles/ee5bbbce-a020-45db-ab41-66c80d84d8be", "operation": "CREATE", "changedFields": [], "revision": "00000000fe6da3a7", "status": "SUCCESS", "message": "Relationship originating from managed/user/d736487d-c146-4a0e-b677-ebfd6805b1d2 via the relationship field authzRoles and referencing internal/role/openidm-authorized was created.", "passwordChanged": false } { "_id": "f24ac83b-200c-449d-b017-d12b9c6c9091-5879", "timestamp": "2020-05-06T17:43:22.147Z", "eventName": "relationship_created", "transactionId": "f24ac83b-200c-449d-b017-d12b9c6c9091-5838", "userId": "user1", "runAs": "user1", "objectId": "managed/user/d736487d-c146-4a0e-b677-ebfd6805b1d2/manager/b58e5695-9e43-4e76-b89c-e5d69d3bf52d", "operation": "CREATE", "changedFields": [], "revision": "000000008dcca1b6", "status": "SUCCESS", "message": "Relationship originating from managed/user/d736487d-c146-4a0e-b677-ebfd6805b1d2 via the relationship field manager and referencing managed/user/038e65de-95ce-4180-94d3-4ea64bf25c6b was created.", "passwordChanged": false } { "_id": "f24ac83b-200c-449d-b017-d12b9c6c9091-5882", "timestamp": "2020-05-06T17:43:22.149Z", "eventName": "relationship_created", "transactionId": "f24ac83b-200c-449d-b017-d12b9c6c9091-5838", "userId": "user1", "runAs": "user1", "objectId": "managed/user/d736487d-c146-4a0e-b677-ebfd6805b1d2/_meta/d9299603-b768-44b6-a4c9-9b6441ca212e", "operation": "CREATE", "changedFields": [], "revision": "0000000027b29fb4", "status": "SUCCESS", "message": "Relationship originating from managed/user/d736487d-c146-4a0e-b677-ebfd6805b1d2 via the relationship field _meta and referencing internal/usermeta/cd237cca-913e-481e-9282-ba16c84b5131 was created.", "passwordChanged": false } { "_id": "f24ac83b-200c-449d-b017-d12b9c6c9091-5908", "timestamp": "2020-05-06T17:43:22.778Z", "eventName": "activity", "transactionId": "f24ac83b-200c-449d-b017-d12b9c6c9091-5838", "userId": "user1", "runAs": "user1", "objectId": "internal/notification/12aa1698-bb1e-42c6-a92d-2e959c217ad0", "operation": "CREATE", "changedFields": [], "revision": "000000004d025d75", "status": "SUCCESS", "message": "create", "passwordChanged": false } { "_id": "f24ac83b-200c-449d-b017-d12b9c6c9091-5911", "timestamp": "2020-05-06T17:43:22.781Z", "eventName": "relationship_created", "transactionId": "f24ac83b-200c-449d-b017-d12b9c6c9091-5838", "userId": "user1", "runAs": "user1", "objectId": "internal/notification/12aa1698-bb1e-42c6-a92d-2e959c217ad0/target/eec80d30-be1e-4c5d-9873-b4395373c833", "operation": "CREATE", "changedFields": [], "revision": "00000000b4c7a701", "status": "SUCCESS", "message": "Relationship originating from internal/notification/12aa1698-bb1e-42c6-a92d-2e959c217ad0 via the relationship field target and referencing managed/user/038e65de-95ce-4180-94d3-4ea64bf25c6b was created.", "passwordChanged": false } { "_id": "f24ac83b-200c-449d-b017-d12b9c6c9091-5920", "timestamp": "2020-05-06T17:43:22.791Z", "eventName": "activity", "transactionId": "f24ac83b-200c-449d-b017-d12b9c6c9091-5838", "userId": "user1", "runAs": "user1", "objectId": "internal/notification/eec030e5-e520-4cf1-99c2-a9bbecb0627b", "operation": "CREATE", "changedFields": [], "revision": "0000000033465ada", "status": "SUCCESS", "message": "create", "passwordChanged": false } { "_id": "f24ac83b-200c-449d-b017-d12b9c6c9091-5923", "timestamp": "2020-05-06T17:43:22.794Z", "eventName": "relationship_created", "transactionId": "f24ac83b-200c-449d-b017-d12b9c6c9091-5838", "userId": "user1", "runAs": "user1", "objectId": "internal/notification/eec030e5-e520-4cf1-99c2-a9bbecb0627b/target/11eb13f8-991f-45ea-95dc-e8f0fd0b95c3", "operation": "CREATE", "changedFields": [], "revision": "000000005134a80d", "status": "SUCCESS", "message": "Relationship originating from internal/notification/eec030e5-e520-4cf1-99c2-a9bbecb0627b via the relationship field target and referencing managed/user/d736487d-c146-4a0e-b677-ebfd6805b1d2 was created.", "passwordChanged": false }
-
The audit service logs the
workflow-complete_task
event.{ "_id": "f24ac83b-200c-449d-b017-d12b9c6c9091-5926", "timestamp": "2020-05-06T17:43:22.827Z", "eventName": "workflow-complete_task", "transactionId": "f24ac83b-200c-449d-b017-d12b9c6c9091-5838", "userId": "manager1", "runAs": "manager1", "objectId": "workflow/taskinstance/36", "operation": "complete", "changedFields": [], "revision": null, "status": "SUCCESS", "message": "Task completed", "passwordChanged": false }