private static Function<String, HttpAuthenticationFactory> toHttpAuthenticationFactoryFunction(final Supplier<SecurityDomain> securityDomainSupplier) { final HttpServerAuthenticationMechanismFactory mechanismFactory = new FilterServerMechanismFactory(new ServerMechanismFactoryImpl(), SERVLET_MECHANISM); return (realmName) -> HttpAuthenticationFactory.builder().setFactory(mechanismFactory) .setSecurityDomain(securityDomainSupplier.get()) .setMechanismConfigurationSelector( MechanismConfigurationSelector.constantSelector(realmName == null ? MechanismConfiguration.EMPTY : MechanismConfiguration.builder() .addMechanismRealm( MechanismRealmConfiguration.builder().setRealmName(realmName).build()) .build())) .build(); }
.setPreRealmRewriter(preRealmRewriter) .setRealmMapper(new RealmMapper() { @Override public String getRealmMapping(Principal principal, Evidence evidence) { .addMechanismRealm(MechanismRealmConfiguration.builder().setRealmName(name).build()) .build()); for (Entry<String, String> currentOption : currentRegistration.getValue().getConfigurationOptions().entrySet()) { switch (currentOption.getKey()) { if (AuthMechanism.KERBEROS.equals(mechanism)) { Builder builder = MechanismConfiguration.builder() .setPreRealmRewriter(resolved.getPreRealmRewriter()) .setRealmMapper(resolved.getRealmMapper()); for (String s : resolved.getMechanismRealmNames()) { builder.addMechanismRealm(resolved.getMechanismRealmConfiguration(s)); builder.setServerCredential((SecurityFactory<Credential>) () -> getGSSKerberosCredential(protocol, mi.getHostName())); return builder.build();
.setPreRealmRewriter(preRealmRewriter) .setRealmMapper(new RealmMapper() { @Override public String getRealmMapping(Principal principal, Evidence evidence) { .addMechanismRealm(MechanismRealmConfiguration.builder().setRealmName(name).build()) .build()); for (Entry<String, String> currentOption : currentRegistration.getValue().getConfigurationOptions().entrySet()) { switch (currentOption.getKey()) { if (AuthMechanism.KERBEROS.equals(mechanism)) { Builder builder = MechanismConfiguration.builder() .setPreRealmRewriter(resolved.getPreRealmRewriter()) .setRealmMapper(resolved.getRealmMapper()); for (String s : resolved.getMechanismRealmNames()) { builder.addMechanismRealm(resolved.getMechanismRealmConfiguration(s)); builder.setServerCredential((SecurityFactory<Credential>) () -> getGSSKerberosCredential(protocol, mi.getHostName())); return builder.build();
MechanismConfiguration.Builder mechBuilder = MechanismConfiguration.builder(); if (preRealmRewriter != null) mechBuilder.setPreRealmRewriter(preRealmRewriter); if (postRealmRewriter != null) mechBuilder.setPostRealmRewriter(postRealmRewriter); if (finalRewriter != null) mechBuilder.setFinalRewriter(finalRewriter); if (realmMapper != null) mechBuilder.setRealmMapper(realmMapper); builder.setMechanismConfigurationSelector( MechanismConfigurationSelector.constantSelector(mechBuilder.build()));
.setPreRealmRewriter(preRealmRewriter) .setRealmMapper((principal, evidence) -> { if (domainManagedServersCallback != null && principal.getName().startsWith(DomainManagedServerCallbackHandler.DOMAIN_SERVER_AUTH_PREFIX)) { return DomainManagedServerCallbackHandler.DOMAIN_SERVER_AUTH_REALM; .addMechanismRealm(MechanismRealmConfiguration.builder().setRealmName(name).build()) .build();
.setPreRealmRewriter(preRealmRewriter) .setRealmMapper((principal, evidence) -> { if (domainManagedServersCallback != null && principal.getName().startsWith(DomainManagedServerCallbackHandler.DOMAIN_SERVER_AUTH_PREFIX)) { return DomainManagedServerCallbackHandler.DOMAIN_SERVER_AUTH_REALM; .addMechanismRealm(MechanismRealmConfiguration.builder().setRealmName(name).build()) .build();
static void buildMechanismConfiguration(List<ResolvedMechanismConfiguration> resolvedMechanismConfigurations, MechanismAuthenticationFactory.Builder factoryBuilder) { ArrayList<MechanismConfigurationSelector> mechanismConfigurationSelectors = new ArrayList<>(resolvedMechanismConfigurations.size()); for (ResolvedMechanismConfiguration resolvedMechanismConfiguration : resolvedMechanismConfigurations) { MechanismConfiguration.Builder builder = MechanismConfiguration.builder(); setPrincipalTransformer(resolvedMechanismConfiguration.preRealmPrincipalTranformer, builder::setPreRealmRewriter); setPrincipalTransformer(resolvedMechanismConfiguration.postRealmPrincipalTransformer, builder::setPostRealmRewriter); setPrincipalTransformer(resolvedMechanismConfiguration.finalPrincipalTransformer, builder::setFinalRewriter); setRealmMapper(resolvedMechanismConfiguration.realmMapper, builder::setRealmMapper); setSecurityFactory(resolvedMechanismConfiguration.securityFactory, builder::setServerCredential); for (Entry<String, ResolvedMechanismRealmConfiguration> currentMechRealmEntry : resolvedMechanismConfiguration.mechanismRealms.entrySet()) { MechanismRealmConfiguration.Builder mechRealmBuilder = MechanismRealmConfiguration.builder(); mechRealmBuilder.setRealmName(currentMechRealmEntry.getKey()); ResolvedMechanismRealmConfiguration resolvedMechanismRealmConfiguration = currentMechRealmEntry.getValue(); setPrincipalTransformer(resolvedMechanismRealmConfiguration.preRealmPrincipalTranformer, mechRealmBuilder::setPreRealmRewriter); setPrincipalTransformer(resolvedMechanismRealmConfiguration.postRealmPrincipalTransformer, mechRealmBuilder::setPostRealmRewriter); setPrincipalTransformer(resolvedMechanismRealmConfiguration.finalPrincipalTransformer, mechRealmBuilder::setFinalRewriter); setRealmMapper(resolvedMechanismRealmConfiguration.realmMapper, mechRealmBuilder::setRealmMapper); builder.addMechanismRealm(mechRealmBuilder.build()); } mechanismConfigurationSelectors.add(MechanismConfigurationSelector.predicateSelector(resolvedMechanismConfiguration.selectionPredicate, builder.build())); } factoryBuilder.setMechanismConfigurationSelector(MechanismConfigurationSelector.aggregate(mechanismConfigurationSelectors.toArray(new MechanismConfigurationSelector[mechanismConfigurationSelectors.size()]))); }
/** * Set a single server credential factory. Any previously set credential source will be overwritten. * * @param credentialFactory the credential factory to set (must not be {@code null}) * @return this builder */ public Builder setServerCredential(SecurityFactory<Credential> credentialFactory) { checkNotNullParam("credential", credentialFactory); return setServerCredentialSource(CredentialSource.fromSecurityFactory(credentialFactory)); }
/** * Set a single server credential. Any previously set credential source will be overwritten. * * @param credential the credential to set (must not be {@code null}) * @return this builder */ public Builder setServerCredential(Credential credential) { checkNotNullParam("credential", credential); return setServerCredentialSource(IdentityCredentials.NONE.withCredential(credential)); }
/** * Obtain a new {@link Builder} capable of building a {@link MechanismConfiguration}. * * @return a new {@link Builder} capable of building a {@link MechanismConfiguration}. */ public static Builder builder() { return new Builder(); }
/** * Set a single server credential. Any previously set credential source will be overwritten. * * @param credential the credential to set (must not be {@code null}) * @return this builder */ public Builder setServerCredential(Credential credential) { checkNotNullParam("credential", credential); return setServerCredentialSource(IdentityCredentials.NONE.withCredential(credential)); }
/** * Set a single server credential factory. Any previously set credential source will be overwritten. * * @param credentialFactory the credential factory to set (must not be {@code null}) * @return this builder */ public Builder setServerCredential(SecurityFactory<Credential> credentialFactory) { checkNotNullParam("credential", credentialFactory); return setServerCredentialSource(CredentialSource.fromSecurityFactory(credentialFactory)); }
/** * Set a single server credential factory. Any previously set credential source will be overwritten. * * @param credentialFactory the credential factory to set (must not be {@code null}) * @return this builder */ public Builder setServerCredential(SecurityFactory<Credential> credentialFactory) { checkNotNullParam("credential", credentialFactory); return setServerCredentialSource(CredentialSource.fromSecurityFactory(credentialFactory)); }
/** * Obtain a new {@link Builder} capable of building a {@link MechanismConfiguration}. * * @return a new {@link Builder} capable of building a {@link MechanismConfiguration}. */ public static Builder builder() { return new Builder(); }
/** * Set a single server credential. Any previously set credential source will be overwritten. * * @param credential the credential to set (must not be {@code null}) * @return this builder */ public Builder setServerCredential(Credential credential) { checkNotNullParam("credential", credential); return setServerCredentialSource(IdentityCredentials.NONE.withCredential(credential)); }
private static Function<String, HttpAuthenticationFactory> toHttpAuthenticationFactoryFunction(final Supplier<SecurityDomain> securityDomainSupplier) { final HttpServerAuthenticationMechanismFactory mechanismFactory = new FilterServerMechanismFactory(new ServerMechanismFactoryImpl(), SERVLET_MECHANISM); return (realmName) -> HttpAuthenticationFactory.builder().setFactory(mechanismFactory) .setSecurityDomain(securityDomainSupplier.get()) .setMechanismConfigurationSelector( MechanismConfigurationSelector.constantSelector(realmName == null ? MechanismConfiguration.EMPTY : MechanismConfiguration.builder() .addMechanismRealm( MechanismRealmConfiguration.builder().setRealmName(realmName).build()) .build())) .build(); }
private static Function<String, HttpAuthenticationFactory> toHttpAuthenticationFactoryFunction(final Supplier<SecurityDomain> securityDomainSupplier) { final HttpServerAuthenticationMechanismFactory mechanismFactory = new FilterServerMechanismFactory(new ServerMechanismFactoryImpl(), SERVLET_MECHANISM); return (realmName) -> HttpAuthenticationFactory.builder().setFactory(mechanismFactory) .setSecurityDomain(securityDomainSupplier.get()) .setMechanismConfigurationSelector( MechanismConfigurationSelector.constantSelector(realmName == null ? MechanismConfiguration.EMPTY : MechanismConfiguration.builder() .addMechanismRealm( MechanismRealmConfiguration.builder().setRealmName(realmName).build()) .build())) .build(); }
/** * Obtain a new {@link Builder} capable of building a {@link MechanismConfiguration}. * * @return a new {@link Builder} capable of building a {@link MechanismConfiguration}. */ public static Builder builder() { return new Builder(); }
/** * Obtain a new {@link Builder} capable of building a {@link MechanismConfiguration}. * * @return a new {@link Builder} capable of building a {@link MechanismConfiguration}. */ public static Builder builder() { return new Builder(); }
/** * Set a single server credential factory. Any previously set credential source will be overwritten. * * @param credentialFactory the credential factory to set (must not be {@code null}) * @return this builder */ public Builder setServerCredential(SecurityFactory<Credential> credentialFactory) { checkNotNullParam("credential", credentialFactory); return setServerCredentialSource(CredentialSource.fromSecurityFactory(credentialFactory)); }