private void processMessage(final Message<JsonObject> message) { final JsonObject body = message.body(); authenticate(body, validation -> { if (validation.succeeded()) { message.reply(AuthenticationConstants.getAuthenticationReply(validation.result().getToken())); } else { message.fail(ERROR_CODE_AUTHENTICATION_FAILED, validation.cause().getMessage()); } }); }
private void verify(final String mechanism, final byte[] saslResponse, final Handler<AsyncResult<HonoUser>> authResultHandler) { final JsonObject authRequest = AuthenticationConstants.getAuthenticationRequest(mechanism, saslResponse); if (peerCertificateChain != null) { authRequest.put(AuthenticationConstants.FIELD_SUBJECT_DN, peerCertificateChain[0].getSubjectDN().getName()); } authenticationService.authenticate(authRequest, authResultHandler); } }
@Override public void verifyExternal(final String authzid, final String subjectDn, final Handler<AsyncResult<HonoUser>> authenticationResultHandler) { if (subjectDn == null || subjectDn.isEmpty()) { authenticationResultHandler.handle(Future.failedFuture("missing subject DN")); } else { final String commonName = AuthenticationConstants.getCommonName(subjectDn); if (commonName == null) { authenticationResultHandler.handle(Future.failedFuture("could not determine authorization ID for subject DN")); } else { final JsonObject user = getUser(commonName, AuthenticationConstants.MECHANISM_EXTERNAL); if (user == null) { authenticationResultHandler.handle(Future.failedFuture(UNAUTHORIZED)); } else { verify(commonName, user, authzid, authenticationResultHandler); } } } }
final String[] fields = AuthenticationConstants.parseSaslResponse(saslResponse); final String authzid = fields[0]; final String authcid = fields[1];
final String[] fields = AuthenticationConstants.parseSaslResponse(saslResponse); final String authzid = fields[0]; final String authcid = fields[1];
final String[] fields = AuthenticationConstants.parseSaslResponse(saslResponse); final UsernamePasswordCredentials credentials = UsernamePasswordCredentials .create(fields[1], fields[2], config.isSingleTenant());
private void verify(final String mechanism, final byte[] saslResponse, final Handler<AsyncResult<HonoUser>> authResultHandler) { final JsonObject authRequest = AuthenticationConstants.getAuthenticationRequest(mechanism, saslResponse); if (peerCertificateChain != null) { authRequest.put(AuthenticationConstants.FIELD_SUBJECT_DN, peerCertificateChain[0].getSubjectDN().getName()); } authenticationService.authenticate(authRequest, authResultHandler); } }
private void processMessage(final Message<JsonObject> message) { final JsonObject body = message.body(); authenticate(body, validation -> { if (validation.succeeded()) { message.reply(AuthenticationConstants.getAuthenticationReply(validation.result().getToken())); } else { message.fail(ERROR_CODE_AUTHENTICATION_FAILED, validation.cause().getMessage()); } }); }