Minor code cleanups
git-svn-id: https://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk@934167 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
056b249b0b
commit
6054dd897d
|
@ -44,26 +44,28 @@ import org.bouncycastle.asn1.util.ASN1Dump;
|
|||
|
||||
/**
|
||||
* Takes Kerberos ticket and wraps into a SPNEGO token. Leaving some optional fields out.
|
||||
* Uses bouncycastle libs need a bcprov.jar
|
||||
*/
|
||||
public class BouncySpnegoTokenGenerator implements SpnegoTokenGenerator {
|
||||
private static final Log LOG = LogFactory.getLog(BouncySpnegoTokenGenerator.class);
|
||||
|
||||
private DERObjectIdentifier spnegoOid = new DERObjectIdentifier("1.3.6.1.5.5.2");
|
||||
private DERObjectIdentifier kerbOid = new DERObjectIdentifier("1.2.840.113554.1.2.2");
|
||||
private final Log log = LogFactory.getLog(getClass());
|
||||
|
||||
private final DERObjectIdentifier spnegoOid;
|
||||
private final DERObjectIdentifier kerbOid;
|
||||
|
||||
public BouncySpnegoTokenGenerator() {
|
||||
super();
|
||||
this.spnegoOid = new DERObjectIdentifier("1.3.6.1.5.5.2");
|
||||
this.kerbOid = new DERObjectIdentifier("1.2.840.113554.1.2.2");
|
||||
}
|
||||
|
||||
public byte [] generateSpnegoDERObject(byte [] kerbTicket) throws IOException {
|
||||
LOG.debug("enter: generateSpnegoDERObject(byte [] kerbTicket)");
|
||||
DEROctetString ourKerberosTicket = new DEROctetString(kerbTicket);
|
||||
|
||||
DERSequence kerbOidSeq = new DERSequence(kerbOid);
|
||||
DERTaggedObject tagged0 = new DERTaggedObject(0, kerbOidSeq);
|
||||
// DERBitString bits = new DERBitString(new byte[]{0x01});
|
||||
// DERTaggedObject tagged1 = new DERTaggedObject(1, bits);
|
||||
DERTaggedObject tagged2 = new DERTaggedObject(2, ourKerberosTicket);
|
||||
ASN1EncodableVector v = new ASN1EncodableVector();
|
||||
v.add(tagged0);
|
||||
// v.add(tagged1);
|
||||
v.add(tagged2);
|
||||
DERSequence seq = new DERSequence(v);
|
||||
DERTaggedObject taggedSpnego = new DERTaggedObject(0, seq);
|
||||
|
@ -90,8 +92,14 @@ public class BouncySpnegoTokenGenerator implements SpnegoTokenGenerator {
|
|||
byte[] app = out.toByteArray();
|
||||
ASN1InputStream in = new ASN1InputStream(app);
|
||||
|
||||
if( LOG.isDebugEnabled() ){
|
||||
dumpToken(app);
|
||||
if (log.isDebugEnabled() ){
|
||||
int skip = 12;
|
||||
byte [] manipBytes = new byte[app.length - skip];
|
||||
for(int i=skip; i < app.length; i++){
|
||||
manipBytes[i-skip] = app[i];
|
||||
}
|
||||
ASN1InputStream ourSpnego = new ASN1InputStream( manipBytes );
|
||||
log.debug(ASN1Dump.dumpAsString(ourSpnego.readObject()));
|
||||
}
|
||||
|
||||
return in.readObject().getDEREncoded();
|
||||
|
@ -118,14 +126,4 @@ public class BouncySpnegoTokenGenerator implements SpnegoTokenGenerator {
|
|||
return out.toByteArray();
|
||||
}
|
||||
|
||||
protected void dumpToken(byte [] token) throws IOException{
|
||||
int skip = 12;
|
||||
byte [] manipBytes = new byte[token.length - skip];
|
||||
for(int i=skip; i < token.length; i++){
|
||||
manipBytes[i-skip] = token[i];
|
||||
}
|
||||
ASN1InputStream ourSpnego = new ASN1InputStream( manipBytes );
|
||||
System.out.println(ASN1Dump.dumpAsString( ourSpnego.readObject() ) );
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue