public byte[] evaluateChallenge(byte[] challenge) throws SaslException { return saslClient.evaluateChallenge(challenge); }
public byte[] evaluateChallenge(final byte[] challenge) throws SaslException { return delegate.evaluateChallenge(challenge); }
@Override public byte[] run() throws Exception { return saslClient.evaluateChallenge(challengeBytes); } });
public byte[] run() throws SaslException { LOG.debug("saslClient.evaluateChallenge(len="+saslToken.length+")"); return saslClient.evaluateChallenge(saslToken); } });
public byte[] run() throws SaslException { LOG.debug("saslClient.evaluateChallenge(len=" + saslToken.length + ")"); return saslClient.evaluateChallenge(saslToken); } });
public byte[] run() throws SaslException { LOG.debug("saslClient.evaluateChallenge(len="+saslToken.length+")"); return saslClient.evaluateChallenge(saslToken); } });
public byte[] run() throws SaslException { LOG.debug("saslClient.evaluateChallenge(len=" + saslToken.length + ")"); return saslClient.evaluateChallenge(saslToken); } });
private byte[] evaluateChallenge(final byte[] challenge) throws SaslException { if (subject != null) { try { return Subject.doAs(subject, (PrivilegedExceptionAction<byte[]>)() -> client.evaluateChallenge(challenge)); } catch (PrivilegedActionException e) { Throwable cause = e.getCause(); if (cause instanceof SaslException) { throw (SaslException)cause; } else { throw new RuntimeException(cause); } } } else { return client.evaluateChallenge(challenge); } } }
@Override protected byte[] evaluateChallenge(byte[] challenge) throws SmackException { try { if (challenge != null) { return sc.evaluateChallenge(challenge); } else { return sc.evaluateChallenge(new byte[0]); } } catch (SaslException e) { throw new SmackException(e); } }
public byte[] evaluateChallenge(final byte[] challenge) throws SaslException { try { return doPrivileged((PrivilegedExceptionAction<byte[]>) () -> delegate.evaluateChallenge(challenge), accessControlContext); } catch (PrivilegedActionException pae) { try { throw pae.getCause(); } catch (SaslException | RuntimeException | Error e) { throw e; } catch (Throwable throwable) { throw new UndeclaredThrowableException(throwable); } } }
public byte[] run() { try { byte[] retval = saslClient.evaluateChallenge(fSaslTokenMessage .getSaslToken()); return retval; } catch (SaslException e) { LOG.error("saslResponse: Failed to respond to SASL server's token:", e); throw new RuntimeException(e); } } });
@Override protected SaslMessage update(SaslMessage challenge) throws IOException { byte[] response = client.evaluateChallenge(challenge.payload); return response != null ? new SaslMessage(response) : null; }
/** * Respond to server's SASL token. * * @param saslTokenMessage contains server's SASL token * @return client's response SASL token */ public byte[] saslResponse(SaslMessageToken saslTokenMessage) { try { return saslClient.evaluateChallenge(saslTokenMessage.getSaslToken()); } catch (SaslException e) { LOG.error( "saslResponse: Failed to respond to SASL server's token:", e); return null; } }
public byte[] getInitialResponse() throws SaslException { if (saslClient.hasInitialResponse()) { return saslClient.evaluateChallenge(EMPTY_TOKEN); } else { return EMPTY_TOKEN; } }
public byte[] evaluate(byte[] buf) throws SaslException { if (client != null) return client.evaluateChallenge(buf); else return server.evaluateResponse(buf); }
void sendHello(Channel c) throws Exception { byte[] hello = client.hasInitialResponse() ? client.evaluateChallenge(new byte[0]) : new byte[0]; c.writeAndFlush(new SaslMessage(clientId, hello)).addListener(future -> { if (!future.isSuccess()) { LOG.error("Failed to send test message to HiveServer2", future.cause()); onError(future.cause()); } }); } }
@Override protected byte[] getAuthenticationText() throws SmackException { if (sc.hasInitialResponse()) { try { return sc.evaluateChallenge(new byte[0]); } catch (SaslException e) { throw new SmackException(e); } } return null; }
@Override public Void run() { try { sendSaslContinueAsync(saslStartDocument.getInt32("conversationId"), saslClient.evaluateChallenge((result.getBinary("payload")).getData()), connection, Continuator.this); } catch (SaslException e) { throw wrapException(e); } return null; } });
private byte[] createSaslToken(final byte[] saslToken, boolean isInitial) throws SaslException { if (saslToken == null) throw new IllegalSaslStateException("Error authenticating with the Kafka Broker: received a `null` saslToken."); try { if (isInitial && !saslClient.hasInitialResponse()) return saslToken; else return Subject.doAs(subject, (PrivilegedExceptionAction<byte[]>) () -> saslClient.evaluateChallenge(saslToken)); } catch (PrivilegedActionException e) { String error = "An error: (" + e + ") occurred when evaluating SASL token received from the Kafka Broker."; KerberosError kerberosError = KerberosError.fromException(e); // Try to provide hints to use about what went wrong so they can fix their configuration. if (kerberosError == KerberosError.SERVER_NOT_FOUND) { error += " This may be caused by Java's being unable to resolve the Kafka Broker's" + " hostname correctly. You may want to try to adding" + " '-Dsun.net.spi.nameservice.provider.1=dns,sun' to your client's JVMFLAGS environment." + " Users must configure FQDN of kafka brokers when authenticating using SASL and" + " `socketChannel.socket().getInetAddress().getHostName()` must match the hostname in `principal/hostname@realm`"; } error += " Kafka Client will go to AUTHENTICATION_FAILED state."; //Unwrap the SaslException inside `PrivilegedActionException` Throwable cause = e.getCause(); // Treat transient Kerberos errors as non-fatal SaslExceptions that are processed as I/O exceptions // and all other failures as fatal SaslAuthenticationException. if (kerberosError != null && kerberosError.retriable()) throw new SaslException(error, cause); else throw new SaslAuthenticationException(error, cause); } }
@Override public SaslMessage getInitialMessage(String channelId) throws SaslException { byte[] initiateSaslResponse = null; if (mSaslClient.hasInitialResponse()) { initiateSaslResponse = mSaslClient.evaluateChallenge(S_PLAIN_INITIATE_CHANNEL); } SaslMessage.Builder initialResponse = SaslMessage.newBuilder().setMessageType(SaslMessageType.CHALLENGE) .setAuthenticationName(AuthType.SIMPLE.getAuthName()); if (initiateSaslResponse != null) { initialResponse.setMessage(ByteString.copyFrom(initiateSaslResponse)); } initialResponse.setClientId(channelId); return initialResponse.build(); } }