Class KdcRequest
java.lang.Object
org.apache.kerby.kerberos.kerb.server.request.KdcRequest
- Direct Known Subclasses:
AsRequest,TgsRequest
-
Constructor Summary
ConstructorsConstructorDescriptionKdcRequest(org.apache.kerby.kerberos.kerb.type.kdc.KdcReq kdcReq, KdcContext kdcContext) kdc request constructor -
Method Summary
Modifier and TypeMethodDescriptionprotected voidDo some authenticate.protected abstract voidCheck client.booleancheckCrossRealm(String remoteRealm) protected voidCheck encryption type.protected voidCheck policy.protected voidCheck Version.org.apache.kerby.kerberos.kerb.type.base.EncryptionKeyGet armor key.Get client address.org.apache.kerby.kerberos.kerb.request.KrbIdentityGet client entry.org.apache.kerby.kerberos.kerb.type.base.EncryptionKeyGet client key.org.apache.kerby.kerberos.kerb.type.base.EncryptionKeygetClientKey(org.apache.kerby.kerberos.kerb.type.base.EncryptionType encType) Get client key with entryption type.org.apache.kerby.kerberos.kerb.type.base.PrincipalNameGet client principal.org.apache.kerby.kerberos.kerb.request.KrbIdentitygetCrossRealmTgsEntry(String remoteRealm) org.apache.kerby.kerberos.kerb.type.base.PrincipalNamegetCrossRealmTgsPrincipal(String remoteRealm) org.apache.kerby.kerberos.kerb.type.base.EncryptionTypeGet encryption type.protected org.apache.kerby.kerberos.kerb.request.KrbIdentityGet identity entry with principal name.protected byte[]Get innerbodyout.Get kdc context.org.apache.kerby.kerberos.kerb.type.kdc.KdcOptionsorg.apache.kerby.kerberos.kerb.type.kdc.KdcReqGet KdcReq.Get preauth context.protected PreauthHandlerGet preauth handler.org.apache.kerby.kerberos.kerb.type.base.KrbMessagegetReply()Get the reply message.protected ByteBufferGet request body.org.apache.kerby.kerberos.kerb.request.KrbIdentityGet server entry.org.apache.kerby.kerberos.kerb.type.base.EncryptionKeyGet server key.org.apache.kerby.kerberos.kerb.type.base.PrincipalNameGet server principal.org.apache.kerby.kerberos.kerb.type.base.EncryptionKeyGet session key.org.apache.kerby.kerberos.kerb.request.KrbIdentityGet tgs entry.org.apache.kerby.kerberos.kerb.type.base.PrincipalNameGet tgs principal name.org.apache.kerby.kerberos.kerb.type.ticket.TicketGet ticket.protected org.apache.kerby.kerberos.kerb.type.base.AuthTokengetToken()Get auth token.booleanbooleanbooleanisHttps()protected booleanisPkinit()booleanGet whether pre-authenticated.protected booleanGet whether preauth required.protected abstract voidIssue ticket.booleanisTcp()Get whether is tcp.voidisTcp(boolean isTcp) Set use tcp.protected booleanisToken()Get whether kdc request with token.protected org.apache.kerby.kerberos.kerb.type.base.KrbErrormakePreAuthenticationError(KdcContext kdcContext, org.apache.kerby.kerberos.kerb.type.kdc.KdcReq request, org.apache.kerby.kerberos.kerb.KrbErrorCode errorCode, boolean pkinit) Make preauthentication error.protected abstract voidMake reply.protected voidpreauth()Do the preauth.voidprocess()Process the kdcrequest from client and issue the ticket.protected voidsetArmorKey(org.apache.kerby.kerberos.kerb.type.base.EncryptionKey armorKey) Set armor key.voidsetClientAddress(InetAddress clientAddress) Set client address.voidsetClientEntry(org.apache.kerby.kerberos.kerb.request.KrbIdentity clientEntry) Set client entry.voidsetClientKey(org.apache.kerby.kerberos.kerb.type.base.EncryptionKey clientKey) Set client key.voidsetClientPrincipal(org.apache.kerby.kerberos.kerb.type.base.PrincipalName clientPrincipal) Set client principal.voidsetEncryptionType(org.apache.kerby.kerberos.kerb.type.base.EncryptionType encryptionType) Set encryption type.voidsetHttps(boolean https) voidsetPreAuthenticated(boolean isPreAuthenticated) Set whether pre-authenticated.protected voidsetPreauthRequired(boolean preauthRequired) Set whether preauth required.voidsetReply(org.apache.kerby.kerberos.kerb.type.kdc.KdcRep reply) Set kdc reply.voidsetReqPackage(ByteBuffer reqPackage) voidsetServerEntry(org.apache.kerby.kerberos.kerb.request.KrbIdentity serverEntry) Set server entry.voidsetServerKey(org.apache.kerby.kerberos.kerb.type.base.EncryptionKey serverKey) Set server key.voidsetServerPrincipal(org.apache.kerby.kerberos.kerb.type.base.PrincipalName serverPrincipal) Set server principal.voidsetSessionKey(org.apache.kerby.kerberos.kerb.type.base.EncryptionKey sessionKey) Set session key.voidsetTgsEntry(org.apache.kerby.kerberos.kerb.request.KrbIdentity tgsEntry) Set tgs entry .voidsetTicket(org.apache.kerby.kerberos.kerb.type.ticket.Ticket ticket) Set ticket.voidsetToken(org.apache.kerby.kerberos.kerb.type.base.AuthToken authToken) Set auth token.
-
Constructor Details
-
KdcRequest
kdc request constructor- Parameters:
kdcReq- kdc requestkdcContext- kdc context
-
-
Method Details
-
getSessionKey
public org.apache.kerby.kerberos.kerb.type.base.EncryptionKey getSessionKey()Get session key.- Returns:
- session key
-
setSessionKey
public void setSessionKey(org.apache.kerby.kerberos.kerb.type.base.EncryptionKey sessionKey) Set session key.- Parameters:
sessionKey- The session key
-
getKdcContext
Get kdc context.- Returns:
- kdc context
-
getKdcReq
public org.apache.kerby.kerberos.kerb.type.kdc.KdcReq getKdcReq()Get KdcReq.- Returns:
- kdc request
-
getPreauthContext
Get preauth context.- Returns:
- preauthentication context.
-
process
public void process() throws org.apache.kerby.kerberos.kerb.KrbExceptionProcess the kdcrequest from client and issue the ticket.- Throws:
org.apache.kerby.kerberos.kerb.KrbException- e.
-
getTgsEntry
public org.apache.kerby.kerberos.kerb.request.KrbIdentity getTgsEntry()Get tgs entry.- Returns:
- TGS entry
-
setTgsEntry
public void setTgsEntry(org.apache.kerby.kerberos.kerb.request.KrbIdentity tgsEntry) Set tgs entry .- Parameters:
tgsEntry- TGS entry
-
isTcp
public boolean isTcp()Get whether is tcp.- Returns:
- whether is tcp
-
isTcp
public void isTcp(boolean isTcp) Set use tcp.- Parameters:
isTcp- set kdc request though TCP protocol or not
-
getReply
public org.apache.kerby.kerberos.kerb.type.base.KrbMessage getReply()Get the reply message.- Returns:
- reply
-
setReply
public void setReply(org.apache.kerby.kerberos.kerb.type.kdc.KdcRep reply) Set kdc reply.- Parameters:
reply- reply
-
getClientAddress
Get client address.- Returns:
- client address
-
setClientAddress
Set client address.- Parameters:
clientAddress- client address
-
getEncryptionType
public org.apache.kerby.kerberos.kerb.type.base.EncryptionType getEncryptionType()Get encryption type.- Returns:
- encryption type
-
setEncryptionType
public void setEncryptionType(org.apache.kerby.kerberos.kerb.type.base.EncryptionType encryptionType) Set encryption type.- Parameters:
encryptionType- encryption type
-
getTicket
public org.apache.kerby.kerberos.kerb.type.ticket.Ticket getTicket()Get ticket.- Returns:
- ticket
-
setTicket
public void setTicket(org.apache.kerby.kerberos.kerb.type.ticket.Ticket ticket) Set ticket.- Parameters:
ticket- ticket
-
isPreAuthenticated
public boolean isPreAuthenticated()Get whether pre-authenticated.- Returns:
- whether preauthenticated
-
setPreAuthenticated
public void setPreAuthenticated(boolean isPreAuthenticated) Set whether pre-authenticated.- Parameters:
isPreAuthenticated- whether is preauthenticated
-
getServerEntry
public org.apache.kerby.kerberos.kerb.request.KrbIdentity getServerEntry()Get server entry.- Returns:
- server entry
-
setServerEntry
public void setServerEntry(org.apache.kerby.kerberos.kerb.request.KrbIdentity serverEntry) Set server entry.- Parameters:
serverEntry- server entry
-
getClientEntry
public org.apache.kerby.kerberos.kerb.request.KrbIdentity getClientEntry()Get client entry.- Returns:
- client entry
-
setClientEntry
public void setClientEntry(org.apache.kerby.kerberos.kerb.request.KrbIdentity clientEntry) Set client entry.- Parameters:
clientEntry- client entry
-
getClientKey
public org.apache.kerby.kerberos.kerb.type.base.EncryptionKey getClientKey(org.apache.kerby.kerberos.kerb.type.base.EncryptionType encType) throws org.apache.kerby.kerberos.kerb.KrbException Get client key with entryption type.- Parameters:
encType- encryption type- Returns:
- encryption key
- Throws:
org.apache.kerby.kerberos.kerb.KrbException- e
-
getClientKey
public org.apache.kerby.kerberos.kerb.type.base.EncryptionKey getClientKey()Get client key.- Returns:
- client key
-
setClientKey
public void setClientKey(org.apache.kerby.kerberos.kerb.type.base.EncryptionKey clientKey) Set client key.- Parameters:
clientKey- client key
-
getServerKey
public org.apache.kerby.kerberos.kerb.type.base.EncryptionKey getServerKey()Get server key.- Returns:
- The server key
-
setServerKey
public void setServerKey(org.apache.kerby.kerberos.kerb.type.base.EncryptionKey serverKey) Set server key.- Parameters:
serverKey- server key
-
getTgsPrincipal
public org.apache.kerby.kerberos.kerb.type.base.PrincipalName getTgsPrincipal()Get tgs principal name.- Returns:
- principal name
-
getCrossRealmTgsPrincipal
public org.apache.kerby.kerberos.kerb.type.base.PrincipalName getCrossRealmTgsPrincipal(String remoteRealm) -
getCrossRealmTgsEntry
public org.apache.kerby.kerberos.kerb.request.KrbIdentity getCrossRealmTgsEntry(String remoteRealm) throws org.apache.kerby.kerberos.kerb.KrbException - Throws:
org.apache.kerby.kerberos.kerb.KrbException
-
checkCrossRealm
public boolean checkCrossRealm(String remoteRealm) throws org.apache.kerby.kerberos.kerb.KrbException - Throws:
org.apache.kerby.kerberos.kerb.KrbException
-
isCrossRealm
public boolean isCrossRealm() -
getRemoteRealm
-
makeReply
protected abstract void makeReply() throws org.apache.kerby.kerberos.kerb.KrbExceptionMake reply.- Throws:
org.apache.kerby.kerberos.kerb.KrbException- e
-
checkVersion
protected void checkVersion() throws org.apache.kerby.kerberos.kerb.KrbExceptionCheck Version.- Throws:
org.apache.kerby.kerberos.kerb.KrbException- e
-
checkPolicy
protected void checkPolicy() throws org.apache.kerby.kerberos.kerb.KrbExceptionCheck policy.- Throws:
org.apache.kerby.kerberos.kerb.KrbException- e
-
checkClient
protected abstract void checkClient() throws org.apache.kerby.kerberos.kerb.KrbExceptionCheck client.- Throws:
org.apache.kerby.kerberos.kerb.KrbException- e
-
preauth
protected void preauth() throws org.apache.kerby.kerberos.kerb.KrbExceptionDo the preauth.- Throws:
org.apache.kerby.kerberos.kerb.KrbException- e
-
setPreauthRequired
protected void setPreauthRequired(boolean preauthRequired) Set whether preauth required.- Parameters:
preauthRequired- whether preauthentication required
-
isPreauthRequired
protected boolean isPreauthRequired()Get whether preauth required.- Returns:
- whether preauthentication is required
-
getPreauthHandler
Get preauth handler.- Returns:
- preauthencation handler
-
checkEncryptionType
protected void checkEncryptionType() throws org.apache.kerby.kerberos.kerb.KrbExceptionCheck encryption type.- Throws:
org.apache.kerby.kerberos.kerb.KrbException- e
-
authenticate
protected void authenticate() throws org.apache.kerby.kerberos.kerb.KrbExceptionDo some authenticate.- Throws:
org.apache.kerby.kerberos.kerb.KrbException- e
-
issueTicket
protected abstract void issueTicket() throws org.apache.kerby.kerberos.kerb.KrbExceptionIssue ticket.- Throws:
org.apache.kerby.kerberos.kerb.KrbException- e
-
makePreAuthenticationError
protected org.apache.kerby.kerberos.kerb.type.base.KrbError makePreAuthenticationError(KdcContext kdcContext, org.apache.kerby.kerberos.kerb.type.kdc.KdcReq request, org.apache.kerby.kerberos.kerb.KrbErrorCode errorCode, boolean pkinit) throws org.apache.kerby.kerberos.kerb.KrbException Make preauthentication error.- Parameters:
kdcContext- kdc contextrequest- kdc requesterrorCode- krb error code- Returns:
- The krb error reply to client
- Throws:
org.apache.kerby.kerberos.kerb.KrbException- e
-
getEntry
protected org.apache.kerby.kerberos.kerb.request.KrbIdentity getEntry(String principal) throws org.apache.kerby.kerberos.kerb.KrbException Get identity entry with principal name.- Parameters:
principal- Principal- Returns:
- krb identity entry
- Throws:
org.apache.kerby.kerberos.kerb.KrbException- e
-
getRequestBody
Get request body.- Returns:
- request body
- Throws:
org.apache.kerby.kerberos.kerb.KrbException- e
-
getArmorKey
public org.apache.kerby.kerberos.kerb.type.base.EncryptionKey getArmorKey() throws org.apache.kerby.kerberos.kerb.KrbExceptionGet armor key.- Returns:
- armor key
- Throws:
org.apache.kerby.kerberos.kerb.KrbException- e
-
setArmorKey
protected void setArmorKey(org.apache.kerby.kerberos.kerb.type.base.EncryptionKey armorKey) Set armor key.- Parameters:
armorKey- armor key
-
getClientPrincipal
public org.apache.kerby.kerberos.kerb.type.base.PrincipalName getClientPrincipal()Get client principal.- Returns:
- client principal
-
setClientPrincipal
public void setClientPrincipal(org.apache.kerby.kerberos.kerb.type.base.PrincipalName clientPrincipal) Set client principal.- Parameters:
clientPrincipal- client principal
-
getServerPrincipal
public org.apache.kerby.kerberos.kerb.type.base.PrincipalName getServerPrincipal()Get server principal.- Returns:
- server principal
-
setServerPrincipal
public void setServerPrincipal(org.apache.kerby.kerberos.kerb.type.base.PrincipalName serverPrincipal) Set server principal.- Parameters:
serverPrincipal- server principal
-
getInnerBodyout
protected byte[] getInnerBodyout()Get innerbodyout.- Returns:
- inner body out
-
isToken
protected boolean isToken()Get whether kdc request with token.- Returns:
- whether isToken
-
isHttps
public boolean isHttps() -
setHttps
public void setHttps(boolean https) -
setToken
public void setToken(org.apache.kerby.kerberos.kerb.type.base.AuthToken authToken) Set auth token.- Parameters:
authToken- The auth token
-
getToken
protected org.apache.kerby.kerberos.kerb.type.base.AuthToken getToken()Get auth token.- Returns:
- token
-
isPkinit
protected boolean isPkinit() -
isAnonymous
public boolean isAnonymous() -
getKdcOptions
public org.apache.kerby.kerberos.kerb.type.kdc.KdcOptions getKdcOptions() -
setReqPackage
-
getReqPackage
-