package org.apache.kerberos.kerb.client.request; import org.apache.kerberos.kerb.client.KrbContext; import org.apache.kerberos.kerb.client.KrbOption; import org.apache.kerberos.kerb.crypto.EncryptionHandler; import org.apache.kerberos.kerb.KrbException; import org.apache.kerberos.kerb.spec.common.EncryptionKey; import org.apache.kerberos.kerb.spec.pa.PaDataType; public class AsRequestWithPasswd extends AsRequest { public AsRequestWithPasswd(KrbContext context) { super(context); setAllowedPreauth(PaDataType.ENC_TIMESTAMP); } public String getPassword() { return getKrbOptions().getStringOption(KrbOption.USER_PASSWD); } @Override public EncryptionKey getClientKey() throws KrbException { if (super.getClientKey() == null) { EncryptionKey tmpKey = EncryptionHandler.string2Key(getClientPrincipal().getName(), getPassword(), getChosenEncryptionType()); setClientKey(tmpKey); } return super.getClientKey(); } }