Search in sources :

Example 16 with InboundAuthenticationConfig

use of org.wso2.carbon.identity.application.common.model.xsd.InboundAuthenticationConfig in project product-is by wso2.

the class SAMLSSOExternalAppTestClient method createApplication.

public void createApplication(SAMLConfig config, String appName) throws Exception {
    ServiceProvider serviceProvider = new ServiceProvider();
    serviceProvider.setApplicationName(appName);
    serviceProvider.setDescription("This is a test Service Provider");
    applicationManagementServiceClient.createApplication(serviceProvider);
    serviceProvider = applicationManagementServiceClient.getApplication(appName);
    serviceProvider.getClaimConfig().setClaimMappings(getClaimMappings());
    InboundAuthenticationRequestConfig requestConfig = new InboundAuthenticationRequestConfig();
    requestConfig.setInboundAuthType(INBOUND_AUTH_TYPE);
    requestConfig.setInboundAuthKey(config.getArtifact());
    Property attributeConsumerServiceIndexProp = new Property();
    attributeConsumerServiceIndexProp.setName(ATTRIBUTE_CS_INDEX_NAME);
    attributeConsumerServiceIndexProp.setValue(ATTRIBUTE_CS_INDEX_VALUE);
    requestConfig.setProperties(new Property[] { attributeConsumerServiceIndexProp });
    InboundAuthenticationConfig inboundAuthenticationConfig = new InboundAuthenticationConfig();
    inboundAuthenticationConfig.setInboundAuthenticationRequestConfigs(new InboundAuthenticationRequestConfig[] { requestConfig });
    serviceProvider.setInboundAuthenticationConfig(inboundAuthenticationConfig);
    applicationManagementServiceClient.updateApplicationData(serviceProvider);
}
Also used : InboundAuthenticationConfig(org.wso2.carbon.identity.application.common.model.xsd.InboundAuthenticationConfig) ServiceProvider(org.wso2.carbon.identity.application.common.model.xsd.ServiceProvider) InboundAuthenticationRequestConfig(org.wso2.carbon.identity.application.common.model.xsd.InboundAuthenticationRequestConfig) Property(org.wso2.carbon.identity.application.common.model.xsd.Property)

Example 17 with InboundAuthenticationConfig

use of org.wso2.carbon.identity.application.common.model.xsd.InboundAuthenticationConfig in project identity-api-server by wso2.

the class ServerApplicationManagementService method deleteInbound.

