Merge from head.

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3314 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Britt Park
2006-07-13 07:06:30 +00:00
parent b601821d98
commit fae76d7896
41 changed files with 1354 additions and 147 deletions

View File

@@ -0,0 +1,181 @@
<?xml version='1.0' encoding='UTF-8'?>
<!-- Default Audit Configuration -->
<Audit xmlns="http://www.alfresco.org/model/audit/1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" enabled="true" auditInternal="false" mode="all">
<!-- -->
<!-- Global options -->
<!-- -->
<!-- Do not record any additional information -->
<RecordOptions>
<recordPath>false</recordPath>
<recordFilters>false</recordFilters>
<recordSerializedReturnValue>false</recordSerializedReturnValue>
<recordSerializedExceptions>false</recordSerializedExceptions>
<recordSerializedMethodArguments>false</recordSerializedMethodArguments>
<recordSerializedKeyPropertiesBeforeInvocation>false</recordSerializedKeyPropertiesBeforeInvocation>
<recordSerializedKeyPropertiesAferInvocation>false</recordSerializedKeyPropertiesAferInvocation>
</RecordOptions>
<!-- -->
<!-- Specific service options -->
<!-- -->
<Service name="ServiceRegistry" mode="none" enabled="false"/>
<!-- The action service -->
<Service name="ActionService" mode="none">
<Method name="executeAction" mode="all" auditInternal="true"/>
<Method name="saveAction" mode="all"/>
<Method name="removeAction" mode="all"/>
<Method name="removeAllActions" mode="all"/>
</Service>
<!-- The COCI Service -->
<Service name="CheckOutCheckInService"/>
<!-- The DictionaryService -->
<!-- There are no audtiable methods in the data dictionary service -->
<Service name="DictionaryService" mode="none" enabled="false"/>
<!-- The Lock Service -->
<Service name="LockService"/>
<!-- The File/Folder Service -->
<Service name="FileFolderService" mode="none">
<Method name="rename" mode="all"/>
<Method name="move" mode="all"/>
<Method name="copy" mode="all"/>
<Method name="create" mode="all"/>
<Method name="delete" mode="all"/>
<Method name="makeFolders" mode="all"/>
<Method name="getWriter" mode="all"/>
</Service>
<Service name="ContentService" mode="none">
<Method name="getWriter" mode="all"/>
</Service>
<Service name="CopyService" mode="none">
<Method name="copy" mode="all"/>
</Service>
<!-- The MimetypeService -->
<!-- There are no audtiable methods in the mime type service -->
<Service name="MimetypeService" mode="none" enabled="false"/>
<Service name="NodeService" mode="none">
<Method name="createStore" mode="all"/>
<Method name="createNode" mode="all"/>
<Method name="moveNode" mode="all"/>
<Method name="setChildAssociationIndex" mode="all"/>
<Method name="setType" mode="all"/>
<Method name="addAspect" mode="all"/>
<Method name="removeAspect" mode="all"/>
<Method name="deleteNode" mode="all"/>
<Method name="addChild" mode="all"/>
<Method name="removeChild" mode="all"/>
<Method name="setProperties" mode="all"/>
<Method name="setProperty" mode="all"/>
<Method name="createAssociation" mode="all"/>
<Method name="removeAssociation" mode="all"/>
<Method name="restoreNode" mode="all"/>
</Service>
<Service name="ScriptService"/>
<Service name="TemplateService"/>
<Service name="RuleService" mode="none">
<Method name="disableRules" mode="all"/>
<Method name="enableRules" mode="all"/>
<Method name="disableRule" mode="all"/>
<Method name="enableRule" mode="all"/>
<Method name="createRule" mode="all"/>
<Method name="saveRule" mode="all"/>
<Method name="removeRule" mode="all"/>
<Method name="removeAllRules" mode="all"/>
</Service>
<Service name="CategoryService" mode="none">
<Method name="createClassifiction" mode="all"/>
<Method name="createRootCategory" mode="all"/>
<Method name="createCategory" mode="all"/>
<Method name="deleteClassification" mode="all"/>
<Method name="deleteCategory" mode="all"/>
</Service>
<Service name="SearchService" mode="none" enabled="false"/>
<Service name="AuthenticationService" mode="none">
<Method name="createAuthentication" mode="all"/>
<Method name="updateAuthentication" mode="all"/>
<Method name="setAuthentication" mode="all"/>
<Method name="deleteAuthentication" mode="all"/>
<Method name="setAuthenticationEnabled" mode="all"/>
<Method name="authenticate" mode="all"/>
<Method name="authenticateAsGuest" mode="all"/>
<Method name="authenticationExists" mode="all"/>
<Method name="invalidateUserSession" mode="all"/>
<Method name="invalidateTicket" mode="all"/>
<Method name="validate" mode="all"/>
<Method name="clearCurrentSecurityContext" mode="all"/>
</Service>
<Service name="AuthorityService" mode="none">
<Method name="createAuthority" mode="all"/>
<Method name="addAuthority" mode="all"/>
<Method name="removeAuthority" mode="all"/>
<Method name="deleteAuthority" mode="all"/>
</Service>
<Service name="OwnableService" mode="none">
<Method name="setOwner" mode="all"/>
<Method name="takeOwnership" mode="all"/>
</Service>
<Service name="PermissionService" mode="none">
<Method name="deletePermissions" mode="all"/>
<Method name="clearPermission" mode="all"/>
<Method name="deletePermission" mode="all"/>
<Method name="setPermission" mode="all"/>
<Method name="setInheritParentPermissions" mode="all"/>
</Service>
<Service name="PersonService" mode="none">
<Method name="setCreateMissingPeople" mode="all"/>
<Method name="setPersonProperties" mode="all"/>
<Method name="createPerson" mode="all"/>
<Method name="deletePerson" mode="all"/>
</Service>
<Service name="VersionService" mode="none">
<Method name="createVersion" mode="all"/>
<Method name="revert" mode="all"/>
<Method name="restore" mode="all"/>
<Method name="deleteVersionHistory" mode="all"/>
</Service>
<Service name="ExporterService"/>
<Service name="ImporterService"/>
<Service name="RepositoryExporterService"/>
<Service name="DescriptorService" mode="none" enabled="false"/>
<Service name="LicenseService" mode="none" enabled="false"/>
<Service name="NamespaceService"/>
<Service name="TransactionService" mode="none" enabled="false"/>
</Audit>

