org.springframework.ldap.core.support

## Class SimpleDirContextAuthenticationStrategy

- java.lang.Object
- - org.springframework.ldap.core.support.SimpleDirContextAuthenticationStrategy

- All Implemented Interfaces:
    DirContextAuthenticationStrategy

      public class SimpleDirContextAuthenticationStrategy
      extends Object
      implements DirContextAuthenticationStrategy

  The default `DirContextAuthenticationStrategy` implementation, setting the `DirContext` environment up for 'SIMPLE' authentication, and specifying the user DN and password as SECURITY_PRINCIPAL and SECURITY_CREDENTIALS respectively in the authenticated environment before the context is created.
  Author:
    Mattias Hellborg Arthursson

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `SimpleDirContextAuthenticationStrategy()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `DirContext` | `processContextAfterCreation(DirContext ctx, String userDn, String password)` This method is responsible for post-processing the `DirContext` instance after it has been created.
    `void` | `setupEnvironment(Hashtable<String,Object> env, String userDn, String password)` This method is responsible for preparing the environment to be used when creating the `DirContext` instance.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### SimpleDirContextAuthenticationStrategy

          public SimpleDirContextAuthenticationStrategy()

  - ### Method Detail

    - #### setupEnvironment

          public void setupEnvironment(Hashtable<String,Object> env,
                                       String userDn,
                                       String password)

      Description copied from interface: `DirContextAuthenticationStrategy`
      This method is responsible for preparing the environment to be used when creating the `DirContext` instance. The base environment (including URL, `ContextFactory` etc. will already be set, and this method is called just before the actual Context is to be created.
      Specified by:
        `setupEnvironment` in interface `DirContextAuthenticationStrategy`
      Parameters:
        `env` - The `Hashtable` to be sent to the `DirContext` instance on initialization. Pre-configured with the basic settings; the implementation of this method is responsible for manipulating the environment as appropriate for the particular authentication mechanism.
        `userDn` - the user DN to authenticate, as received from the `AuthenticationSource` of the `ContextSource`.
        `password` - the password to authenticate with, as received from the `AuthenticationSource` of the `ContextSource`.

    - #### processContextAfterCreation

          public DirContext processContextAfterCreation(DirContext ctx,
                                                        String userDn,
                                                        String password)

      Description copied from interface: `DirContextAuthenticationStrategy`
      This method is responsible for post-processing the `DirContext` instance after it has been created. It will be called immediately after the instance has been created. Some authentication mechanisms, e.g. TLS, require particular stuff to happen before the actual target Context is closed. This method provides the possibility to replace or wrap the actual DirContext with a proxy so that any calls on it may be intercepted.
      Specified by:
        `processContextAfterCreation` in interface `DirContextAuthenticationStrategy`
      Parameters:
        `ctx` - the freshly created `DirContext` instance. The actual implementation class (e.g. `InitialLdapContext`) depends on the `ContextSource` implementation.
        `userDn` - the user DN to authenticate, as received from the `AuthenticationSource` of the `ContextSource`.
        `password` - the password to authenticate with, as received from the `AuthenticationSource` of the `ContextSource`.
      Returns:
        the DirContext, possibly modified, replaced or wrapped.