private void deleteInbound(String applicationId, String inboundType) {
    ServiceProvider appToUpdate;
    try {
        appToUpdate = cloneApplication(applicationId);
    } catch (APIError e) {
        if (ErrorMessage.APPLICATION_NOT_FOUND.getCode().equals(e.getCode())) {
            // Ignoring the delete operation and return 204 response code, since the resource does not exist.
            return;
        }
        throw e;
    }
    InboundAuthenticationConfig inboundAuthConfig = appToUpdate.getInboundAuthenticationConfig();
    if (ArrayUtils.isNotEmpty(inboundAuthConfig.getInboundAuthenticationRequestConfigs())) {
        // Remove the deleted inbound type by filtering it out of the available inbounds and doing an update.
        InboundAuthenticationRequestConfig[] filteredInbounds = Arrays.stream(inboundAuthConfig.getInboundAuthenticationRequestConfigs()).filter(inbound -> !StringUtils.equals(inboundType, inbound.getInboundAuthType())).toArray(InboundAuthenticationRequestConfig[]::new);
        appToUpdate.getInboundAuthenticationConfig().setInboundAuthenticationRequestConfigs(filteredInbounds);
        updateServiceProvider(applicationId, appToUpdate);
    }
    // Delete the associated CORS origins if the inboundType is oauth2.
    if (inboundType.equals(OAUTH2)) {
        String tenantDomain = PrivilegedCarbonContext.getThreadLocalCarbonContext().getTenantDomain();
        CORSManagementService corsManagementService = ApplicationManagementServiceHolder.getCorsManagementService();
        try {
            List<CORSOrigin> existingCORSOrigins = corsManagementService.getApplicationCORSOrigins(applicationId, tenantDomain);
            corsManagementService.deleteCORSOrigins(applicationId, existingCORSOrigins.stream().map(CORSOrigin::getId).collect(Collectors.toList()), tenantDomain);
        } catch (CORSManagementServiceException e) {
            log.error("Error while trying to remove CORS origins associated with the application.", e);
        }
    }
}
Also used : StringUtils(org.apache.commons.lang.StringUtils) OpenIDConnectConfiguration(org.wso2.carbon.identity.api.server.application.management.v1.OpenIDConnectConfiguration) Arrays(java.util.Arrays) AbstractUserStoreManager(org.wso2.carbon.user.core.common.AbstractUserStoreManager) ERROR_PROCESSING_REQUEST(org.wso2.carbon.identity.api.server.application.management.common.ApplicationManagementConstants.ErrorMessage.ERROR_PROCESSING_REQUEST) BuildProvisioningConfiguration(org.wso2.carbon.identity.api.server.application.management.v1.core.functions.application.provisioning.BuildProvisioningConfiguration) Utils(org.wso2.carbon.identity.api.server.application.management.v1.core.functions.Utils) PrimitiveCondition(org.wso2.carbon.identity.configuration.mgt.core.search.PrimitiveCondition) Autowired(org.springframework.beans.factory.annotation.Autowired) INBOUND_NOT_CONFIGURED(org.wso2.carbon.identity.api.server.application.management.common.ApplicationManagementConstants.ErrorMessage.INBOUND_NOT_CONFIGURED) ApplicationResponseModel(org.wso2.carbon.identity.api.server.application.management.v1.ApplicationResponseModel) InboundFunctions.getInboundAuthKey(org.wso2.carbon.identity.api.server.application.management.v1.core.functions.application.inbound.InboundFunctions.getInboundAuthKey) RealmService(org.wso2.carbon.user.core.service.RealmService) ERROR_CODE_RESOURCE_LIMIT_REACHED(org.wso2.carbon.identity.api.server.common.Constants.ERROR_CODE_RESOURCE_LIMIT_REACHED) ApplicationTemplateApiModelToTemplate(org.wso2.carbon.identity.api.server.application.management.v1.core.functions.template.ApplicationTemplateApiModelToTemplate) Condition(org.wso2.carbon.identity.configuration.mgt.core.search.Condition) APPLICATION_CREATION_WITH_TEMPLATES_NOT_IMPLEMENTED(org.wso2.carbon.identity.api.server.application.management.common.ApplicationManagementConstants.ErrorMessage.APPLICATION_CREATION_WITH_TEMPLATES_NOT_IMPLEMENTED) CORSManagementServiceClientException(org.wso2.carbon.identity.cors.mgt.core.exception.CORSManagementServiceClientException) FilterTreeBuilder(org.wso2.carbon.identity.core.model.FilterTreeBuilder) IdentityApplicationManagementClientException(org.wso2.carbon.identity.application.common.IdentityApplicationManagementClientException) StandardCharsets(java.nio.charset.StandardCharsets) IOUtils(org.apache.commons.io.IOUtils) CORSOrigin(org.wso2.carbon.identity.cors.mgt.core.model.CORSOrigin) AuthProtocolMetadata(org.wso2.carbon.identity.api.server.application.management.v1.AuthProtocolMetadata) InboundAuthenticationRequestConfig(org.wso2.carbon.identity.application.common.model.InboundAuthenticationRequestConfig) TemplateMgtConstants(org.wso2.carbon.identity.template.mgt.TemplateMgtConstants) LogFactory(org.apache.commons.logging.LogFactory) OAuthInboundFunctions(org.wso2.carbon.identity.api.server.application.management.v1.core.functions.application.inbound.oauth2.OAuthInboundFunctions) ApplicationBasicInfoToApiModel(org.wso2.carbon.identity.api.server.application.management.v1.core.functions.application.ApplicationBasicInfoToApiModel) IdentityException(org.wso2.carbon.identity.base.IdentityException) ProvisioningConfiguration(org.wso2.carbon.identity.api.server.application.management.v1.ProvisioningConfiguration) ContextLoader(org.wso2.carbon.identity.api.server.common.ContextLoader) ApplicationManagementService(org.wso2.carbon.identity.application.mgt.ApplicationManagementService) SearchContext(org.apache.cxf.jaxrs.ext.search.SearchContext) ComplexCondition(org.wso2.carbon.identity.configuration.mgt.core.search.ComplexCondition) InboundAuthenticationConfig(org.wso2.carbon.identity.application.common.model.InboundAuthenticationConfig) CORSManagementServiceException(org.wso2.carbon.identity.cors.mgt.core.exception.CORSManagementServiceException) ApplicationManagementConstants(org.wso2.carbon.identity.api.server.application.management.common.ApplicationManagementConstants) UpdateProvisioningConfiguration(org.wso2.carbon.identity.api.server.application.management.v1.core.functions.application.provisioning.UpdateProvisioningConfiguration) ArrayList(java.util.ArrayList) ApplicationTemplatesListItem(org.wso2.carbon.identity.api.server.application.management.v1.ApplicationTemplatesListItem) EQUALS(org.wso2.carbon.identity.configuration.mgt.core.search.constant.ConditionType.PrimitiveOperator.EQUALS) InboundProtocolListItem(org.wso2.carbon.identity.api.server.application.management.v1.InboundProtocolListItem) SAMLInboundFunctions(org.wso2.carbon.identity.api.server.application.management.v1.core.functions.application.inbound.saml.SAMLInboundFunctions) ResidentApplication(org.wso2.carbon.identity.api.server.application.management.v1.ResidentApplication) ApiModelToServiceProvider(org.wso2.carbon.identity.api.server.application.management.v1.core.functions.application.ApiModelToServiceProvider) ERROR_APPLICATION_LIMIT_REACHED(org.wso2.carbon.identity.api.server.application.management.common.ApplicationManagementConstants.ErrorMessage.ERROR_APPLICATION_LIMIT_REACHED) Utils.buildNotImplementedError(org.wso2.carbon.identity.api.server.application.management.v1.core.functions.Utils.buildNotImplementedError) ApplicationManagementServiceHolder(org.wso2.carbon.identity.api.server.application.management.common.ApplicationManagementServiceHolder) OAUTH2(org.wso2.carbon.identity.application.authentication.framework.util.FrameworkConstants.StandardInboundProtocols.OAUTH2) ApplicationModel(org.wso2.carbon.identity.api.server.application.management.v1.ApplicationModel) TemplateToApplicationTemplateListItem(org.wso2.carbon.identity.api.server.application.management.v1.core.functions.template.TemplateToApplicationTemplateListItem) ImportResponse(org.wso2.carbon.identity.application.common.model.ImportResponse) PrimitiveStatement(org.apache.cxf.jaxrs.ext.search.PrimitiveStatement) IOException(java.io.IOException) APIError(org.wso2.carbon.identity.api.server.common.error.APIError) UpdateServiceProvider(org.wso2.carbon.identity.api.server.application.management.v1.core.functions.application.UpdateServiceProvider) PassiveSTSInboundFunctions(org.wso2.carbon.identity.api.server.application.management.v1.core.functions.application.inbound.PassiveSTSInboundFunctions) SearchCondition(org.apache.cxf.jaxrs.ext.search.SearchCondition) InboundFunctions.rollbackInbound(org.wso2.carbon.identity.api.server.application.management.v1.core.functions.application.inbound.InboundFunctions.rollbackInbound) StandardInboundProtocols(org.wso2.carbon.identity.application.authentication.framework.util.FrameworkConstants.StandardInboundProtocols) CORSManagementService(org.wso2.carbon.identity.cors.mgt.core.CORSManagementService) URL(java.net.URL) URISyntaxException(java.net.URISyntaxException) BiFunction(java.util.function.BiFunction) CustomInboundProtocolConfiguration(org.wso2.carbon.identity.api.server.application.management.v1.CustomInboundProtocolConfiguration) ERROR_CODE_INVALID_APP_ID(org.wso2.carbon.identity.cors.mgt.core.constant.ErrorMessages.ERROR_CODE_INVALID_APP_ID) ApplicationListItem(org.wso2.carbon.identity.api.server.application.management.v1.ApplicationListItem) UNEXPECTED_SERVER_ERROR(org.wso2.carbon.identity.application.common.util.IdentityApplicationConstants.Error.UNEXPECTED_SERVER_ERROR) WSTrustConfiguration(org.wso2.carbon.identity.api.server.application.management.v1.WSTrustConfiguration) IdentityApplicationManagementException(org.wso2.carbon.identity.application.common.IdentityApplicationManagementException) User(org.wso2.carbon.identity.application.common.model.User) ApplicationPatchModel(org.wso2.carbon.identity.api.server.application.management.v1.ApplicationPatchModel) ServiceProvider(org.wso2.carbon.identity.application.common.model.ServiceProvider) Collectors(java.util.stream.Collectors) Link(org.wso2.carbon.identity.api.server.application.management.v1.Link) ApplicationConstants(org.wso2.carbon.identity.application.mgt.ApplicationConstants) List(java.util.List) PASSIVE_STS(org.wso2.carbon.identity.application.authentication.framework.util.FrameworkConstants.StandardInboundProtocols.PASSIVE_STS) InboundAuthConfigToApiModel(org.wso2.carbon.identity.api.server.application.management.v1.core.functions.application.inbound.InboundAuthConfigToApiModel) ApplicationTemplatesList(org.wso2.carbon.identity.api.server.application.management.v1.ApplicationTemplatesList) InboundFunctions.rollbackInbounds(org.wso2.carbon.identity.api.server.application.management.v1.core.functions.application.inbound.InboundFunctions.rollbackInbounds) SAML2(org.wso2.carbon.identity.application.authentication.framework.util.FrameworkConstants.StandardInboundProtocols.SAML2) InboundFunctions.getInboundAuthenticationRequestConfig(org.wso2.carbon.identity.api.server.application.management.v1.core.functions.application.inbound.InboundFunctions.getInboundAuthenticationRequestConfig) Template(org.wso2.carbon.identity.template.mgt.model.Template) SAML2ServiceProvider(org.wso2.carbon.identity.api.server.application.management.v1.SAML2ServiceProvider) PassiveStsConfiguration(org.wso2.carbon.identity.api.server.application.management.v1.PassiveStsConfiguration) WS_TRUST(org.wso2.carbon.identity.application.authentication.framework.util.FrameworkConstants.StandardInboundProtocols.WS_TRUST) INVALID_REQUEST(org.wso2.carbon.identity.application.common.util.IdentityApplicationConstants.Error.INVALID_REQUEST) Attachment(org.apache.cxf.jaxrs.ext.multipart.Attachment) PrivilegedCarbonContext(org.wso2.carbon.context.PrivilegedCarbonContext) SpFileContent(org.wso2.carbon.identity.application.common.model.SpFileContent) ApplicationOwner(org.wso2.carbon.identity.api.server.application.management.v1.ApplicationOwner) Function(java.util.function.Function) APPLICATION_MANAGEMENT_PATH_COMPONENT(org.wso2.carbon.identity.api.server.application.management.common.ApplicationManagementConstants.APPLICATION_MANAGEMENT_PATH_COMPONENT) TemplateManagementClientException(org.wso2.carbon.identity.template.mgt.exception.TemplateManagementClientException) CollectionUtils(org.apache.commons.collections.CollectionUtils) ErrorMessages(org.wso2.carbon.identity.cors.mgt.core.constant.ErrorMessages) Util(org.wso2.carbon.identity.api.server.common.Util) InboundFunctions.updateOrInsertInbound(org.wso2.carbon.identity.api.server.application.management.v1.core.functions.application.inbound.InboundFunctions.updateOrInsertInbound) TemplateToApplicationTemplate(org.wso2.carbon.identity.api.server.application.management.v1.core.functions.template.TemplateToApplicationTemplate) WSTrustInboundFunctions(org.wso2.carbon.identity.api.server.application.management.v1.core.functions.application.inbound.WSTrustInboundFunctions) TemplateManager(org.wso2.carbon.identity.template.mgt.TemplateManager) ApplicationBasicInfo(org.wso2.carbon.identity.application.common.model.ApplicationBasicInfo) ServiceProviderToApiModel(org.wso2.carbon.identity.api.server.application.management.v1.core.functions.application.ServiceProviderToApiModel) Utils.buildBadRequestError(org.wso2.carbon.identity.api.server.application.management.v1.core.functions.Utils.buildBadRequestError) ExpressionNode(org.wso2.carbon.identity.core.model.ExpressionNode) MalformedURLException(java.net.MalformedURLException) ErrorMessage(org.wso2.carbon.identity.api.server.application.management.common.ApplicationManagementConstants.ErrorMessage) CustomInboundFunctions(org.wso2.carbon.identity.api.server.application.management.v1.core.functions.application.inbound.custom.CustomInboundFunctions) ResourceSearchBean(org.wso2.carbon.identity.configuration.mgt.core.model.ResourceSearchBean) Node(org.wso2.carbon.identity.core.model.Node) TemplateManagementException(org.wso2.carbon.identity.template.mgt.exception.TemplateManagementException) ApplicationTemplateModel(org.wso2.carbon.identity.api.server.application.management.v1.ApplicationTemplateModel) SAML2Configuration(org.wso2.carbon.identity.api.server.application.management.v1.SAML2Configuration) ApplicationListResponse(org.wso2.carbon.identity.api.server.application.management.v1.ApplicationListResponse) IdentityUtil(org.wso2.carbon.identity.core.util.IdentityUtil) Log(org.apache.commons.logging.Log) ConditionType(org.apache.cxf.jaxrs.ext.search.ConditionType) Collections(java.util.Collections) ArrayUtils(org.apache.commons.lang.ArrayUtils) InputStream(java.io.InputStream) CORSOrigin(org.wso2.carbon.identity.cors.mgt.core.model.CORSOrigin) InboundAuthenticationConfig(org.wso2.carbon.identity.application.common.model.InboundAuthenticationConfig) ApiModelToServiceProvider(org.wso2.carbon.identity.api.server.application.management.v1.core.functions.application.ApiModelToServiceProvider) UpdateServiceProvider(org.wso2.carbon.identity.api.server.application.management.v1.core.functions.application.UpdateServiceProvider) ServiceProvider(org.wso2.carbon.identity.application.common.model.ServiceProvider) SAML2ServiceProvider(org.wso2.carbon.identity.api.server.application.management.v1.SAML2ServiceProvider) InboundAuthenticationRequestConfig(org.wso2.carbon.identity.application.common.model.InboundAuthenticationRequestConfig) InboundFunctions.getInboundAuthenticationRequestConfig(org.wso2.carbon.identity.api.server.application.management.v1.core.functions.application.inbound.InboundFunctions.getInboundAuthenticationRequestConfig) APIError(org.wso2.carbon.identity.api.server.common.error.APIError) CORSManagementServiceException(org.wso2.carbon.identity.cors.mgt.core.exception.CORSManagementServiceException) CORSManagementService(org.wso2.carbon.identity.cors.mgt.core.CORSManagementService)

