@Override public CallbackHandler createCallbackHandler(final Callback callback) { assert callback != null; // TODO switch to use the elytron security domain once the callback has that info available. final String securityDomainName = callback.getDomain(); // get domain reference from the service container and create the callback handler using the domain. if (securityDomainName != null) { final ServiceContainer container = this.currentServiceContainer(); final ServiceName securityDomainServiceName = SECURITY_DOMAIN_RUNTIME_CAPABILITY.getCapabilityServiceName(securityDomainName); final SecurityDomain securityDomain = (SecurityDomain) container.getRequiredService(securityDomainServiceName).getValue(); return new ElytronCallbackHandler(securityDomain, callback); } // TODO use subsystem logger for the exception. throw ConnectorLogger.ROOT_LOGGER.invalidCallbackSecurityDomain(); }
if (this.mappings != null && this.mappings.isMappingRequired()) callbacks = this.mappings.mapCallbacks(callbacks);
workManager.getCallbackSecurity().getDomain() != null) String scDomain = workManager.getCallbackSecurity().getDomain(); if (workManager.getCallbackSecurity().getDefaultPrincipal() != null) Principal defaultPrincipal = workManager.getCallbackSecurity().getDefaultPrincipal(); if (workManager.getCallbackSecurity().getDefaultGroups() != null) String[] defaultGroups = workManager.getCallbackSecurity().getDefaultGroups();
@Override public void stop(StopContext context) { value.shutdown(); try { if (callback != null) callback.stop(); } catch (Throwable t) { ROOT_LOGGER.debug(t.getMessage(), t); } }
/** * {@inheritDoc} */ public void handle(javax.security.auth.callback.Callback[] callbacks) throws UnsupportedCallbackException, IOException { if (log.isTraceEnabled()) log.tracef("handle(%s)", Arrays.toString(callbacks)); if (callbacks != null && callbacks.length > 0) { if (mappings != null && mappings.isMappingRequired()) { callbacks = mappings.mapCallbacks(callbacks); } JASPICallbackHandler jaspi = new JASPICallbackHandler(); jaspi.handle(callbacks); } }
@Override public CallbackHandler createCallbackHandler(final Callback callback) { assert callback != null; // TODO switch to use the elytron security domain once the callback has that info available. final String securityDomainName = callback.getDomain(); // get domain reference from the service container and create the callback handler using the domain. if (securityDomainName != null) { final ServiceContainer container = this.currentServiceContainer(); final ServiceName securityDomainServiceName = SECURITY_DOMAIN_RUNTIME_CAPABILITY.getCapabilityServiceName(securityDomainName); final SecurityDomain securityDomain = (SecurityDomain) container.getRequiredService(securityDomainServiceName).getValue(); return new ElytronCallbackHandler(securityDomain, callback); } // TODO use subsystem logger for the exception. throw ConnectorLogger.ROOT_LOGGER.invalidCallbackSecurityDomain(); }
if (this.mappings != null && this.mappings.isMappingRequired()) callbacks = this.mappings.mapCallbacks(callbacks);