public static String getGroupNameWithDomain(String groupName) { if (groupName == null) { return groupName; } if (groupName.indexOf(CarbonConstants.DOMAIN_SEPARATOR) > 0) { return groupName; } else { return IdentityUtil.getPrimaryDomainName() + CarbonConstants.DOMAIN_SEPARATOR + groupName; } }
public static String getGroupNameWithDomain(String groupName) { if (groupName == null) { return null; } if (groupName.indexOf(CarbonConstants.DOMAIN_SEPARATOR) > 0) { return groupName; } else { return IdentityUtil.getPrimaryDomainName() + CarbonConstants.DOMAIN_SEPARATOR + groupName; } }
private String getSanitizedUserStoreDomain(String userStoreDomain){ if(userStoreDomain != null){ userStoreDomain = userStoreDomain.toUpperCase(); } else{ userStoreDomain = IdentityUtil.getPrimaryDomainName(); } return userStoreDomain; }
/** * Returns the domain name convert to upper case if the domain is not not empty, else return primary domain name. * * @param userStoreDomain * @return */ public static String getSanitizedUserStoreDomain(String userStoreDomain) { if (StringUtils.isNotBlank(userStoreDomain)) { userStoreDomain = userStoreDomain.toUpperCase(); } else { userStoreDomain = IdentityUtil.getPrimaryDomainName(); } return userStoreDomain; }
public static String extractDomainFromName(String nameWithDomain) { if(nameWithDomain.indexOf(UserCoreConstants.DOMAIN_SEPARATOR) > 0){ String domain = nameWithDomain.substring(0, nameWithDomain.indexOf(UserCoreConstants.DOMAIN_SEPARATOR)); return domain.toUpperCase(); } else { return getPrimaryDomainName(); } }
public static String extractDomainFromName(String nameWithDomain) { if (nameWithDomain.indexOf(UserCoreConstants.DOMAIN_SEPARATOR) > 0) { String domain = nameWithDomain.substring(0, nameWithDomain.indexOf(UserCoreConstants.DOMAIN_SEPARATOR)); if (UserCoreConstants.INTERNAL_DOMAIN.equalsIgnoreCase(domain) || WORKFLOW_DOMAIN.equalsIgnoreCase(domain) || APPLICATION_DOMAIN.equalsIgnoreCase(domain)) { return domain.substring(0, 1).toUpperCase() + domain.substring(1).toLowerCase(); } return domain.toUpperCase(); } else { return getPrimaryDomainName(); } }
public static String extractDomainFromName(String nameWithDomain) { if (nameWithDomain.indexOf(UserCoreConstants.DOMAIN_SEPARATOR) > 0) { String domain = nameWithDomain.substring(0, nameWithDomain.indexOf(UserCoreConstants.DOMAIN_SEPARATOR)); if (UserCoreConstants.INTERNAL_DOMAIN.equalsIgnoreCase(domain) || WORKFLOW_DOMAIN.equalsIgnoreCase(domain) || APPLICATION_DOMAIN.equalsIgnoreCase(domain)) { return domain.substring(0, 1).toUpperCase() + domain.substring(1).toLowerCase(); } return domain.toUpperCase(); } else { return getPrimaryDomainName(); } }
/** * Returns the updated table name using user store domain if a mapping is defined for this users store in * AccessTokenPartitioningDomains element in identity.xml, * or the original table name if the mapping is not available. * <p> * Updated table name derived by appending a underscore and mapped user store domain name to the origin table name. * * @param userStoreDomain * @return * @throws IdentityOAuth2Exception */ public static String getPartitionedTableByUserStore(String tableName, String userStoreDomain) throws IdentityOAuth2Exception { if (StringUtils.isNotBlank(tableName) && StringUtils.isNotBlank(userStoreDomain) && !IdentityUtil.getPrimaryDomainName().equalsIgnoreCase(userStoreDomain)) { String mappedUserStoreDomain = OAuth2Util.getMappedUserStoreDomain(userStoreDomain); tableName = tableName + "_" + mappedUserStoreDomain; } return tableName; }
public static String getUserStoreDomainName(UserStoreManager userStoreManager) { String domainNameProperty = null; if(userStoreManager instanceof org.wso2.carbon.user.core.UserStoreManager) { domainNameProperty = ((org.wso2.carbon.user.core.UserStoreManager) userStoreManager).getRealmConfiguration() .getUserStoreProperty(UserCoreConstants.RealmConfig.PROPERTY_DOMAIN_NAME); if(StringUtils.isBlank(domainNameProperty)) { domainNameProperty = IdentityUtil.getPrimaryDomainName(); } } return domainNameProperty; }
public static String getUserStoreDomainName(UserStoreManager userStoreManager) { String domainNameProperty = null; if(userStoreManager instanceof org.wso2.carbon.user.core.UserStoreManager) { domainNameProperty = ((org.wso2.carbon.user.core.UserStoreManager) userStoreManager).getRealmConfiguration() .getUserStoreProperty(UserCoreConstants.RealmConfig.PROPERTY_DOMAIN_NAME); if(StringUtils.isBlank(domainNameProperty)) { domainNameProperty = IdentityUtil.getPrimaryDomainName(); } } return domainNameProperty; }
public static String getUserStoreDomainName(UserStoreManager userStoreManager) { String domainNameProperty = null; if(userStoreManager instanceof org.wso2.carbon.user.core.UserStoreManager) { domainNameProperty = ((org.wso2.carbon.user.core.UserStoreManager) userStoreManager).getRealmConfiguration() .getUserStoreProperty(UserCoreConstants.RealmConfig.PROPERTY_DOMAIN_NAME); if(StringUtils.isBlank(domainNameProperty)) { domainNameProperty = IdentityUtil.getPrimaryDomainName(); } } return domainNameProperty; }
private void setUserStoreDomainForUser(User user) { if (StringUtils.isBlank(user.getUserStoreDomain())) { user.setUserStoreDomain(IdentityUtil.getPrimaryDomainName()); if (log.isDebugEnabled()) { log.debug("User store domain is not in the request. Set primary user store domain for user : " + user.getUserName()); } } }
/** * Retrieves active access tokens for the given consumer key. * * @param consumerKey * @return * @throws IdentityOAuth2Exception */ @Override public Set<String> getActiveTokensByConsumerKey(String consumerKey) throws IdentityOAuth2Exception { if (log.isDebugEnabled()) { log.debug("Retrieving active access tokens of client: " + consumerKey); } Set<String> activeTokens = getActiveAccessTokensByConsumerKey(consumerKey, IdentityUtil.getPrimaryDomainName()); if (OAuth2Util.checkAccessTokenPartitioningEnabled() && OAuth2Util.checkUserNameAssertionEnabled()) { Map<String, String> availableDomainMappings = OAuth2Util.getAvailableUserStoreDomainMappings(); for (Map.Entry<String, String> availableDomainMapping : availableDomainMappings.entrySet()) { activeTokens.addAll(getActiveAccessTokensByConsumerKey(consumerKey, availableDomainMapping.getKey())); } } return activeTokens; }
/** * Retrieves active access tokens for the given consumer key. * * @param consumerKey * @return * @throws IdentityOAuth2Exception */ public Set<String> getActiveTokensForConsumerKey(String consumerKey) throws IdentityOAuth2Exception { if (log.isDebugEnabled()) { log.debug("Retrieving active access tokens of client: " + consumerKey); } Set<String> activeTokens = getActiveTokensForConsumerKey(consumerKey, IdentityUtil.getPrimaryDomainName()); if (OAuth2Util.checkAccessTokenPartitioningEnabled() && OAuth2Util.checkUserNameAssertionEnabled()) { Map<String, String> availableDomainMappings = OAuth2Util.getAvailableUserStoreDomainMappings(); for (Map.Entry<String, String> availableDomainMapping : availableDomainMappings.entrySet()) { activeTokens.addAll(getActiveTokensForConsumerKey(consumerKey, availableDomainMapping.getKey())); } } return activeTokens; }
/** * Retrieves active AccessTokenDOs for the given consumer key. * * @param consumerKey * @return * @throws IdentityOAuth2Exception */ public Set<AccessTokenDO> getActiveDetailedTokensForConsumerKey(String consumerKey) throws IdentityOAuth2Exception { if (log.isDebugEnabled()) { log.debug("Retrieving active access tokens for client: " + consumerKey); } Set<AccessTokenDO> accessTokenDOs = getActiveDetailedTokensForConsumerKey(consumerKey, IdentityUtil.getPrimaryDomainName()); if (OAuth2Util.checkAccessTokenPartitioningEnabled() && OAuth2Util.checkUserNameAssertionEnabled()) { Map<String, String> availableDomainMappings = OAuth2Util.getAvailableUserStoreDomainMappings(); for (Map.Entry<String, String> availableDomainMapping : availableDomainMappings.entrySet()) { accessTokenDOs.addAll(getActiveDetailedTokensForConsumerKey(consumerKey, availableDomainMapping.getKey())); } } return accessTokenDOs; }
/** * Retrieves AccessTokenDOs of the given tenant. * * @param tenantId * @return * @throws IdentityOAuth2Exception */ public Set<AccessTokenDO> getAccessTokensOfTenant(int tenantId) throws IdentityOAuth2Exception { if (log.isDebugEnabled()) { log.debug("Retrieving all access tokens of tenant id: " + tenantId); } Set<AccessTokenDO> accessTokenDOs = getAccessTokensOfTenant(tenantId, IdentityUtil.getPrimaryDomainName()); if (OAuth2Util.checkAccessTokenPartitioningEnabled() && OAuth2Util.checkUserNameAssertionEnabled()) { Map<String, String> availableDomainMappings = OAuth2Util.getAvailableUserStoreDomainMappings(); for (Map.Entry<String, String> availableDomainMapping : availableDomainMappings.entrySet()) { accessTokenDOs.addAll(getAccessTokensOfTenant(tenantId, availableDomainMapping.getKey())); } } return accessTokenDOs; }
/** * Retrieves AccessTokenDOs of the given tenant. * * @param tenantId * @return * @throws IdentityOAuth2Exception */ @Override public Set<AccessTokenDO> getAccessTokensByTenant(int tenantId) throws IdentityOAuth2Exception { if (log.isDebugEnabled()) { log.debug("Retrieving all access tokens of tenant id: " + tenantId); } Set<AccessTokenDO> accessTokenDOs = getAccessTokensByTenant(tenantId, IdentityUtil.getPrimaryDomainName()); if (OAuth2Util.checkAccessTokenPartitioningEnabled() && OAuth2Util.checkUserNameAssertionEnabled()) { Map<String, String> availableDomainMappings = OAuth2Util.getAvailableUserStoreDomainMappings(); for (Map.Entry<String, String> availableDomainMapping : availableDomainMappings.entrySet()) { accessTokenDOs.addAll(getAccessTokensByTenant(tenantId, availableDomainMapping.getKey())); } } return accessTokenDOs; }
private boolean isUserExistsInDomain(UserStoreManager userStoreManager, String userName, boolean authenticated) throws UserStoreException { boolean isExists = false; if (authenticated) { String userDomain = UserCoreUtil.getDomainFromThreadLocal(); String userStoreDomain = userStoreManager.getRealmConfiguration().getUserStoreProperty(UserCoreConstants .RealmConfig.PROPERTY_DOMAIN_NAME); if (userDomain != null) { if (userDomain.equalsIgnoreCase(userStoreDomain)) { isExists = true; } } else if (IdentityUtil.getPrimaryDomainName().equalsIgnoreCase(userStoreDomain)) { isExists = true; } } else { isExists = isUserExistsInDomain(userStoreManager, userName); } return isExists; } }
public static NotificationReceiversRetrieval getNotificationReceiversRetrievalForDomain(String domain, String tenantDomain) throws AccountSuspensionNotificationException { NotificationReceiversRetrieval notificationReceiversRetrieval = null; if (StringUtils.isEmpty(domain)) { domain = IdentityUtil.getPrimaryDomainName(); } RealmConfiguration realmConfiguration = getUserStoreList(tenantDomain).get(domain); if (realmConfiguration != null) { String retrieverType = realmConfiguration.getUserStoreProperty(NOTIFICATION_RECEIVERS_RETRIEVAL_CLASS); if (StringUtils.isNotBlank(retrieverType)) { notificationReceiversRetrieval = NotificationTaskDataHolder.getInstance() .getNotificationReceiversRetrievalFactories().get(retrieverType) .buildCountRetriever(realmConfiguration); } if (notificationReceiversRetrieval == null) { throw new AccountSuspensionNotificationException("Could not create an instance of class: " + retrieverType + " for the domain: " + domain); } } return notificationReceiversRetrieval; }
protected void publishAuthenticationStepFailure(AuthenticationContext authenticationContext, Map<String, Object> map) { String currentAuthenticator = authenticationContext.getCurrentAuthenticator(); if (StringUtils.isBlank(currentAuthenticator) && MapUtils.isNotEmpty(map)) { currentAuthenticator = (String) map.get(FrameworkConstants.AUTHENTICATOR); } if ("BasicAuthenticator".equals(currentAuthenticator) && map != null && map.get (FrameworkConstants.AnalyticsAttributes.USER) != null) { if (map.get(FrameworkConstants.AnalyticsAttributes.USER) instanceof User) { User failedUser = (User) map.get(FrameworkConstants.AnalyticsAttributes.USER); String username = failedUser.getUserName(); if (!StringUtils.isBlank(failedUser.getUserStoreDomain()) && !IdentityUtil.getPrimaryDomainName().equals(failedUser.getUserStoreDomain())) { username = UserCoreUtil.addDomainToName(username, failedUser.getUserStoreDomain()); } try { if (CaptchaUtil.isMaximumFailedLoginAttemptsReached(username, failedUser.getTenantDomain())) { CaptchaConstants.setEnableSecurityMechanism("enable"); } } catch (CaptchaException e) { log.error("Failed to evaluate max failed attempts of the user.", e); } } } }