Example 18 with InboundAuthenticationConfig

use of org.wso2.carbon.identity.application.common.model.xsd.InboundAuthenticationConfig in project identity-api-server by wso2.

the class UpdateInboundProtocols method apply.

@Override
public void apply(ServiceProvider application, InboundProtocols inboundProtocols) {
    List<InboundAuthenticationRequestConfig> inbounds = new ArrayList<>();
    try {
        if (inboundProtocols.getOidc() != null) {
            inbounds.add(createOAuthInbound(application.getApplicationName(), inboundProtocols.getOidc()));
        }
        if (inboundProtocols.getSaml() != null) {
            inbounds.add(createSAMLInbound(application, inboundProtocols.getSaml()));
        }
        if (inboundProtocols.getWsTrust() != null) {
            inbounds.add(createWsTrustInbound(inboundProtocols.getWsTrust()));
        }
    } catch (APIError error) {
        if (log.isDebugEnabled()) {
            log.debug("Error while adding inbound protocols for application id: " + application.getApplicationResourceId() + ". Cleaning up possible partially created inbound " + "configurations.");
        }
        rollbackInbounds(inbounds);
        throw error;
    }
    if (inboundProtocols.getPassiveSts() != null) {
        inbounds.add(createPassiveSTSInboundConfig(inboundProtocols.getPassiveSts()));
    }
    if (inboundProtocols.getCustom() != null) {
        inboundProtocols.getCustom().forEach(inboundConfigModel -> {
            // TODO Add validate at swagger to make sure inbound key and name are not null.
            InboundAuthenticationRequestConfig inboundRequestConfig = createCustomInbound(inboundConfigModel);
            inbounds.add(inboundRequestConfig);
        });
    }
    InboundAuthenticationConfig inboundAuthConfig = new InboundAuthenticationConfig();
    inboundAuthConfig.setInboundAuthenticationRequestConfigs(inbounds.toArray(new InboundAuthenticationRequestConfig[0]));
    application.setInboundAuthenticationConfig(inboundAuthConfig);
}
Also used : InboundAuthenticationConfig(org.wso2.carbon.identity.application.common.model.InboundAuthenticationConfig) ArrayList(java.util.ArrayList) InboundAuthenticationRequestConfig(org.wso2.carbon.identity.application.common.model.InboundAuthenticationRequestConfig) APIError(org.wso2.carbon.identity.api.server.common.error.APIError)

