protected IdentityConfiguration buildIdentityConfiguration(IdentityConfigurationType identityConfigurationType) { IdentityConfiguration identityConfig = new IdentityConfiguration(); for (StoreConfigurationType storeConfigType : identityConfigurationType.getIdentityStoreConfigurations()) { identityConfig.addStoreConfiguration(buildStoreConfiguration(storeConfigType)); } if (identityConfigurationType.getPartitionStoreConfiguration() != null) { StoreConfiguration partitionStoreConfig = buildStoreConfiguration(identityConfigurationType.getPartitionStoreConfiguration()); identityConfig.addStoreConfiguration(partitionStoreConfig); } return identityConfig; }
@Override protected Builder<IdentityConfiguration> readFrom(IdentityConfiguration configuration) { this.identityStoresConfigurationBuilder.readFrom(configuration.getStoreConfiguration()); return this; }
private void logConfiguration(final Collection<IdentityConfiguration> configurations) { for (IdentityConfiguration identityConfiguration : configurations) { if (ROOT_LOGGER.isDebugEnabled()) { ROOT_LOGGER.debug(" Identity Management Configuration: ["); ROOT_LOGGER.debugf(" Name: %s", identityConfiguration.getName()); ROOT_LOGGER.debugf(" Identity Store Configuration: %s", identityConfiguration.getStoreConfiguration()); ROOT_LOGGER.debugf(" Supports Partition: %s", this.partitionManagementConfig != null && this.partitionManagementConfig.equals(identityConfiguration)); ROOT_LOGGER.debugf(" Supports Attribute: %s", this.attributeManagementConfig != null && this.attributeManagementConfig.equals(identityConfiguration)); ROOT_LOGGER.debugf(" Supports Credential: %s", identityConfiguration.supportsCredential()); ROOT_LOGGER.debugf(" Supports Permission: %s", identityConfiguration.supportsPermission()); List<Class<?>> supportedTypes = new ArrayList<Class<?>>(); for (IdentityStoreConfiguration storeConfiguration : identityConfiguration.getStoreConfiguration()) { supportedTypes.addAll(storeConfiguration.getSupportedTypes().keySet()); } ROOT_LOGGER.debugf(" Supported Types: %s", supportedTypes); ROOT_LOGGER.debug(" ]"); } } }
private boolean isPartitionSupported(final PartitionManager partitionManager) { for (IdentityConfiguration configuration : partitionManager.getConfigurations()) { if (configuration.supportsPartition()) { for (IdentityStoreConfiguration storeConfig : configuration.getStoreConfiguration()) { if (storeConfig.supportsType(Realm.class, IdentityStoreConfiguration.IdentityOperation.create)) { return true; } } } } return false; }
if (config.getRelationshipPolicy().isGlobalRelationshipSupported(relationshipClass) || config.getRelationshipPolicy().isSelfRelationshipSupported(relationshipClass)) { for (IdentityStoreConfiguration storeConfig : config.getStoreConfiguration()) { if (storeConfig.supportsType(relationshipClass, create) || Relationship.class.equals(relationshipClass)) { identityStores.add(getIdentityStoreAndInitializeContext(context, config, storeConfig)); IdentityConfiguration config = getConfigurationForPartition(context, partition); if (config.getRelationshipPolicy().isGlobalRelationshipSupported(relationshipClass)) { for (IdentityStoreConfiguration storeConfig : config.getStoreConfiguration()) { if (storeConfig.supportsType(relationshipClass, create) || Relationship.class.equals(relationshipClass)) { identityStores.add(getIdentityStoreAndInitializeContext(context, config, storeConfig));
@Produces @ApplicationScoped public IdentityManager createIdentityManager() { IdentityConfiguration identityConfig = new IdentityConfiguration(); IdentityManager identityManager = new DefaultIdentityManager(); identityManager.bootstrap(identityConfig, new DefaultIdentityStoreInvocationContextFactory(null, null)); return identityManager; }
@Override protected List<IdentityConfiguration> create() throws SecurityConfigurationException { List<IdentityConfiguration> configurations = new ArrayList<IdentityConfiguration>(); try { validate(); for (NamedIdentityConfigurationBuilder identityConfigBuilder : this.namedIdentityConfigurationBuilders.values()) { IdentityConfiguration configuration = identityConfigBuilder.create(); if (configurations.contains(configuration)) { throw MESSAGES.configMultipleConfigurationsFoundWithSameName(configuration.getName()); } boolean supportCredentials = false; for (IdentityStoreConfiguration storeConfiguration : configuration.getStoreConfiguration()) { if (storeConfiguration.supportsCredential()) { if (supportCredentials) { throw MESSAGES.configMultipleConfigurationsFoundWithCredentialSupport(); } supportCredentials = true; } } configurations.add(configuration); } } catch (Exception sce) { throw MESSAGES.configCouldNotCreateConfiguration(sce); } return configurations; }
for (IdentityStoreConfiguration storeConfig : configuration.getStoreConfiguration()) { if (storeConfig.supportsCredential()) { identityConfiguration = configuration; if (identityConfiguration.supportsCredential()) { for (IdentityStoreConfiguration storeConfig : identityConfiguration.getStoreConfiguration()) { if (storeConfig.supportsCredential()) { for (@SuppressWarnings("rawtypes") Class<? extends CredentialHandler> handlerClass : storeConfig.getCredentialHandlers()) {
if (config.getRelationshipPolicy().isGlobalRelationshipSupported(relationshipClass) || config.getRelationshipPolicy().isSelfRelationshipSupported(relationshipClass)) { for (IdentityStoreConfiguration storeConfig : config.getStoreConfiguration()) { if (storeConfig.supportsType(relationshipClass, create) || Relationship.class.equals(relationshipClass)) { identityStores.add(getIdentityStoreAndInitializeContext(context, config, storeConfig)); IdentityConfiguration config = getConfigurationForPartition(context, partition); if (config.getRelationshipPolicy().isGlobalRelationshipSupported(relationshipClass)) { for (IdentityStoreConfiguration storeConfig : config.getStoreConfiguration()) { if (storeConfig.supportsType(relationshipClass, create) || Relationship.class.equals(relationshipClass)) { identityStores.add(getIdentityStoreAndInitializeContext(context, config, storeConfig));
private boolean isPartitionSupported(final PartitionManager partitionManager) { for (IdentityConfiguration configuration : partitionManager.getConfigurations()) { if (configuration.supportsPartition()) { for (IdentityStoreConfiguration storeConfig : configuration.getStoreConfiguration()) { if (storeConfig.supportsType(Realm.class, IdentityStoreConfiguration.IdentityOperation.create)) { return true; } } } } return false; }
@Override protected IdentityConfiguration create() { return new IdentityConfiguration(this.name, this.identityStoresConfigurationBuilder.create(), new RelationshipPolicy(this.identityStoresConfigurationBuilder.getSelfRelationships(), this.identityStoresConfigurationBuilder.getGlobalRelationships())); }
@Override protected List<IdentityConfiguration> create() throws SecurityConfigurationException { List<IdentityConfiguration> configurations = new ArrayList<IdentityConfiguration>(); try { validate(); for (NamedIdentityConfigurationBuilder identityConfigBuilder : this.namedIdentityConfigurationBuilders.values()) { IdentityConfiguration configuration = identityConfigBuilder.create(); if (configurations.contains(configuration)) { throw MESSAGES.configMultipleConfigurationsFoundWithSameName(configuration.getName()); } boolean supportCredentials = false; for (IdentityStoreConfiguration storeConfiguration : configuration.getStoreConfiguration()) { if (storeConfiguration.supportsCredential()) { if (supportCredentials) { throw MESSAGES.configMultipleConfigurationsFoundWithCredentialSupport(); } supportCredentials = true; } } configurations.add(configuration); } } catch (Exception sce) { throw MESSAGES.configCouldNotCreateConfiguration(sce); } return configurations; }
for (IdentityStoreConfiguration storeConfig : configuration.getStoreConfiguration()) { if (storeConfig.supportsCredential()) { identityConfiguration = configuration; if (identityConfiguration.supportsCredential()) { for (IdentityStoreConfiguration storeConfig : identityConfiguration.getStoreConfiguration()) { if (storeConfig.supportsCredential()) { for (@SuppressWarnings("rawtypes") Class<? extends CredentialHandler> handlerClass : storeConfig.getCredentialHandlers()) {
@Override public IdentityManager getIdentityManager() { IdentityConfiguration config = new IdentityConfiguration(); config.addStoreConfiguration(getConfiguration()); IdentityManager identityManager = new DefaultIdentityManager(); DefaultIdentityStoreInvocationContextFactory icf = new DefaultIdentityStoreInvocationContextFactory(null) { @Override public EntityManager getEntityManager() { return JPAIdentityManagerConfiguration.this.entityManagerLookupStrategy.getEntityManager(); } }; identityManager.bootstrap(config, icf); return identityManager; }
@Override protected Builder<IdentityConfiguration> readFrom(IdentityConfiguration configuration) { this.identityStoresConfigurationBuilder.readFrom(configuration.getStoreConfiguration()); return this; }
private void logConfiguration(final Collection<IdentityConfiguration> configurations) { for (IdentityConfiguration identityConfiguration : configurations) { if (ROOT_LOGGER.isDebugEnabled()) { ROOT_LOGGER.debug(" Identity Management Configuration: ["); ROOT_LOGGER.debugf(" Name: %s", identityConfiguration.getName()); ROOT_LOGGER.debugf(" Identity Store Configuration: %s", identityConfiguration.getStoreConfiguration()); ROOT_LOGGER.debugf(" Supports Partition: %s", this.partitionManagementConfig != null && this.partitionManagementConfig.equals(identityConfiguration)); ROOT_LOGGER.debugf(" Supports Attribute: %s", this.attributeManagementConfig != null && this.attributeManagementConfig.equals(identityConfiguration)); ROOT_LOGGER.debugf(" Supports Credential: %s", identityConfiguration.supportsCredential()); ROOT_LOGGER.debugf(" Supports Permission: %s", identityConfiguration.supportsPermission()); List<Class<?>> supportedTypes = new ArrayList<Class<?>>(); for (IdentityStoreConfiguration storeConfiguration : identityConfiguration.getStoreConfiguration()) { supportedTypes.addAll(storeConfiguration.getSupportedTypes().keySet()); } ROOT_LOGGER.debugf(" Supported Types: %s", supportedTypes); ROOT_LOGGER.debug(" ]"); } } }
IdentityConfiguration config = getConfigurationForPartition(context, partitions.iterator().next()); if (config.getRelationshipPolicy().isSelfRelationshipSupported(relationshipClass)) { for (IdentityStoreConfiguration storeConfig : config.getStoreConfiguration()) { if (storeConfig.supportsType(relationshipClass, operation)) { store = getIdentityStoreAndInitializeContext(context, config, storeConfig); IdentityConfiguration config = getConfigurationForPartition(context, partition); if (config.getRelationshipPolicy().isGlobalRelationshipSupported(relationshipClass)) { for (IdentityStoreConfiguration storeConfig : config.getStoreConfiguration()) { if (storeConfig.supportsType(relationshipClass, operation)) { store = getIdentityStoreAndInitializeContext(context, config, storeConfig); if (cfg.getRelationshipPolicy().isGlobalRelationshipSupported(relationshipClass)) { for (IdentityStoreConfiguration storeConfig : cfg.getStoreConfiguration()) { if (storeConfig.supportsType(relationshipClass, operation)) { store = getIdentityStoreAndInitializeContext(context, cfg, storeConfig);
private boolean isPartitionSupported(final PartitionManager partitionManager) { for (IdentityConfiguration configuration : partitionManager.getConfigurations()) { if (configuration.supportsPartition()) { for (IdentityStoreConfiguration storeConfig : configuration.getStoreConfiguration()) { if (storeConfig.supportsType(Realm.class, IdentityStoreConfiguration.IdentityOperation.create)) { return true; } } } } return false; }