Package com.evolveum.midpoint.audit.api
Interface AuditService
- All Known Implementing Classes:
AuditServiceProxy
,SqaleAuditService
public interface AuditService
Service contract for audit - this can actually represent multiple audit services.
This is implementation independent, but some features may not be supported by all implementations.
For instance,
supportsRetrieval()
indicates whether audit supports searching, or just storing.-
Field Summary
-
Method Summary
Modifier and TypeMethodDescriptiondefault void
applyAuditConfiguration
(@Nullable SystemConfigurationAuditType configuration) Called when audit configuration is established or changed.void
audit
(AuditEventRecord record, Task task, OperationResult parentResult) Emits audit event record, e.g.void
audit
(AuditEventRecordType record, OperationResult parentResult) Emits audit event record provided as a generated Prism bean.void
cleanupAudit
(CleanupPolicyType policy, OperationResult parentResult) Clean up audit records that are older than specified.int
countObjects
(@Nullable ObjectQuery query, @Nullable Collection<SelectorOptions<GetOperationOptions>> options, @NotNull OperationResult parentResult) Returns the number of audit events that match the specified query.@NotNull RepositoryDiag
@NotNull SearchResultList<AuditEventRecordType>
searchObjects
(@Nullable ObjectQuery query, @Nullable Collection<SelectorOptions<GetOperationOptions>> options, @NotNull OperationResult parentResult) Returns the result list of audit events that match the specified query.searchObjectsIterative
(@Nullable ObjectQuery query, @NotNull AuditResultHandler handler, @Nullable Collection<SelectorOptions<GetOperationOptions>> options, @NotNull OperationResult parentResult) Executes iterative search using the provided `handler` to process each object.boolean
Returns true if retrieval of objects from the audit trail is supported.
-
Field Details
-
MAX_MESSAGE_SIZE
static final int MAX_MESSAGE_SIZE- See Also:
-
MAX_PROPERTY_SIZE
static final int MAX_PROPERTY_SIZE- See Also:
-
OP_AUDIT
- See Also:
-
OP_CLEANUP_AUDIT_MAX_AGE
- See Also:
-
OP_CLEANUP_AUDIT_MAX_RECORDS
- See Also:
-
OP_COUNT_OBJECTS
- See Also:
-
OP_SEARCH_OBJECTS
- See Also:
-
OP_SEARCH_OBJECTS_ITERATIVE
- See Also:
-
OP_SEARCH_OBJECTS_ITERATIVE_PAGE
- See Also:
-
-
Method Details
-
audit
Emits audit event record, e.g. writes it in the database or logs it to a file. If audit is recorded to the repository,AuditEventRecord.repoId
will be set, any provided ID is ignored. This is high-level audit method that also tries to complete the audit event record, e.g. filling in missing task information, current timestamp if none is provided, etc. -
audit
Emits audit event record provided as a generated Prism bean. Used for audit import functionality. This is a low-level audit method that does not process provided record at all. -
cleanupAudit
Clean up audit records that are older than specified.- Parameters:
policy
- Records will be deleted base on this policy.
-
supportsRetrieval
boolean supportsRetrieval()Returns true if retrieval of objects from the audit trail is supported. This applies to listRecords, countObjects, reconstructObject and similar operations. -
applyAuditConfiguration
default void applyAuditConfiguration(@Nullable @Nullable SystemConfigurationAuditType configuration) Called when audit configuration is established or changed. Setting to null means to use default values for the settings. -
countObjects
int countObjects(@Nullable @Nullable ObjectQuery query, @Nullable @Nullable Collection<SelectorOptions<GetOperationOptions>> options, @NotNull @NotNull OperationResult parentResult) Returns the number of audit events that match the specified query. If query is null or no filter in query is specified, count of all audit events is returned. Ignores any paging and ordering from the query.- Parameters:
query
- search queryparentResult
- parent operation result (in/out)- Returns:
- count of audit events of specified type that match the search criteria
-
searchObjects
@NotNull @NotNull SearchResultList<AuditEventRecordType> searchObjects(@Nullable @Nullable ObjectQuery query, @Nullable @Nullable Collection<SelectorOptions<GetOperationOptions>> options, @NotNull @NotNull OperationResult parentResult) throws SchemaException Returns the result list of audit events that match the specified query. If query is null or no filter in query is specified, all audit events are returned, subject to paging or internal sanity limit.- Parameters:
query
- search queryparentResult
- parent operation result (in/out)- Returns:
- list of audit events of specified type that match the search criteria
- Throws:
SchemaException
-
searchObjectsIterative
@Experimental SearchResultMetadata searchObjectsIterative(@Nullable @Nullable ObjectQuery query, @NotNull @NotNull AuditResultHandler handler, @Nullable @Nullable Collection<SelectorOptions<GetOperationOptions>> options, @NotNull @NotNull OperationResult parentResult) throws SchemaException Executes iterative search using the provided `handler` to process each object.- Parameters:
query
- search queryhandler
- result handleroptions
- get options to use for the searchparentResult
- parent OperationResult (in/out)- Returns:
- summary information about the search result
- Throws:
SchemaException
-
getRepositoryDiag
-