Class LdapCertSubjMap

java.lang.Object
com.netscape.cms.publish.mappers.LdapCertSubjMap
All Implemented Interfaces:
IExtendedPluginInfo, ILdapMapper, ILdapPlugin

public class LdapCertSubjMap extends Object implements ILdapMapper, IExtendedPluginInfo
Maps a X509 certificate to a LDAP entry by finding an LDAP entry which has an attribute whose contents are equal to the cert subject name.
Version:
$Revision$, $Date$
  • Field Details

    • logger

      public static org.slf4j.Logger logger
    • LDAP_CERTSUBJNAME_ATTR

      public static final String LDAP_CERTSUBJNAME_ATTR
      See Also:
    • mSearchBase

      protected String mSearchBase
    • mCertSubjNameAttr

      protected String mCertSubjNameAttr
    • mUseAllEntries

      protected boolean mUseAllEntries
    • mConfig

      protected ConfigStore mConfig
  • Constructor Details

    • LdapCertSubjMap

      public LdapCertSubjMap()
    • LdapCertSubjMap

      public LdapCertSubjMap(String searchBase)
      constructs a certificate subject name mapper with search base.
      Parameters:
      searchBase - the dn to start searching for the certificate subject name.
    • LdapCertSubjMap

      public LdapCertSubjMap(String searchBase, String certSubjNameAttr, String certAttr)
      Constructor using non-ES cert map attribute name.
      Parameters:
      searchBase - entry to start search.
      certSubjNameAttr - attribute for certificate subject names.
      certAttr - attribute to find certificate.
    • LdapCertSubjMap

      public LdapCertSubjMap(String searchBase, String certSubjNameAttr, String certAttr, boolean useAllEntries)
  • Method Details

    • getImplName

      public String getImplName()
      Description copied from interface: ILdapMapper
      Returns implementation name.
      Specified by:
      getImplName in interface ILdapMapper
    • getDescription

      public String getDescription()
      Description copied from interface: ILdapMapper
      Returns the description of this mapper.
      Specified by:
      getDescription in interface ILdapMapper
    • getDefaultParams

      public Vector<String> getDefaultParams()
      Description copied from interface: ILdapMapper
      Returns the initial default parameters.
      Specified by:
      getDefaultParams in interface ILdapMapper
    • getExtendedPluginInfo

      public String[] getExtendedPluginInfo()
      Description copied from interface: IExtendedPluginInfo
      This method returns an array of strings. Each element of the array represents a configurable parameter, or some other meta-info (such as help-token) there is an entry indexed on that parameter name Where: type_info is either 'string', 'number', 'boolean', 'password' or 'choice(ch1,ch2,ch3,...)' If the marker 'required' is included after the type_info, the parameter will has some visually distinctive marking in the UI. 'description' is a short sentence describing the parameter 'choice' is rendered as a drop-down list. The first parameter in the list will be activated by default 'boolean' is rendered as a checkbox. The resulting parameter will be either 'true' or 'false' 'string' allows any characters 'number' allows only numbers 'password' is rendered as a password field (the characters are replaced with *'s when being types. This parameter is not passed through to the plugin. It is instead inserted directly into the password cache keyed on the instance name. The value of the parameter 'bindPWPrompt' (see example below) is set to the key. In addition to the configurable parameters, the following magic parameters may be defined: HELP_TOKEN;helptoken - a pointer to the online manual section for this plugin HELP_TEXT;helptext - a general help string describing the plugin For example: "username;string;The username you wish to login as" "bindPWPrompt;password;Enter password to bind as above user with" "algorithm;choice(RSA,DSA);Which algorithm do you want to use" "enable;boolean;Do you want to run this plugin" "port;number;Which port number do you want to use"
      Specified by:
      getExtendedPluginInfo in interface IExtendedPluginInfo
    • getInstanceParams

      public Vector<String> getInstanceParams()
      Description copied from interface: ILdapMapper
      Returns the current instance parameters.
      Specified by:
      getInstanceParams in interface ILdapMapper
    • getConfigStore

      public ConfigStore getConfigStore()
      Description copied from interface: ILdapPlugin
      Return config store.
      Specified by:
      getConfigStore in interface ILdapPlugin
    • init

      public void init(ConfigStore config) throws EBaseException
      Description copied from interface: ILdapPlugin
      Initialize from config store.
      Specified by:
      init in interface ILdapPlugin
      Parameters:
      config - the configuration store to initialize from.
      Throws:
      ELdapException - initialization failed due to Ldap error.
      EBaseException - initialization failed.
    • map

      public String map(netscape.ldap.LDAPConnection conn, Object obj) throws ELdapException
      Finds the entry for the certificate by looking for the cert subject name in the subject name attribute.
      Specified by:
      map in interface ILdapMapper
      Parameters:
      conn - - the LDAP connection.
      obj - - the X509Certificate.
      Returns:
      dn indicates whether a mapping was successful
      Throws:
      ELdapException - Map operation failed.
    • map

      public String map(netscape.ldap.LDAPConnection conn, Request req, Object obj) throws ELdapException
      Description copied from interface: ILdapMapper
      maps a certificate to a LDAP entry. returns dn of the mapped LDAP entry.
      Specified by:
      map in interface ILdapMapper
      Parameters:
      conn - the LDAP connection
      req - the request to map
      obj - the object to map
      Returns:
      dn indicates whether a mapping was successful
      Throws:
      ELdapException - Map operation failed.
    • mapAll

      public Vector<String> mapAll(netscape.ldap.LDAPConnection conn, Object obj) throws ELdapException
      Throws:
      ELdapException
    • mapAll

      public Vector<String> mapAll(netscape.ldap.LDAPConnection conn, Request req, Object obj) throws ELdapException
      Throws:
      ELdapException
    • getSearchBase

      public String getSearchBase()
      return search base
    • getCertSubjNameAttr

      public String getCertSubjNameAttr()
      return certificate subject attribute
    • useAllEntries

      public boolean useAllEntries()