Interface KdcPreauth

All Superinterfaces:
org.apache.kerby.kerberos.kerb.preauth.PreauthPluginMeta
All Known Implementing Classes:
AbstractPreauthPlugin, EncTsPreauth, PkinitPreauth, TgtPreauth, TokenPreauth

public interface KdcPreauth extends org.apache.kerby.kerberos.kerb.preauth.PreauthPluginMeta
KDC side preauth plugin module
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    When exiting...
    org.apache.kerby.kerberos.kerb.preauth.PaFlags
    getFlags(KdcRequest kdcRequest, org.apache.kerby.kerberos.kerb.preauth.PluginRequestContext requestContext, org.apache.kerby.kerberos.kerb.type.pa.PaDataType paType)
    Return PA_REAL if pa_type is a real preauthentication type or PA_INFO if it is an informational type.
    org.apache.kerby.kerberos.kerb.preauth.PluginRequestContext
    Initializing request context
    void
    Initializing plugin context for each realm
    void
    provideEdata(KdcRequest kdcRequest, org.apache.kerby.kerberos.kerb.preauth.PluginRequestContext requestContext, org.apache.kerby.kerberos.kerb.type.pa.PaData outPaData)
    Optional: provide pa_data to send to the client as part of the "you need to use preauthentication" error.
    void
    providePaData(KdcRequest kdcRequest, org.apache.kerby.kerberos.kerb.preauth.PluginRequestContext requestContext, org.apache.kerby.kerberos.kerb.type.pa.PaData paData)
    Optional: generate preauthentication response data to send to the client as part of the AS-REP.
    boolean
    verify(KdcRequest kdcRequest, org.apache.kerby.kerberos.kerb.preauth.PluginRequestContext requestContext, org.apache.kerby.kerberos.kerb.type.pa.PaDataEntry paData)
    Optional: verify preauthentication data sent by the client, setting the TKT_FLG_PRE_AUTH or TKT_FLG_HW_AUTH flag in the enc_tkt_reply's "flags" field as appropriate.

    Methods inherited from interface org.apache.kerby.kerberos.kerb.preauth.PreauthPluginMeta

    getName, getPaTypes, getVersion
  • Method Details

    • initWith

      void initWith(KdcContext context)
      Initializing plugin context for each realm
      Parameters:
      context - kdc context
    • initRequestContext

      org.apache.kerby.kerberos.kerb.preauth.PluginRequestContext initRequestContext(KdcRequest kdcRequest)
      Initializing request context
      Parameters:
      kdcRequest - kdc context
      Returns:
      request context
    • provideEdata

      void provideEdata(KdcRequest kdcRequest, org.apache.kerby.kerberos.kerb.preauth.PluginRequestContext requestContext, org.apache.kerby.kerberos.kerb.type.pa.PaData outPaData) throws org.apache.kerby.kerberos.kerb.KrbException
      Optional: provide pa_data to send to the client as part of the "you need to use preauthentication" error.
      Parameters:
      kdcRequest - kdc request
      requestContext - request context
      outPaData - out preauthentication data
      Throws:
      org.apache.kerby.kerberos.kerb.KrbException - e
    • verify

      boolean verify(KdcRequest kdcRequest, org.apache.kerby.kerberos.kerb.preauth.PluginRequestContext requestContext, org.apache.kerby.kerberos.kerb.type.pa.PaDataEntry paData) throws org.apache.kerby.kerberos.kerb.KrbException
      Optional: verify preauthentication data sent by the client, setting the TKT_FLG_PRE_AUTH or TKT_FLG_HW_AUTH flag in the enc_tkt_reply's "flags" field as appropriate.
      Parameters:
      kdcRequest - kdc request
      requestContext - request context
      paData - preauthentication data
      Returns:
      true if verify success
      Throws:
      org.apache.kerby.kerberos.kerb.KrbException - e
    • providePaData

      void providePaData(KdcRequest kdcRequest, org.apache.kerby.kerberos.kerb.preauth.PluginRequestContext requestContext, org.apache.kerby.kerberos.kerb.type.pa.PaData paData)
      Optional: generate preauthentication response data to send to the client as part of the AS-REP.
      Parameters:
      kdcRequest - kdc request
      requestContext - request context
      paData - preauthentication data
    • getFlags

      org.apache.kerby.kerberos.kerb.preauth.PaFlags getFlags(KdcRequest kdcRequest, org.apache.kerby.kerberos.kerb.preauth.PluginRequestContext requestContext, org.apache.kerby.kerberos.kerb.type.pa.PaDataType paType)
      Return PA_REAL if pa_type is a real preauthentication type or PA_INFO if it is an informational type.
      Parameters:
      kdcRequest - kdc request
      requestContext - request context
      paType - preauthentication type
      Returns:
      PaFlags
    • destroy

      void destroy()
      When exiting...