Example 19 with InboundAuthenticationConfig

use of org.wso2.carbon.identity.application.common.model.xsd.InboundAuthenticationConfig in project carbon-identity-framework by wso2.

the class ApplicationDAOImpl method getInboundAuthenticationConfig.

/**
 * @param applicationId
 * @param connection
 * @return
 * @throws SQLException
 */
private InboundAuthenticationConfig getInboundAuthenticationConfig(int applicationId, Connection connection, int tenantID) throws SQLException {
    if (log.isDebugEnabled()) {
        log.debug("Reading Clients of Application " + applicationId);
    }
    Map<String, InboundAuthenticationRequestConfig> inboundAuthenticationRequestConfigMap = new HashMap<String, InboundAuthenticationRequestConfig>();
    PreparedStatement getClientInfo = null;
    ResultSet resultSet = null;
    try {
        getClientInfo = connection.prepareStatement(LOAD_CLIENTS_INFO_BY_APP_ID);
        getClientInfo.setInt(1, applicationId);
        getClientInfo.setInt(2, tenantID);
        resultSet = getClientInfo.executeQuery();
        while (resultSet.next()) {
            String authKey = resultSet.getString(1);
            // this is done to handle empty string added to oracle database as null.
            if (authKey == null) {
                authKey = new String();
            }
            String authType = resultSet.getString(2);
            String propName = resultSet.getString(3);
            String propValue = resultSet.getString(4);
            String configType = resultSet.getString(5);
            String mapKey = authType + ":" + authKey;
            InboundAuthenticationRequestConfig inboundAuthRequest = null;
            if ((inboundAuthRequest = inboundAuthenticationRequestConfigMap.get(mapKey)) == null) {
                inboundAuthRequest = new InboundAuthenticationRequestConfig();
            }
            inboundAuthRequest.setInboundAuthKey(authKey);
            inboundAuthRequest.setInboundAuthType(authType);
            inboundAuthRequest.setInboundConfigType(configType);
            boolean isCustomAuthenticator = isCustomInboundAuthType(authType);
            AbstractInboundAuthenticatorConfig customAuthenticator = ApplicationManagementServiceComponentHolder.getInboundAuthenticatorConfig(authType + ":" + configType);
            if (isCustomAuthenticator && customAuthenticator != null) {
                inboundAuthRequest.setFriendlyName(customAuthenticator.getFriendlyName());
            }
            if (propName != null) {
                Property prop = new Property();
                prop.setName(propName);
                prop.setValue(propValue);
                if (isCustomAuthenticator && customAuthenticator != null) {
                    Property mappedProperty = getMappedProperty(customAuthenticator, propName);
                    if (mappedProperty != null) {
                        prop.setDisplayName(mappedProperty.getDisplayName());
                    }
                }
                inboundAuthRequest.setProperties((ApplicationMgtUtil.concatArrays(new Property[] { prop }, inboundAuthRequest.getProperties())));
            }
            inboundAuthenticationRequestConfigMap.put(mapKey, inboundAuthRequest);
        }
    } finally {
        IdentityApplicationManagementUtil.closeStatement(getClientInfo);
        IdentityApplicationManagementUtil.closeResultSet(resultSet);
    }
    Map<String, AbstractInboundAuthenticatorConfig> allCustomAuthenticators = new HashMap<>(ApplicationManagementServiceComponentHolder.getAllInboundAuthenticatorConfig());
    for (Map.Entry<String, InboundAuthenticationRequestConfig> entry : inboundAuthenticationRequestConfigMap.entrySet()) {
        InboundAuthenticationRequestConfig inboundAuthenticationRequestConfig = entry.getValue();
        AbstractInboundAuthenticatorConfig inboundAuthenticatorConfig = allCustomAuthenticators.remove(inboundAuthenticationRequestConfig.getInboundAuthType() + ":" + inboundAuthenticationRequestConfig.getInboundConfigType());
        if (inboundAuthenticatorConfig != null && inboundAuthenticationRequestConfig != null) {
            Property[] sources = inboundAuthenticatorConfig.getConfigurationProperties();
            Property[] destinations = inboundAuthenticationRequestConfig.getProperties();
            Map<String, Property> destinationMap = new HashMap<>();
            for (Property destination : destinations) {
                destinationMap.put(destination.getName(), destination);
            }
            for (Property source : sources) {
                Property property = destinationMap.get(source.getName());
                if (property == null) {
                    if (isCustomInboundAuthType(inboundAuthenticationRequestConfig.getInboundAuthType())) {
                        if (inboundAuthenticatorConfig.isRelyingPartyKeyConfigured()) {
                            if (StringUtils.equals(inboundAuthenticatorConfig.getRelyingPartyKey(), source.getName())) {
                                source.setValue(inboundAuthenticationRequestConfig.getInboundAuthKey());
                            }
                        }
                    }
                    destinationMap.put(source.getName(), source);
                } else {
                    property.setConfidential(source.isConfidential());
                    property.setDefaultValue(source.getDefaultValue());
                    property.setAdvanced(source.isAdvanced());
                    property.setDescription(source.getDescription());
                    property.setDisplayOrder(source.getDisplayOrder());
                    property.setRequired(source.isRequired());
                    property.setType(source.getType());
                }
            }
            inboundAuthenticationRequestConfig.setProperties(destinationMap.values().toArray(new Property[destinationMap.size()]));
        }
    }
    List<InboundAuthenticationRequestConfig> returnList = new ArrayList<>(inboundAuthenticationRequestConfigMap.values());
    InboundAuthenticationConfig inboundAuthenticationConfig = new InboundAuthenticationConfig();
    inboundAuthenticationConfig.setInboundAuthenticationRequestConfigs(returnList.toArray(new InboundAuthenticationRequestConfig[returnList.size()]));
    return inboundAuthenticationConfig;
}
Also used : HashMap(java.util.HashMap) InboundAuthenticationConfig(org.wso2.carbon.identity.application.common.model.InboundAuthenticationConfig) ArrayList(java.util.ArrayList) InboundAuthenticationRequestConfig(org.wso2.carbon.identity.application.common.model.InboundAuthenticationRequestConfig) PreparedStatement(java.sql.PreparedStatement) NamedPreparedStatement(org.wso2.carbon.database.utils.jdbc.NamedPreparedStatement) ResultSet(java.sql.ResultSet) AbstractInboundAuthenticatorConfig(org.wso2.carbon.identity.application.mgt.AbstractInboundAuthenticatorConfig) ServiceProviderProperty(org.wso2.carbon.identity.application.common.model.ServiceProviderProperty) Property(org.wso2.carbon.identity.application.common.model.Property) Map(java.util.Map) HashMap(java.util.HashMap)