View File

@@ -0,0 +1,204 @@
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema targetNamespace="http://www.alfresco.org/model/audit/1.0" elementFormDefault="qualified" xml:lang="EN" xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:a="http://www.alfresco.org/model/audit/1.0">
<xs:annotation>
<xs:documentation xml:lang="EN"> Schema to define audit configuration. </xs:documentation>
</xs:annotation>
<!-- Root element is the Audit element -->
<xs:element name="Audit" type="a:Audit"/>
<!-- -->
<!-- Type definitions -->
<!-- -->
<!-- Options for what to record -->
<!-- By default these are not recorded. Behaviour is "inherited" from containing elements for unspecified entries -->
<xs:complexType name="RecordOptions">
<xs:sequence>
<xs:element name="recordPath" type="xs:boolean" minOccurs="0" maxOccurs="1" />
<xs:element name="recordFilters" type="xs:boolean" minOccurs="0" maxOccurs="1" />
<xs:element name="recordSerializedReturnValue" type="xs:boolean" minOccurs="0" maxOccurs="1" />
<xs:element name="recordSerializedExceptions" type="xs:boolean" minOccurs="0" maxOccurs="1" />
<xs:element name="recordSerializedMethodArguments" type="xs:boolean" minOccurs="0" maxOccurs="1" />
<xs:element name="recordSerializedKeyPropertiesBeforeInvocation" type="xs:boolean" minOccurs="0" maxOccurs="1" />
<xs:element name="recordSerializedKeyPropertiesAferInvocation" type="xs:boolean" minOccurs="0" maxOccurs="1" />
</xs:sequence>
</xs:complexType>
<!-- Abstract Filter entry -->
<xs:complexType name="Filter" abstract="true"/>
<!-- Simple Filter entry -->
<!--
Supports:
Simple path
Type (and sub-types)
Aspect (and sub-aspects)
NodeRef
All (do not filter)
XPATH simple xpath expressions in the context of the key node
A simple value (intended for use with non node arguments)
-->
<xs:simpleType name="KeyFilterType">
<xs:restriction base="xs:string">
<xs:enumeration value="path"/>
<xs:enumeration value="type"/>
<xs:enumeration value="aspect"/>
<xs:enumeration value="id"/>
<xs:enumeration value="all"/>
<xs:enumeration value="xpath"/>
<xs:enumeration value="value"/>
<xs:enumeration value="protocol"/>
<xs:enumeration value="store"/>
</xs:restriction>
</xs:simpleType>
<!-- Audit Mode -->
<xs:simpleType name="AuditMode">
<xs:restriction base="xs:string">
<xs:enumeration value="all"/>
<xs:enumeration value="success"/>
<xs:enumeration value="fail"/>
<xs:enumeration value="none"/>
</xs:restriction>
</xs:simpleType>
<!-- Defintion for how to combine elements in a compound filter -->
<xs:simpleType name="FilterSetMode">
<xs:restriction base="xs:string">
<xs:enumeration value="and"/>
<xs:enumeration value="or"/>
</xs:restriction>
</xs:simpleType>
<!-- Define a set of filters -->
<xs:complexType name="FilterSet">
<xs:complexContent>
<xs:extension base="a:Filter">
<xs:sequence>
<xs:element name="Filter" type="a:Filter" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="mode" type="a:FilterSetMode" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- A filter that applies to the key node -->
<xs:complexType name="KeyFilter">
<xs:complexContent>
<xs:extension base="a:Filter">
<xs:sequence>
<xs:element name="Expression" type="xs:string"/>
</xs:sequence>
<xs:attribute name="type" type="a:KeyFilterType" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- A filter that applies to a named parameter -->
<xs:complexType name="ParameterFilter">
<xs:complexContent>
<xs:extension base="a:KeyFilter">
<xs:sequence>
<xs:element name="ParameterName" type="xs:string"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- An abstract audit entry -->
<xs:complexType name="AuditEntry" abstract="true">
<xs:sequence>
<xs:element name="RecordOptions" type="a:RecordOptions" minOccurs="0" maxOccurs="1"/>
<xs:element name="Filter" type="a:Filter" minOccurs="0" maxOccurs="1" />
</xs:sequence>
<!-- The inner most specification over-rides -->
<xs:attribute name="mode" type="a:AuditMode" />
<!-- The outer most specification set this -->
<xs:attribute name="enabled" type="xs:boolean" />
<!-- The inner most specification over-rides -->
<xs:attribute name="auditInternal" type="xs:boolean" />
</xs:complexType>
<!-- Force default behaviour to be specified on the root Audit node -->
<xs:complexType name="MandatoryAuditEntry" abstract="true">
<xs:complexContent>
<xs:restriction base="a:AuditEntry">
<xs:sequence>
<xs:element name="RecordOptions" type="a:RecordOptions" minOccurs="0" maxOccurs="1"/>
<xs:element name="Filter" type="a:Filter" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
<xs:attribute name="mode" type="a:AuditMode" use="required"/>
<xs:attribute name="enabled" type="xs:boolean" use="required"/>
<xs:attribute name="auditInternal" type="xs:boolean" use="required"/>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
<!-- An abstract audit entry with a name -->
<xs:complexType name="NamedAuditEntry" abstract="true">
<xs:complexContent>
<xs:extension base="a:AuditEntry">
<xs:attribute name="name" type="xs:string" use="required"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- Method level audit control -->
<xs:complexType name="Method">
<xs:complexContent>
<xs:extension base="a:NamedAuditEntry"/>
</xs:complexContent>
</xs:complexType>
<!-- Application level audit control -->
<xs:complexType name="Application">
<xs:complexContent>
<xs:extension base="a:NamedAuditEntry"/>
</xs:complexContent>
</xs:complexType>
<!-- Service level audit control -->
<xs:complexType name="Service">
<xs:complexContent>
<xs:extension base="a:NamedAuditEntry">
<xs:sequence>
<xs:element name="Method" type="a:Method" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<!-- Global audit level control -->
<xs:complexType name="Audit">
<xs:complexContent>
<xs:extension base="a:MandatoryAuditEntry">
<xs:sequence>
<xs:element name="Service" type="a:Service" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:schema>