@Extensible @DirectoryServerExtension @ThreadSafety(level=INTERFACE_THREADSAFE) public abstract class DataSecurityAuditor extends java.lang.Object implements UnboundIDExtension, Configurable, ExampleUsageProvider
      dsconfig create-data-security-auditor \
           --auditor-name "{auditor-name}" \
           --type third-party \
           --set enabled:true \
           --set "extension-class:{class-name}" \
           --set "extension-argument:{name=value}"
 
 where "{auditor-name}" is the name to use for the data security
 auditor instance, "{class-name}" is the fully-qualified name of the
 Java class that extends
 com.unboundid.directory.sdk.ds.api.DataSecurityAuditor,
 and "{name=value}" represents name-value pairs for any arguments to
 provide to the data security auditor.  If multiple arguments should be
 provided to the data security auditor, then the
 "--set extension-argument:{name=value}" option should be
 provided multiple times.| Constructor and Description | 
|---|
| DataSecurityAuditor()Creates a new instance of this data security auditor. | 
| Modifier and Type | Method and Description | 
|---|---|
| void | defineConfigArguments(ArgumentParser parser)Updates the provided argument parser to define any configuration arguments
 which may be used by this extension. | 
| abstract void | examineEntry(Entry entry,
            PasswordPolicyStateJSON passwordPolicyState,
            DataSecurityAuditorEntryReporter reporter)Examines the provided entry to determine whether any data security issues
 should be reported. | 
| void | finalizeDataSecurityAuditor()Performs any cleanup that may be necessary when this data security auditor
 ends processing in a backend. | 
| java.util.Map<java.util.List<java.lang.String>,java.lang.String> | getExamplesArgumentSets()Retrieves a map containing examples of configurations that may be used for
 this extension. | 
| abstract java.lang.String[] | getExtensionDescription()Retrieves a human-readable description for this extension. | 
| abstract java.lang.String | getExtensionName()Retrieves a human-readable name for this extension. | 
| void | initializeDataSecurityAuditorForBackend(DirectoryServerContext serverContext,
                                       DataSecurityAuditorConfig config,
                                       ArgumentParser parser,
                                       java.lang.String backendID)Initializes this data security auditor before beginning processing in the
 specified backend. | 
| abstract void | reportSummary(DataSecurityAuditorSummaryReporter reporter)Reports a summary of the results obtained from processing this data
 security auditor in the associated backend. | 
public DataSecurityAuditor()
initializeDataSecurityAuditor method.@NotNull public abstract java.lang.String getExtensionName()
getExtensionName in interface UnboundIDExtension@Nullable public abstract java.lang.String[] getExtensionDescription()
getExtensionDescription in interface UnboundIDExtensionnull
          or an empty array if no description should be available.public void defineConfigArguments(@NotNull ArgumentParser parser) throws ArgumentException
defineConfigArguments in interface Configurableparser - The argument parser to be updated with the configuration
                 arguments which may be used by this extension.ArgumentException - If a problem is encountered while updating the
                             provided argument parser.public void initializeDataSecurityAuditorForBackend(@NotNull DirectoryServerContext serverContext, @NotNull DataSecurityAuditorConfig config, @NotNull ArgumentParser parser, @NotNull java.lang.String backendID) throws LDAPException
serverContext - A handle to the server context for the server in
                        which this extension is running.config - The general configuration for this data security
                        auditor.parser - The argument parser which has been initialized from
                        the configuration for this data security auditor.backendID - The backend ID for the backend in which processing
                        will be performed.LDAPException - If a problem occurs while initializing this data
                         security auditor.public void finalizeDataSecurityAuditor()
public abstract void examineEntry(@NotNull Entry entry, @NotNull PasswordPolicyStateJSON passwordPolicyState, @NotNull DataSecurityAuditorEntryReporter reporter) throws java.io.IOException
entry - The entry to examine.passwordPolicyState - The password policy state for the account
                              with which the provided entry is associated.reporter - A reporter whose reportEntry method
                              may be used to indicate that the provided
                              entry has one or more identified issues.java.io.IOException - If a problem is encountered while the reporter is
                       attempting to add an entry to the report file.public abstract void reportSummary(@NotNull DataSecurityAuditorSummaryReporter reporter) throws java.io.IOException
reporter - The reporter that may be used to provide the summary of
                   processing performed by this data security auditor in the
                   associated backend.java.io.IOException - If a problem is encountered while the reporter is
                       attempting to add an entry to the report file.@Nullable public java.util.Map<java.util.List<java.lang.String>,java.lang.String> getExamplesArgumentSets()
getExamplesArgumentSets in interface ExampleUsageProvidernull or empty if there should
          not be any example argument sets.