Example 20 with InboundAuthenticationConfig

use of org.wso2.carbon.identity.application.common.model.xsd.InboundAuthenticationConfig in project carbon-identity-framework by wso2.

the class ApplicationBean method update.

/**
 * @param request
 */
public void update(HttpServletRequest request) {
    // update basic info.
    serviceProvider.setApplicationName(request.getParameter("spName"));
    serviceProvider.setDescription(request.getParameter("sp-description"));
    serviceProvider.setCertificateContent(request.getParameter("sp-certificate"));
    String jwks = request.getParameter("jwksUri");
    serviceProvider.setJwksUri(jwks);
    if (Boolean.parseBoolean(request.getParameter("deletePublicCert"))) {
        serviceProvider.setCertificateContent("");
    }
    String isSasApp = request.getParameter("isSaasApp");
    serviceProvider.setSaasApp((isSasApp != null && "on".equals(isSasApp)) ? true : false);
    String isDiscoverableApp = request.getParameter("isDiscoverableApp");
    serviceProvider.setDiscoverable("on".equals(isDiscoverableApp));
    String accessUrl = request.getParameter("accessURL");
    serviceProvider.setAccessUrl(accessUrl);
    String imageUrl = request.getParameter("imageURL");
    serviceProvider.setImageUrl(imageUrl);
    String logoutReturnUrl = request.getParameter(LOGOUT_RETURN_URL);
    if (StringUtils.isNotBlank(logoutReturnUrl)) {
        boolean logoutReturnUrlDefined = false;
        if (serviceProvider.getSpProperties() != null) {
            for (ServiceProviderProperty property : serviceProvider.getSpProperties()) {
                if (property.getName() != null && LOGOUT_RETURN_URL.equals(property.getName())) {
                    property.setValue(logoutReturnUrl);
                    logoutReturnUrlDefined = true;
                    break;
                }
            }
        }
        if (!logoutReturnUrlDefined) {
            ServiceProviderProperty property = new ServiceProviderProperty();
            property.setName(LOGOUT_RETURN_URL);
            property.setDisplayName("Logout Return URL");
            property.setValue(logoutReturnUrl);
            serviceProvider.addSpProperties(property);
        }
    }
    if (serviceProvider.getLocalAndOutBoundAuthenticationConfig() == null) {
        // create fresh one.
        serviceProvider.setLocalAndOutBoundAuthenticationConfig(new LocalAndOutboundAuthenticationConfig());
    }
    // authentication type : default, local, federated or advanced.
    serviceProvider.getLocalAndOutBoundAuthenticationConfig().setAuthenticationType(request.getParameter("auth_type"));
    // update inbound provisioning data.
    String provisioningUserStore = request.getParameter("scim-inbound-userstore");
    InboundProvisioningConfig inBoundProConfig = new InboundProvisioningConfig();
    inBoundProConfig.setProvisioningUserStore(provisioningUserStore);
    inBoundProConfig.setDumbMode(Boolean.parseBoolean(request.getParameter(DUMB)));
    serviceProvider.setInboundProvisioningConfig(inBoundProConfig);
    // update outbound provisioning data.
    String[] provisioningProviders = request.getParameterValues("provisioning_idp");
    if (provisioningProviders != null && provisioningProviders.length > 0) {
        List<IdentityProvider> provisioningIdps = new ArrayList<IdentityProvider>();
        for (String proProvider : provisioningProviders) {
            String connector = request.getParameter("provisioning_con_idp_" + proProvider);
            String jitEnabled = request.getParameter("provisioning_jit_" + proProvider);
            String blocking = request.getParameter("blocking_prov_" + proProvider);
            String ruleEnabled = request.getParameter("rules_enabled_" + proProvider);
            if (connector != null) {
                IdentityProvider proIdp = new IdentityProvider();
                proIdp.setIdentityProviderName(proProvider);
                JustInTimeProvisioningConfig jitpro = new JustInTimeProvisioningConfig();
                if ("on".equals(jitEnabled)) {
                    jitpro.setProvisioningEnabled(true);
                }
                proIdp.setJustInTimeProvisioningConfig(jitpro);
                ProvisioningConnectorConfig proCon = new ProvisioningConnectorConfig();
                if ("on".equals(ruleEnabled)) {
                    proCon.setRulesEnabled(true);
                } else {
                    proCon.setRulesEnabled(false);
                }
                if ("on".equals(blocking)) {
                    proCon.setBlocking(true);
                } else {
                    proCon.setBlocking(false);
                }
                proCon.setName(connector);
                proIdp.setDefaultProvisioningConnectorConfig(proCon);
                provisioningIdps.add(proIdp);
            }
        }
        if (CollectionUtils.isNotEmpty(provisioningIdps)) {
            OutboundProvisioningConfig outboundProConfig = new OutboundProvisioningConfig();
            outboundProConfig.setProvisioningIdentityProviders(provisioningIdps.toArray(new IdentityProvider[provisioningIdps.size()]));
            serviceProvider.setOutboundProvisioningConfig(outboundProConfig);
        }
    } else {
        serviceProvider.setOutboundProvisioningConfig(new OutboundProvisioningConfig());
    }
    // get all request-path authenticators.
    String[] requestPathAuthenticators = request.getParameterValues("req_path_auth");
    if (requestPathAuthenticators != null && requestPathAuthenticators.length > 0) {
        List<RequestPathAuthenticatorConfig> reqAuthList = new ArrayList<RequestPathAuthenticatorConfig>();
        for (String name : requestPathAuthenticators) {
            if (name != null) {
                RequestPathAuthenticatorConfig reqAuth = new RequestPathAuthenticatorConfig();
                reqAuth.setName(name);
                reqAuth.setDisplayName(request.getParameter("req_path_auth_" + name));
                reqAuthList.add(reqAuth);
            }
        }
        if (CollectionUtils.isNotEmpty(reqAuthList)) {
            serviceProvider.setRequestPathAuthenticatorConfigs(reqAuthList.toArray(new RequestPathAuthenticatorConfig[reqAuthList.size()]));
        } else {
            serviceProvider.setRequestPathAuthenticatorConfigs(null);
        }
    } else {
        serviceProvider.setRequestPathAuthenticatorConfigs(null);
    }
    List<InboundAuthenticationRequestConfig> authRequestList = new ArrayList<InboundAuthenticationRequestConfig>();
    if (samlIssuer != null) {
        InboundAuthenticationRequestConfig samlAuthenticationRequest = new InboundAuthenticationRequestConfig();
        samlAuthenticationRequest.setInboundAuthKey(samlIssuer);
        samlAuthenticationRequest.setInboundAuthType("samlsso");
        if (attrConsumServiceIndex != null && !attrConsumServiceIndex.isEmpty()) {
            Property property = new Property();
            property.setName("attrConsumServiceIndex");
            property.setValue(attrConsumServiceIndex);
            Property[] properties = { property };
            samlAuthenticationRequest.setProperties(properties);
        }
        authRequestList.add(samlAuthenticationRequest);
    }
    if (kerberosServiceName != null) {
        InboundAuthenticationRequestConfig kerberosAuthenticationRequest = new InboundAuthenticationRequestConfig();
        kerberosAuthenticationRequest.setInboundAuthKey(kerberosServiceName);
        kerberosAuthenticationRequest.setInboundAuthType("kerberos");
        authRequestList.add(kerberosAuthenticationRequest);
    }
    if (oauthAppName != null) {
        InboundAuthenticationRequestConfig opicAuthenticationRequest = new InboundAuthenticationRequestConfig();
        opicAuthenticationRequest.setInboundAuthKey(oauthAppName);
        opicAuthenticationRequest.setInboundAuthType("oauth2");
        if (oauthConsumerSecret != null && !oauthConsumerSecret.isEmpty()) {
            Property property = new Property();
            property.setName("oauthConsumerSecret");
            property.setValue(oauthConsumerSecret);
            Property[] properties = { property };
            opicAuthenticationRequest.setProperties(properties);
        }
        authRequestList.add(opicAuthenticationRequest);
    }
    if (CollectionUtils.isNotEmpty(wstrustEp)) {
        wstrustEp.forEach(entry -> {
            InboundAuthenticationRequestConfig opicAuthenticationRequest = new InboundAuthenticationRequestConfig();
            opicAuthenticationRequest.setInboundAuthKey(entry);
            opicAuthenticationRequest.setInboundAuthType("wstrust");
            authRequestList.add(opicAuthenticationRequest);
        });
    }
    String passiveSTSRealm = request.getParameter("passiveSTSRealm");
    String passiveSTSWReply = request.getParameter("passiveSTSWReply");
    if (StringUtils.isNotBlank(passiveSTSRealm)) {
        InboundAuthenticationRequestConfig opicAuthenticationRequest = new InboundAuthenticationRequestConfig();
        opicAuthenticationRequest.setInboundAuthKey(passiveSTSRealm);
        opicAuthenticationRequest.setInboundAuthType("passivests");
        if (passiveSTSWReply != null && !passiveSTSWReply.isEmpty()) {
            Property property = new Property();
            property.setName("passiveSTSWReply");
            property.setValue(passiveSTSWReply);
            Property[] properties = { property };
            opicAuthenticationRequest.setProperties(properties);
        }
        authRequestList.add(opicAuthenticationRequest);
    }
    String openidRealm = request.getParameter("openidRealm");
    if (StringUtils.isNotBlank(openidRealm)) {
        InboundAuthenticationRequestConfig opicAuthenticationRequest = new InboundAuthenticationRequestConfig();
        opicAuthenticationRequest.setInboundAuthKey(openidRealm);
        opicAuthenticationRequest.setInboundAuthType("openid");
        authRequestList.add(opicAuthenticationRequest);
    }
    if (!CollectionUtils.isEmpty(inboundAuthenticationRequestConfigs)) {
        for (InboundAuthenticationRequestConfig customAuthConfig : inboundAuthenticationRequestConfigs) {
            String type = customAuthConfig.getInboundAuthType();
            Property[] properties = customAuthConfig.getProperties();
            if (!ArrayUtils.isEmpty(properties)) {
                for (Property prop : properties) {
                    String propVal = request.getParameter("custom_auth_prop_name_" + type + "_" + prop.getName());
                    prop.setValue(propVal);
                }
            }
            authRequestList.add(customAuthConfig);
        }
    }
    if (serviceProvider.getInboundAuthenticationConfig() == null) {
        serviceProvider.setInboundAuthenticationConfig(new InboundAuthenticationConfig());
    }
    if (CollectionUtils.isNotEmpty(authRequestList)) {
        serviceProvider.getInboundAuthenticationConfig().setInboundAuthenticationRequestConfigs(authRequestList.toArray(new InboundAuthenticationRequestConfig[authRequestList.size()]));
    }
    // update local and out-bound authentication.
    if (AUTH_TYPE_DEFAULT.equalsIgnoreCase(serviceProvider.getLocalAndOutBoundAuthenticationConfig().getAuthenticationType())) {
        serviceProvider.getLocalAndOutBoundAuthenticationConfig().setAuthenticationSteps(null);
        serviceProvider.getLocalAndOutBoundAuthenticationConfig().setAuthenticationScriptConfig(null);
    } else if (AUTH_TYPE_LOCAL.equalsIgnoreCase(serviceProvider.getLocalAndOutBoundAuthenticationConfig().getAuthenticationType())) {
        AuthenticationStep authStep = new AuthenticationStep();
        LocalAuthenticatorConfig localAuthenticator = new LocalAuthenticatorConfig();
        localAuthenticator.setName(request.getParameter("local_authenticator"));
        if (localAuthenticator.getName() != null && localAuthenticatorConfigs != null) {
            for (LocalAuthenticatorConfig config : localAuthenticatorConfigs) {
                if (config.getName().equals(localAuthenticator.getName())) {
                    localAuthenticator.setDisplayName(config.getDisplayName());
                    break;
                }
            }
        }
        authStep.setLocalAuthenticatorConfigs(new LocalAuthenticatorConfig[] { localAuthenticator });
        serviceProvider.getLocalAndOutBoundAuthenticationConfig().setAuthenticationSteps(new AuthenticationStep[] { authStep });
        serviceProvider.getLocalAndOutBoundAuthenticationConfig().setAuthenticationScriptConfig(null);
    } else if (AUTH_TYPE_FEDERATED.equalsIgnoreCase(serviceProvider.getLocalAndOutBoundAuthenticationConfig().getAuthenticationType())) {
        AuthenticationStep authStep = new AuthenticationStep();
        IdentityProvider idp = new IdentityProvider();
        idp.setIdentityProviderName(request.getParameter("fed_idp"));
        authStep.setFederatedIdentityProviders(new IdentityProvider[] { idp });
        serviceProvider.getLocalAndOutBoundAuthenticationConfig().setAuthenticationSteps(new AuthenticationStep[] { authStep });
        serviceProvider.getLocalAndOutBoundAuthenticationConfig().setAuthenticationScriptConfig(null);
    } else if (AUTH_TYPE_FLOW.equalsIgnoreCase(serviceProvider.getLocalAndOutBoundAuthenticationConfig().getAuthenticationType())) {
    // already updated.
    }
    String alwaysSendAuthListOfIdPs = request.getParameter("always_send_auth_list_of_idps");
    serviceProvider.getLocalAndOutBoundAuthenticationConfig().setAlwaysSendBackAuthenticatedListOfIdPs(alwaysSendAuthListOfIdPs != null && "on".equals(alwaysSendAuthListOfIdPs) ? true : false);
    String useTenantDomainInLocalSubjectIdentifier = request.getParameter("use_tenant_domain_in_local_subject_identifier");
    serviceProvider.getLocalAndOutBoundAuthenticationConfig().setUseTenantDomainInLocalSubjectIdentifier(useTenantDomainInLocalSubjectIdentifier != null && "on".equals(useTenantDomainInLocalSubjectIdentifier) ? true : false);
    String useUserstoreDomainInLocalSubjectIdentifier = request.getParameter("use_userstore_domain_in_local_subject_identifier");
    serviceProvider.getLocalAndOutBoundAuthenticationConfig().setUseUserstoreDomainInLocalSubjectIdentifier(useUserstoreDomainInLocalSubjectIdentifier != null && "on".equals(useUserstoreDomainInLocalSubjectIdentifier) ? true : false);
    String useUserstoreDomainInRoles = request.getParameter("use_userstore_domain_in_roles");
    serviceProvider.getLocalAndOutBoundAuthenticationConfig().setUseUserstoreDomainInRoles(useUserstoreDomainInRoles != null && "on".equals(useUserstoreDomainInRoles) ? true : false);
    boolean skipConsent = Boolean.parseBoolean(request.getParameter(IdentityConstants.SKIP_CONSENT));
    serviceProvider.getLocalAndOutBoundAuthenticationConfig().setSkipConsent(skipConsent);
    boolean skipLogoutConsent = Boolean.parseBoolean(request.getParameter(IdentityConstants.SKIP_LOGOUT_CONSENT));
    serviceProvider.getLocalAndOutBoundAuthenticationConfig().setSkipLogoutConsent(skipLogoutConsent);
    String enableAuthorization = request.getParameter("enable_authorization");
    serviceProvider.getLocalAndOutBoundAuthenticationConfig().setEnableAuthorization(enableAuthorization != null && "on".equals(enableAuthorization));
    String subjectClaimUri = request.getParameter("subject_claim_uri");
    serviceProvider.getLocalAndOutBoundAuthenticationConfig().setSubjectClaimUri((subjectClaimUri != null && !subjectClaimUri.isEmpty()) ? subjectClaimUri : null);
    // update application permissions.
    PermissionsAndRoleConfig permAndRoleConfig = new PermissionsAndRoleConfig();
    String[] permissions = request.getParameterValues("app_permission");
    List<ApplicationPermission> appPermList = new ArrayList<ApplicationPermission>();
    if (permissions != null && permissions.length > 0) {
        for (String permission : permissions) {
            if (permission != null && !permission.trim().isEmpty()) {
                ApplicationPermission appPermission = new ApplicationPermission();
                appPermission.setValue(permission);
                appPermList.add(appPermission);
            }
        }
    }
    if (CollectionUtils.isNotEmpty(appPermList)) {
        permAndRoleConfig.setPermissions(appPermList.toArray(new ApplicationPermission[appPermList.size()]));
    }
    // update role mapping.
    int roleMappingCount = Integer.parseInt(request.getParameter("number_of_rolemappings"));
    List<RoleMapping> roleMappingList = new ArrayList<RoleMapping>();
    for (int i = 0; i < roleMappingCount; i++) {
        RoleMapping mapping = new RoleMapping();
        LocalRole localRole = new LocalRole();
        localRole.setLocalRoleName(request.getParameter("idpRole_" + i));
        mapping.setLocalRole(localRole);
        mapping.setRemoteRole(request.getParameter("spRole_" + i));
        if (mapping.getLocalRole() != null && mapping.getRemoteRole() != null) {
            roleMappingList.add(mapping);
        }
    }
    permAndRoleConfig.setRoleMappings(roleMappingList.toArray(new RoleMapping[roleMappingList.size()]));
    serviceProvider.setPermissionAndRoleConfig(permAndRoleConfig);
    if (serviceProvider.getClaimConfig() == null) {
        serviceProvider.setClaimConfig(new ClaimConfig());
    }
    if (request.getParameter("claim_dialect") != null && "custom".equals(request.getParameter("claim_dialect"))) {
        serviceProvider.getClaimConfig().setLocalClaimDialect(false);
    } else {
        serviceProvider.getClaimConfig().setLocalClaimDialect(true);
    }
    // update claim configuration.
    int claimCount = Integer.parseInt(request.getParameter("number_of_claim_mappings"));
    List<ClaimMapping> claimMappingList = new ArrayList<ClaimMapping>();
    for (int i = 0; i < claimCount; i++) {
        ClaimMapping mapping = new ClaimMapping();
        Claim localClaim = new Claim();
        localClaim.setClaimUri(request.getParameter("idpClaim_" + i));
        Claim spClaim = new Claim();
        spClaim.setClaimUri(request.getParameter("spClaim_" + i));
        String requested = request.getParameter("spClaim_req_" + i);
        if (requested != null && "on".equals(requested)) {
            mapping.setRequested(true);
        } else {
            mapping.setRequested(false);
        }
        String mandatory = request.getParameter("spClaim_mand_" + i);
        if (mandatory != null && "on".equals(mandatory)) {
            mapping.setMandatory(true);
        } else {
            mapping.setMandatory(false);
        }
        mapping.setLocalClaim(localClaim);
        mapping.setRemoteClaim(spClaim);
        if (isLocalClaimsSelected() || mapping.getRemoteClaim().getClaimUri() == null || mapping.getRemoteClaim().getClaimUri().isEmpty()) {
            mapping.getRemoteClaim().setClaimUri(mapping.getLocalClaim().getClaimUri());
        }
        if (mapping.getLocalClaim().getClaimUri() != null && mapping.getRemoteClaim().getClaimUri() != null) {
            claimMappingList.add(mapping);
        }
    }
    String spClaimDialectParam = request.getParameter(ApplicationMgtUIConstants.Params.SP_CLAIM_DIALECT);
    String[] spClaimDialects = null;
    if (StringUtils.isNotBlank(spClaimDialectParam)) {
        spClaimDialects = spClaimDialectParam.split(",");
    }
    serviceProvider.getClaimConfig().setSpClaimDialects(spClaimDialects);
    serviceProvider.getClaimConfig().setClaimMappings(claimMappingList.toArray(new ClaimMapping[claimMappingList.size()]));
    serviceProvider.getClaimConfig().setRoleClaimURI(request.getParameter("roleClaim"));
    String alwaysSendMappedLocalSubjectId = request.getParameter("always_send_local_subject_id");
    serviceProvider.getClaimConfig().setAlwaysSendMappedLocalSubjectId(alwaysSendMappedLocalSubjectId != null && "on".equals(alwaysSendMappedLocalSubjectId) ? true : false);
}
Also used : InboundProvisioningConfig(org.wso2.carbon.identity.application.common.model.xsd.InboundProvisioningConfig) InboundAuthenticationConfig(org.wso2.carbon.identity.application.common.model.xsd.InboundAuthenticationConfig) ArrayList(java.util.ArrayList) LocalAuthenticatorConfig(org.wso2.carbon.identity.application.common.model.xsd.LocalAuthenticatorConfig) InboundAuthenticationRequestConfig(org.wso2.carbon.identity.application.common.model.xsd.InboundAuthenticationRequestConfig) OutboundProvisioningConfig(org.wso2.carbon.identity.application.common.model.xsd.OutboundProvisioningConfig) LocalAndOutboundAuthenticationConfig(org.wso2.carbon.identity.application.common.model.xsd.LocalAndOutboundAuthenticationConfig) PermissionsAndRoleConfig(org.wso2.carbon.identity.application.common.model.xsd.PermissionsAndRoleConfig) RequestPathAuthenticatorConfig(org.wso2.carbon.identity.application.common.model.xsd.RequestPathAuthenticatorConfig) ServiceProviderProperty(org.wso2.carbon.identity.application.common.model.xsd.ServiceProviderProperty) ServiceProviderProperty(org.wso2.carbon.identity.application.common.model.xsd.ServiceProviderProperty) Property(org.wso2.carbon.identity.application.common.model.xsd.Property) ProvisioningConnectorConfig(org.wso2.carbon.identity.application.common.model.xsd.ProvisioningConnectorConfig) AuthenticationStep(org.wso2.carbon.identity.application.common.model.xsd.AuthenticationStep) IdentityProvider(org.wso2.carbon.identity.application.common.model.xsd.IdentityProvider) RoleMapping(org.wso2.carbon.identity.application.common.model.xsd.RoleMapping) ApplicationPermission(org.wso2.carbon.identity.application.common.model.xsd.ApplicationPermission) ClaimMapping(org.wso2.carbon.identity.application.common.model.xsd.ClaimMapping) ClaimConfig(org.wso2.carbon.identity.application.common.model.xsd.ClaimConfig) JustInTimeProvisioningConfig(org.wso2.carbon.identity.application.common.model.xsd.JustInTimeProvisioningConfig) LocalRole(org.wso2.carbon.identity.application.common.model.xsd.LocalRole) Claim(org.wso2.carbon.identity.application.common.model.xsd.Claim)

