我需要跟踪用户在Alfresco中执行的每个操作。
我想写一个Spring拦截器,它有“围绕”的建议,当用户在登录门户网站后执行任何操作时,应该跟踪它。
用户执行的操作,该操作的参数应该可用于自定义拦截器。
如果有人知道如何实施这种情况,请帮助我。
答案 0 :(得分:1)
可能已经很晚了,但仍然是:)
审核支持开箱即用。但据我所知,默认情况下它仅用于记录管理。对于共享操作,您需要执行几个操作:
extenstion/audit/alfresco-audit-node.xml
在节点上注册操作的应用程序,例如让我们采取读取操作,因此这个xml的内容将是这样的:
<Audit
xmlns="http://www.alfresco.org/repo/audit/model/3.2"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.alfresco.org/repo/audit/model/3.2 alfresco-audit-3.2.xsd"
>
<DataExtractors>
<DataExtractor name="simpleValue" registeredName="auditModel.extractor.simpleValue"/>
</DataExtractors>
<DataGenerators>
<DataGenerator name="personFullName" registeredName="auditModel.generator.personFullName"/>
</DataGenerators>
<PathMappings>
<PathMap source="/alfresco-api/post/ContentService/getReader" target="/node/read"/>
</PathMappings>
<Application name="Node" key="node">
<AuditPath key="read">
<AuditPath key="no-error">
<RecordValue key="nodeRef" dataExtractor="simpleValue" dataSource="/node/read/args/nodeRef"/>
<RecordValue key="propertyQName" dataExtractor="simpleValue" dataSource="/node/read/args/propertyQName"/>
<RecordValue key="result" dataExtractor="simpleValue" dataSource="/node/read/result"/>
<GenerateValue key="personFullName" dataGenerator="personFullName"/>
<GenerateValue key="currentUser" dataGenerator="currentUser"/>
<GenerateValue key="systemTime" dataGenerator="systemTime"/>
</AuditPath>
<AuditPath key="error">
<RecordValue key="nodeRef" dataExtractor="simpleValue" dataSource="/node/read/args/nodeRef"/>
<RecordValue key="propertyQName" dataExtractor="simpleValue" dataSource="/node/read/args/propertyQName"/>
<RecordValue key="error" dataExtractor="simpleValue" dataSource="/node/read/error"/>
<GenerateValue key="personFullName" dataGenerator="personFullName"/>
<GenerateValue key="currentUser" dataGenerator="currentUser"/>
<GenerateValue key="systemTime" dataGenerator="systemTime"/>
</AuditPath>
</AuditPath>
</Application>
</Audit>
通过调用webscript启用应用程序,您可以在此处查看:/alfresco/service/api/audit/control
/alfresco/service/api/audit/query/Node?verbose=true&limit=10&user=admin