ServerCredentialCallback gssCredentialCallback = new ServerCredentialCallback(GSSKerberosCredential.class); try { saslGssapi.trace("Obtaining GSSCredential for the service from callback handler..."); callbackHandler.handle(new Callback[] { gssCredentialCallback }); ourCredential = gssCredentialCallback.applyToCredential(GSSKerberosCredential.class, GSSKerberosCredential::getGssCredential); } catch (IOException e) { throw saslGssapi.mechCallbackHandlerFailedForUnknownReason(e).toSaslException();
final String algorithmName = credentialCallback.getAlgorithm(); if (algorithmName != null) { if (credentialCallback.isCredentialTypeSupported(X509CertificateChainPrivateCredential.class, algorithmName)) { final String alias = keyManager.chooseServerAlias(algorithmName, null, null); if (alias != null) { final PrivateKey privateKey = keyManager.getPrivateKey(alias); if (certificateChain != null && certificateChain.length != 0) { credentialCallback.setCredential(new X509CertificateChainPrivateCredential(privateKey, certificateChain)); iterator.remove();
public SaslServer createSaslServer(final String mechanism, final String protocol, final String serverName, final Map<String, ?> props, final CallbackHandler cbh) throws SaslException { return delegate.createSaslServer(mechanism, protocol, serverName, props, callbacks -> { ArrayList<Callback> list = new ArrayList<>(Arrays.asList(callbacks)); final Iterator<Callback> iterator = list.iterator(); while (iterator.hasNext()) { Callback callback = iterator.next(); if (callback instanceof ServerCredentialCallback) { final ServerCredentialCallback credentialCallback = (ServerCredentialCallback) callback; if (credentialCallback.isCredentialSupported(credential)) { credentialCallback.setCredential(credential); iterator.remove(); } } } if (!list.isEmpty()) { cbh.handle(list.toArray(new Callback[list.size()])); } }); } }
final Class<? extends Credential> credentialType = serverCredentialCallback.getCredentialType(); final String algorithm = serverCredentialCallback.getAlgorithm(); final AlgorithmParameterSpec parameterSpec = serverCredentialCallback.getParameterSpec(); if (credential != null) { log.tracef("Handling ServerCredentialCallback: successfully obtained credential type type=%s, algorithm=%s, params=%s", credentialType, algorithm, parameterSpec); serverCredentialCallback.setCredential(credential); handleOne(callbacks, idx + 1);
ServerCredentialCallback credentialCallback = new ServerCredentialCallback(X509CertificateChainPrivateCredential.class, keyType(signature.getAlgorithm())); final X509CertificateChainPrivateCredential serverCertChainPrivateCredential = credentialCallback.getCredential(X509CertificateChainPrivateCredential.class); if (serverCertChainPrivateCredential != null) { serverCertChain = serverCertChainPrivateCredential.getCertificateChain();
final Class<? extends Credential> credentialType = serverCredentialCallback.getCredentialType(); final String algorithm = serverCredentialCallback.getAlgorithm(); final AlgorithmParameterSpec parameterSpec = serverCredentialCallback.getParameterSpec(); if (credential != null) { log.tracef("Handling ServerCredentialCallback: successfully obtained credential type type=%s, algorithm=%s, params=%s", credentialType, algorithm, parameterSpec); serverCredentialCallback.setCredential(credential); handleOne(callbacks, idx + 1);
ServerCredentialCallback credentialCallback = new ServerCredentialCallback(X509CertificateChainPrivateCredential.class, keyType(signature.getAlgorithm())); final X509CertificateChainPrivateCredential serverCertChainPrivateCredential = credentialCallback.getCredential(X509CertificateChainPrivateCredential.class); if (serverCertChainPrivateCredential != null) { serverCertChain = serverCertChainPrivateCredential.getCertificateChain();
ServerCredentialCallback credentialCallback = new ServerCredentialCallback(GSSKerberosCredential.class); credential = credentialCallback.applyToCredential(GSSKerberosCredential.class, GSSKerberosCredential::getGssCredential); } catch (IOException e) { throw saslGs2.mechCallbackHandlerFailedForUnknownReason(e).toSaslException();
final Class<? extends Credential> credentialType = serverCredentialCallback.getCredentialType(); final String algorithm = serverCredentialCallback.getAlgorithm(); final AlgorithmParameterSpec parameterSpec = serverCredentialCallback.getParameterSpec(); if (credential != null) { log.tracef("Handling ServerCredentialCallback: successfully obtained credential type type=%s, algorithm=%s, params=%s", credentialType, algorithm, parameterSpec); serverCredentialCallback.setCredential(credential); handleOne(callbacks, idx + 1);
final String algorithmName = credentialCallback.getAlgorithm(); if (algorithmName != null) { if (credentialCallback.isCredentialTypeSupported(X509CertificateChainPrivateCredential.class, algorithmName)) { final String alias = keyManager.chooseServerAlias(algorithmName, null, null); if (alias != null) { final PrivateKey privateKey = keyManager.getPrivateKey(alias); if (certificateChain != null && certificateChain.length != 0) { credentialCallback.setCredential(new X509CertificateChainPrivateCredential(privateKey, certificateChain)); iterator.remove();
ServerCredentialCallback credentialCallback = new ServerCredentialCallback(X509CertificateChainPrivateCredential.class, keyType(signature.getAlgorithm())); final X509CertificateChainPrivateCredential serverCertChainPrivateCredential = credentialCallback.getCredential(X509CertificateChainPrivateCredential.class); if (serverCertChainPrivateCredential != null) { serverCertChain = serverCertChainPrivateCredential.getCertificateChain();
public SaslServer createSaslServer(final String mechanism, final String protocol, final String serverName, final Map<String, ?> props, final CallbackHandler cbh) throws SaslException { return delegate.createSaslServer(mechanism, protocol, serverName, props, callbacks -> { ArrayList<Callback> list = new ArrayList<>(Arrays.asList(callbacks)); final Iterator<Callback> iterator = list.iterator(); while (iterator.hasNext()) { Callback callback = iterator.next(); if (callback instanceof ServerCredentialCallback) { final ServerCredentialCallback credentialCallback = (ServerCredentialCallback) callback; if (credentialCallback.isCredentialSupported(credential)) { credentialCallback.setCredential(credential); iterator.remove(); } } } if (!list.isEmpty()) { cbh.handle(list.toArray(new Callback[list.size()])); } }); } }
spnegoContext = new SpnegoContext(); ServerCredentialCallback gssCredentialCallback = new ServerCredentialCallback(GSSKerberosCredential.class); final GSSCredential serviceGssCredential; httpSpnego.trace("Obtaining GSSCredential for the service from callback handler..."); callbackHandler.handle(new Callback[] { gssCredentialCallback }); serviceGssCredential = gssCredentialCallback.applyToCredential(GSSKerberosCredential.class, GSSKerberosCredential::getGssCredential); kerberosTicket = gssCredentialCallback.applyToCredential(GSSKerberosCredential.class, GSSKerberosCredential::getKerberosTicket); } catch (IOException | UnsupportedCallbackException e) { throw httpSpnego.mechCallbackHandlerFailedForUnknownReason(e).toHttpAuthenticationException();
final Class<? extends Credential> credentialType = serverCredentialCallback.getCredentialType(); final String algorithm = serverCredentialCallback.getAlgorithm(); final AlgorithmParameterSpec parameterSpec = serverCredentialCallback.getParameterSpec(); if (credential != null) { log.tracef("Handling ServerCredentialCallback: successfully obtained credential type type=%s, algorithm=%s, params=%s", credentialType, algorithm, parameterSpec); serverCredentialCallback.setCredential(credential); handleOne(callbacks, idx + 1);
final String algorithmName = credentialCallback.getAlgorithm(); if (algorithmName != null) { if (credentialCallback.isCredentialTypeSupported(X509CertificateChainPrivateCredential.class, algorithmName)) { final String alias = keyManager.chooseServerAlias(algorithmName, null, null); if (alias != null) { final PrivateKey privateKey = keyManager.getPrivateKey(alias); if (certificateChain != null && certificateChain.length != 0) { credentialCallback.setCredential(new X509CertificateChainPrivateCredential(privateKey, certificateChain)); iterator.remove();
ServerCredentialCallback credentialCallback = new ServerCredentialCallback(X509CertificateChainPrivateCredential.class, keyType(signature.getAlgorithm())); final X509CertificateChainPrivateCredential serverCertChainPrivateCredential = credentialCallback.getCredential(X509CertificateChainPrivateCredential.class); if (serverCertChainPrivateCredential != null) { serverCertChain = serverCertChainPrivateCredential.getCertificateChain();
public SaslServer createSaslServer(final String mechanism, final String protocol, final String serverName, final Map<String, ?> props, final CallbackHandler cbh) throws SaslException { return delegate.createSaslServer(mechanism, protocol, serverName, props, callbacks -> { ArrayList<Callback> list = new ArrayList<>(Arrays.asList(callbacks)); final Iterator<Callback> iterator = list.iterator(); while (iterator.hasNext()) { Callback callback = iterator.next(); if (callback instanceof ServerCredentialCallback) { final ServerCredentialCallback credentialCallback = (ServerCredentialCallback) callback; if (credentialCallback.isCredentialSupported(credential)) { credentialCallback.setCredential(credential); iterator.remove(); } } } if (!list.isEmpty()) { cbh.handle(list.toArray(new Callback[list.size()])); } }); } }
ServerCredentialCallback gssCredentialCallback = new ServerCredentialCallback(GSSKerberosCredential.class); try { saslGssapi.trace("Obtaining GSSCredential for the service from callback handler..."); callbackHandler.handle(new Callback[] { gssCredentialCallback }); ourCredential = gssCredentialCallback.applyToCredential(GSSKerberosCredential.class, GSSKerberosCredential::getGssCredential); } catch (IOException e) { throw saslGssapi.mechCallbackHandlerFailedForUnknownReason(e).toSaslException();
final String algorithmName = credentialCallback.getAlgorithm(); if (algorithmName != null) { if (credentialCallback.isCredentialTypeSupported(X509CertificateChainPrivateCredential.class, algorithmName)) { final String alias = keyManager.chooseServerAlias(algorithmName, null, null); if (alias != null) { final PrivateKey privateKey = keyManager.getPrivateKey(alias); if (certificateChain != null && certificateChain.length != 0) { credentialCallback.setCredential(new X509CertificateChainPrivateCredential(privateKey, certificateChain)); iterator.remove();
public SaslServer createSaslServer(final String mechanism, final String protocol, final String serverName, final Map<String, ?> props, final CallbackHandler cbh) throws SaslException { return delegate.createSaslServer(mechanism, protocol, serverName, props, callbacks -> { ArrayList<Callback> list = new ArrayList<>(Arrays.asList(callbacks)); final Iterator<Callback> iterator = list.iterator(); while (iterator.hasNext()) { Callback callback = iterator.next(); if (callback instanceof ServerCredentialCallback) { final ServerCredentialCallback credentialCallback = (ServerCredentialCallback) callback; if (credentialCallback.isCredentialSupported(credential)) { credentialCallback.setCredential(credential); iterator.remove(); } } } if (!list.isEmpty()) { cbh.handle(list.toArray(new Callback[list.size()])); } }); } }