Aggregations

InboundAuthenticationConfig (org.wso2.carbon.identity.application.common.model.xsd.InboundAuthenticationConfig)21 InboundAuthenticationRequestConfig (org.wso2.carbon.identity.application.common.model.xsd.InboundAuthenticationRequestConfig)21 ServiceProvider (org.wso2.carbon.identity.application.common.model.xsd.ServiceProvider)19 InboundAuthenticationConfig (org.wso2.carbon.identity.application.common.model.InboundAuthenticationConfig)16 InboundAuthenticationRequestConfig (org.wso2.carbon.identity.application.common.model.InboundAuthenticationRequestConfig)15 Property (org.wso2.carbon.identity.application.common.model.xsd.Property)15 ArrayList (java.util.ArrayList)9 Property (org.wso2.carbon.identity.application.common.model.Property)7 IdentityApplicationManagementException (org.wso2.carbon.identity.application.common.IdentityApplicationManagementException)6 RequestPathAuthenticatorConfig (org.wso2.carbon.identity.application.common.model.xsd.RequestPathAuthenticatorConfig)5 ServiceProvider (org.wso2.carbon.identity.application.common.model.ServiceProvider)4 LocalAndOutboundAuthenticationConfig (org.wso2.carbon.identity.application.common.model.xsd.LocalAndOutboundAuthenticationConfig)4 PreparedStatement (java.sql.PreparedStatement)3 SQLException (java.sql.SQLException)3 NamedPreparedStatement (org.wso2.carbon.database.utils.jdbc.NamedPreparedStatement)3 ServiceProviderProperty (org.wso2.carbon.identity.application.common.model.ServiceProviderProperty)3 IOException (java.io.IOException)2 HashMap (java.util.HashMap)2 APIError (org.wso2.carbon.identity.api.server.common.error.APIError)2 AuthenticationStep (org.wso2.carbon.identity.application.common.model.xsd.AuthenticationStep)2