Class AbstractPreauthPlugin
java.lang.Object
org.apache.kerby.kerberos.kerb.server.preauth.AbstractPreauthPlugin
- All Implemented Interfaces:
org.apache.kerby.kerberos.kerb.preauth.PreauthPluginMeta,KdcPreauth
- Direct Known Subclasses:
EncTsPreauth,PkinitPreauth,TgtPreauth,TokenPreauth
-
Constructor Summary
ConstructorsConstructorDescriptionAbstractPreauthPlugin(org.apache.kerby.kerberos.kerb.preauth.PreauthPluginMeta meta) -
Method Summary
Modifier and TypeMethodDescriptionvoiddestroy()When exiting...org.apache.kerby.kerberos.kerb.preauth.PaFlagsgetFlags(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.getName()org.apache.kerby.kerberos.kerb.type.pa.PaDataType[]intorg.apache.kerby.kerberos.kerb.preauth.PluginRequestContextinitRequestContext(KdcRequest kdcRequest) Initializing request contextvoidinitWith(KdcContext kdcContext) Initializing plugin context for each realmvoidprovideEdata(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.voidprovidePaData(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.booleanverify(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.
-
Constructor Details
-
AbstractPreauthPlugin
public AbstractPreauthPlugin(org.apache.kerby.kerberos.kerb.preauth.PreauthPluginMeta meta)
-
-
Method Details
-
getName
- Specified by:
getNamein interfaceorg.apache.kerby.kerberos.kerb.preauth.PreauthPluginMeta
-
getVersion
public int getVersion()- Specified by:
getVersionin interfaceorg.apache.kerby.kerberos.kerb.preauth.PreauthPluginMeta
-
getPaTypes
public org.apache.kerby.kerberos.kerb.type.pa.PaDataType[] getPaTypes()- Specified by:
getPaTypesin interfaceorg.apache.kerby.kerberos.kerb.preauth.PreauthPluginMeta
-
initWith
Description copied from interface:KdcPreauthInitializing plugin context for each realm- Specified by:
initWithin interfaceKdcPreauth- Parameters:
kdcContext- kdc context
-
initRequestContext
public org.apache.kerby.kerberos.kerb.preauth.PluginRequestContext initRequestContext(KdcRequest kdcRequest) Description copied from interface:KdcPreauthInitializing request context- Specified by:
initRequestContextin interfaceKdcPreauth- Parameters:
kdcRequest- kdc context- Returns:
- request context
-
provideEdata
public 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 Description copied from interface:KdcPreauthOptional: provide pa_data to send to the client as part of the "you need to use preauthentication" error.- Specified by:
provideEdatain interfaceKdcPreauth- Parameters:
kdcRequest- kdc requestrequestContext- request contextoutPaData- out preauthentication data- Throws:
org.apache.kerby.kerberos.kerb.KrbException- e
-
verify
public 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 Description copied from interface:KdcPreauthOptional: 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.- Specified by:
verifyin interfaceKdcPreauth- Parameters:
kdcRequest- kdc requestrequestContext- request contextpaData- preauthentication data- Returns:
- true if verify success
- Throws:
org.apache.kerby.kerberos.kerb.KrbException- e
-
providePaData
public void providePaData(KdcRequest kdcRequest, org.apache.kerby.kerberos.kerb.preauth.PluginRequestContext requestContext, org.apache.kerby.kerberos.kerb.type.pa.PaData paData) Description copied from interface:KdcPreauthOptional: generate preauthentication response data to send to the client as part of the AS-REP.- Specified by:
providePaDatain interfaceKdcPreauth- Parameters:
kdcRequest- kdc requestrequestContext- request contextpaData- preauthentication data
-
getFlags
public 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) Description copied from interface:KdcPreauthReturn PA_REAL if pa_type is a real preauthentication type or PA_INFO if it is an informational type.- Specified by:
getFlagsin interfaceKdcPreauth- Parameters:
kdcRequest- kdc requestrequestContext- request contextpaType- preauthentication type- Returns:
- PaFlags
-
destroy
public void destroy()Description copied from interface:KdcPreauthWhen exiting...- Specified by:
destroyin interfaceKdcPreauth
-