当前位置: 首页>>代码示例>>Java>>正文


Java Filter类代码示例

本文整理汇总了Java中com.unboundid.ldap.sdk.Filter的典型用法代码示例。如果您正苦于以下问题:Java Filter类的具体用法?Java Filter怎么用?Java Filter使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


Filter类属于com.unboundid.ldap.sdk包,在下文中一共展示了Filter类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: rolesFromDN

import com.unboundid.ldap.sdk.Filter; //导入依赖的package包/类
private Set<String> rolesFromDN(String userDN) throws LDAPException, GeneralSecurityException {
  SearchRequest searchRequest = new SearchRequest(config.getRoleBaseDN(),
      SearchScope.SUB, Filter.createEqualityFilter("uniqueMember", userDN));
  Set<String> roles = Sets.newLinkedHashSet();

  LDAPConnection connection = connectionFactory.getLDAPConnection();
  try {
    SearchResult sr = connection.search(searchRequest);

    for (SearchResultEntry sre : sr.getSearchEntries()) {
      X500Name x500Name = new X500Name(sre.getDN());
      RDN[] rdns = x500Name.getRDNs(BCStyle.CN);
      if (rdns.length == 0) {
        logger.error("Could not create X500 Name for role:" + sre.getDN());
      } else {
        String commonName = IETFUtils.valueToString(rdns[0].getFirst().getValue());
        roles.add(commonName);
      }
    }
  } finally {
    connection.close();
  }

  return roles;
}
 
开发者ID:square,项目名称:keywhiz,代码行数:26,代码来源:LdapAuthenticator.java

示例2: getLoginDn

import com.unboundid.ldap.sdk.Filter; //导入依赖的package包/类
private String getLoginDn(String username) {

		String loginDn = null;

		try {

			Filter userFilter = Filter.create(userSearchFilter);
			Filter loginFilter = getLoginFilter(username);
			Filter filter = Filter.createANDFilter(userFilter, loginFilter);

			List<SearchResultEntry> searchResultEntries = search(filter);
			if (!searchResultEntries.isEmpty()) {
				loginDn = searchResultEntries.get(0).getDN();
			}
		}
		catch (Exception e) {
			LOG.error(e.getMessage(), e);
		}

		return loginDn;
	}
 
开发者ID:chrisipa,项目名称:cloud-portal,代码行数:22,代码来源:DirectoryService.java

示例3: getAttributeResultEntryLDIF

import com.unboundid.ldap.sdk.Filter; //导入依赖的package包/类
public List<SearchResultEntry> getAttributeResultEntryLDIF(LDAPConnection connection, List<String> patterns, String baseDN) {
	List<SearchResultEntry> searchResultEntryList = new ArrayList<SearchResultEntry>();
	try {
		for (String pattern : patterns) {
			String[] targetArray = new String[] { pattern };
			Filter inumFilter = Filter.createSubstringFilter("inum", null,targetArray, null);
			Filter searchFilter = Filter.createORFilter(inumFilter);
			SearchResultEntry sr = connection.searchForEntry(baseDN,SearchScope.SUB, searchFilter, null);
			searchResultEntryList.add(sr);
		}

		return searchResultEntryList;
	} catch (LDAPException le) {
		if (le.getResultCode() != ResultCode.NO_SUCH_OBJECT) {
			log.error("Failed to search ldif record", le);
			return null;
		}
	}
	return null;
}
 
开发者ID:GluuFederation,项目名称:oxCore,代码行数:21,代码来源:LdifDataUtility.java

示例4: getUsers

import com.unboundid.ldap.sdk.Filter; //导入依赖的package包/类
@Override
public List<org.geomajas.security.UserInfo> getUsers(UserFilter userFilter) {
	List<org.geomajas.security.UserInfo> users = new ArrayList<org.geomajas.security.UserInfo>();
	if (allUsersDn == null) {
		log.warn("Getting users from LDAP requires configuration of allUsersDn property");
	} else {
		SearchRequest request = createSearchRequest(allUsersDn);
		LdapFilterVisitor visitor = new LdapFilterVisitor();
		Filter ldapFilter = (Filter) userFilter.accept(visitor, null);
		if (ldapFilter != null) {
			Filter f = request.getFilter();
			request.setFilter(Filter.createANDFilter(f, ldapFilter));
		}
		SearchResult result = execute(request, null, null);
		if (result != null) {
			for (SearchResultEntry entry : result.getSearchEntries()) {
				users.add(getUserInfo(entry));
			}
		}
	}
	return users;
}
 
开发者ID:geomajas,项目名称:geomajas-project-server,代码行数:23,代码来源:LdapAuthenticationService.java

示例5: searchIDPs

import com.unboundid.ldap.sdk.Filter; //导入依赖的package包/类
/**
* Search by pattern
* 
* @param pattern Pattern
* @param sizeLimit Maximum count of results
* @return List of scopes
* @throws Exception
*/
public List<IDPEntry> searchIDPs(String pattern, int sizeLimit) throws Exception {
    // filter
    String[] targetArray = new String[] { pattern };
    Filter idFilter = Filter.createSubstringFilter(OxTrustConstants.uniqueIdentifier, null, targetArray, null);
    Filter friendlyNameFilter = Filter.createSubstringFilter(OxTrustConstants.friendlyName, null, targetArray, null);
    Filter descriptionFilter = Filter.createSubstringFilter(OxTrustConstants.description, null, targetArray, null);
    Filter inameFilter = Filter.createSubstringFilter(OxTrustConstants.iname, null, targetArray, null);
    Filter searchFilter = Filter.createORFilter(idFilter, friendlyNameFilter, descriptionFilter, inameFilter);

    // search
    final List<LdapIDPEntry> entries = ldapEntryManager.findEntries(getDnForLdapIDPEntry(null), LdapIDPEntry.class, searchFilter, sizeLimit);

    // convert result
    List<IDPEntry> ret = new ArrayList<IDPEntry>();
    for (LdapIDPEntry entry : entries) {
        ret.add(entry.getEntry());
    }
    return ret;
}
 
开发者ID:AgarwalNeha1,项目名称:gluu,代码行数:28,代码来源:AsimbaService.java

示例6: searchSelectors

import com.unboundid.ldap.sdk.Filter; //导入依赖的package包/类
/**
* Search by pattern
* 
* @param pattern Pattern
* @param sizeLimit Maximum count of results
* @return List of scopes
* @throws Exception
*/
public List<ApplicationSelectorEntry> searchSelectors(String pattern, int sizeLimit) throws Exception {
    // filter
    String[] targetArray = new String[] { pattern };
    Filter idFilter = Filter.createSubstringFilter(OxTrustConstants.uniqueIdentifier, null, targetArray, null);
    Filter friendlyNameFilter = Filter.createSubstringFilter(OxTrustConstants.friendlyName, null, targetArray, null);
    Filter descriptionFilter = Filter.createSubstringFilter(OxTrustConstants.description, null, targetArray, null);
    Filter inameFilter = Filter.createSubstringFilter(OxTrustConstants.iname, null, targetArray, null);
    Filter organizationIdFilter = Filter.createSubstringFilter(OxTrustConstants.organizationId, null, targetArray, null);
    Filter searchFilter = Filter.createORFilter(idFilter, friendlyNameFilter, descriptionFilter, inameFilter, organizationIdFilter);

    // search
    List<LDAPApplicationSelectorEntry> entries = ldapEntryManager.findEntries(getDnForLDAPApplicationSelectorEntry(null), LDAPApplicationSelectorEntry.class, searchFilter, sizeLimit);

    // convert result
    List<ApplicationSelectorEntry> ret = new ArrayList<ApplicationSelectorEntry>();
    for (LDAPApplicationSelectorEntry entry : entries) {
        ret.add(entry.getEntry());
    }
    return ret;
}
 
开发者ID:AgarwalNeha1,项目名称:gluu,代码行数:29,代码来源:AsimbaService.java

示例7: searchRequestors

import com.unboundid.ldap.sdk.Filter; //导入依赖的package包/类
/**
* Search by pattern
* 
* @param pattern Pattern
* @param sizeLimit Maximum count of results
* @return List of scopes
* @throws Exception
*/
public List<RequestorEntry> searchRequestors(String pattern, int sizeLimit) throws Exception {
    // filter
    String[] targetArray = new String[] { pattern };
    Filter idFilter = Filter.createSubstringFilter(OxTrustConstants.uniqueIdentifier, null, targetArray, null);
    Filter friendlyNameFilter = Filter.createSubstringFilter(OxTrustConstants.friendlyName, null, targetArray, null);
    Filter descriptionFilter = Filter.createSubstringFilter(OxTrustConstants.description, null, targetArray, null);
    Filter inameFilter = Filter.createSubstringFilter(OxTrustConstants.iname, null, targetArray, null);
    Filter searchFilter = Filter.createORFilter(idFilter, friendlyNameFilter, descriptionFilter, inameFilter);

    // search
    List<LDAPRequestorEntry> entries = ldapEntryManager.findEntries(getDnForLDAPRequestorEntry(null), LDAPRequestorEntry.class, searchFilter, sizeLimit);

    // convert result
    List<RequestorEntry> ret = new ArrayList<RequestorEntry>();
    for (LDAPRequestorEntry entry : entries) {
        ret.add(entry.getEntry());
    }
    return ret;
}
 
开发者ID:AgarwalNeha1,项目名称:gluu,代码行数:28,代码来源:AsimbaService.java

示例8: searchRequestorPools

import com.unboundid.ldap.sdk.Filter; //导入依赖的package包/类
/**
* Search by pattern
* 
* @param pattern Pattern
* @param sizeLimit Maximum count of results
* @return List of scopes
* @throws Exception
*/
public List<RequestorPoolEntry> searchRequestorPools(String pattern, int sizeLimit) throws Exception {
    // filter
    String[] targetArray = new String[] { pattern };
    Filter idFilter = Filter.createSubstringFilter(OxTrustConstants.uniqueIdentifier, null, targetArray, null);
    Filter friendlyNameFilter = Filter.createSubstringFilter(OxTrustConstants.friendlyName, null, targetArray, null);
    Filter descriptionFilter = Filter.createSubstringFilter(OxTrustConstants.description, null, targetArray, null);
    Filter inameFilter = Filter.createSubstringFilter(OxTrustConstants.iname, null, targetArray, null);
    Filter searchFilter = Filter.createORFilter(idFilter, friendlyNameFilter, descriptionFilter, inameFilter);

    // search
    List<LDAPRequestorPoolEntry> entries = ldapEntryManager.findEntries(getDnForLDAPRequestorPoolEntry(null), LDAPRequestorPoolEntry.class, searchFilter, sizeLimit);

    // convert result
    List<RequestorPoolEntry> ret = new ArrayList<RequestorPoolEntry>();
    for (LDAPRequestorPoolEntry entry : entries) {
        ret.add(entry.getEntry());
    }
    return ret;
}
 
开发者ID:AgarwalNeha1,项目名称:gluu,代码行数:28,代码来源:AsimbaService.java

示例9: searchAttributes

import com.unboundid.ldap.sdk.Filter; //导入依赖的package包/类
/**
 * Search groups by pattern
 * 
 * @param pattern
 *            Pattern
 * @param sizeLimit
 *            Maximum count of results
 * @return List of groups
 * @throws Exception
 */
public List<GluuAttribute> searchAttributes(String pattern, int sizeLimit) throws Exception {
	String[] targetArray = new String[] { pattern };
	Filter displayNameFilter = Filter.createSubstringFilter(OxTrustConstants.displayName, null, targetArray, null);
	Filter descriptionFilter = Filter.createSubstringFilter(OxTrustConstants.description, null, targetArray, null);
	Filter inameFilter = Filter.createSubstringFilter(OxTrustConstants.iname, null, targetArray, null);
	Filter searchFilter = Filter.createORFilter(displayNameFilter, descriptionFilter, inameFilter);

	List<GluuAttribute> result = ldapEntryManager.findEntries(getDnForAttribute(null), GluuAttribute.class, searchFilter, 0, sizeLimit);
	String customOrigin = getCustomOrigin();
	for (GluuAttribute attribute : result) {
		attribute.setCustom(customOrigin.equals(attribute.getOrigin()));
	}
	
	return result;
}
 
开发者ID:AgarwalNeha1,项目名称:gluu,代码行数:26,代码来源:AttributeService.java

示例10: updateTargetEntriesViaVDS

import com.unboundid.ldap.sdk.Filter; //导入依赖的package包/类
private List<String> updateTargetEntriesViaVDS(CacheRefreshConfiguration cacheRefreshConfiguration, LdapServerConnection targetServerConnection, Set<String> changedInums) {
	List<String> result = new ArrayList<String>();

	LdapEntryManager targetLdapEntryManager = targetServerConnection.getLdapEntryManager();
	Filter filter = cacheRefreshService.createObjectClassPresenceFilter();
	for (String changedInum : changedInums) {
		String baseDn = "action=synchronizecache," + personService.getDnForPerson(changedInum);
		try {
			targetLdapEntryManager.findEntries(baseDn, GluuDummyEntry.class, filter, null, cacheRefreshConfiguration.getLdapSearchSizeLimit());
			result.add(changedInum);
			log.debug("Updated entry with inum {0}", changedInum);
		} catch (LdapMappingException ex) {
			log.error("Failed to update entry with inum '{0}' using baseDN {1}", ex, changedInum, baseDn);
		}
	}

	return result;
}
 
开发者ID:AgarwalNeha1,项目名称:gluu,代码行数:19,代码来源:CacheRefreshTimer.java

示例11: searchDevices

import com.unboundid.ldap.sdk.Filter; //导入依赖的package包/类
private List<BaseScimResource> searchDevices(String filter, String sortBy, SortOrder sortOrder, int startIndex,
                                                int count, VirtualListViewResponse vlvResponse, String url) throws Exception {

    Filter ldapFilter=scimFilterParserService.createLdapFilter(filter, "oxId=*", FidoDeviceResource.class);
    //Transform scim attribute to LDAP attribute
    sortBy = FilterUtil.getLdapAttributeOfResourceAttribute(sortBy, FidoDeviceResource.class).getFirst();

    log.info("Executing search for fido devices using: ldapfilter '{}', sortBy '{}', sortOrder '{}', startIndex '{}', count '{}'",
            ldapFilter.toString(), sortBy, sortOrder.getValue(), startIndex, count);
    List<GluuCustomFidoDevice> list=ldapEntryManager.findEntriesSearchSearchResult(fidoDeviceService.getDnForFidoDevice(null, null),
            GluuCustomFidoDevice.class, ldapFilter, startIndex, count, getMaxCount(), sortBy, sortOrder, vlvResponse, null);

    List<BaseScimResource> resources=new ArrayList<BaseScimResource>();

    for (GluuCustomFidoDevice device : list){
        FidoDeviceResource scimDev=new FidoDeviceResource();
        transferAttributesToFidoResource(device, scimDev, url, getUserInumFromDN(device.getDn()));
        resources.add(scimDev);
    }
    log.info ("Found {} matching entries - returning {}", vlvResponse.getTotalResults(), list.size());
    return resources;

}
 
开发者ID:GluuFederation,项目名称:oxTrust,代码行数:24,代码来源:FidoDeviceWebService.java

示例12: searchUsers

import com.unboundid.ldap.sdk.Filter; //导入依赖的package包/类
public List<BaseScimResource> searchUsers(String filter, String sortBy, SortOrder sortOrder, int startIndex, int count,
                                          VirtualListViewResponse vlvResponse, String url, int maxCount) throws Exception{

    Filter ldapFilter=scimFilterParserService.createLdapFilter(filter, "inum=*", UserResource.class);
    //Transform scim attribute to LDAP attribute
    sortBy = FilterUtil.getLdapAttributeOfResourceAttribute(sortBy, UserResource.class).getFirst();

    log.info("Executing search for users using: ldapfilter '{}', sortBy '{}', sortOrder '{}', startIndex '{}', count '{}'",
            ldapFilter.toString(), sortBy, sortOrder.getValue(), startIndex, count);

    List<GluuCustomPerson> list=ldapEntryManager.findEntriesSearchSearchResult(personService.getDnForPerson(null),
            GluuCustomPerson.class, ldapFilter, startIndex, count, maxCount, sortBy, sortOrder, vlvResponse, null);
    List<BaseScimResource> resources=new ArrayList<BaseScimResource>();

    for (GluuCustomPerson person : list){
        UserResource scimUsr=new UserResource();
        transferAttributesToUserResource(person, scimUsr, url);
        resources.add(scimUsr);
    }
    log.info ("Found {} matching entries - returning {}", vlvResponse.getTotalResults(), list.size());
    return resources;

}
 
开发者ID:GluuFederation,项目名称:oxTrust,代码行数:24,代码来源:Scim2UserService.java

示例13: scrollSimplePagedResultsControl

import com.unboundid.ldap.sdk.Filter; //导入依赖的package包/类
private ASN1OctetString scrollSimplePagedResultsControl(LDAPConnection ldapConnection, String dn, Filter filter, SearchScope scope, Control[] controls, int startIndex) throws LDAPException, InvalidSimplePageControlException {
	SearchRequest searchRequest = new SearchRequest(dn, scope, filter, "dn");

	int currentStartIndex = startIndex;
	ASN1OctetString cookie = null;
	do {
		int pageSize = Math.min(currentStartIndex, 100);
		searchRequest.setControls(new Control[]{new SimplePagedResultsControl(pageSize, cookie, true)});
		setControls(searchRequest, controls);
		SearchResult searchResult = ldapConnection.search(searchRequest);

		currentStartIndex -= searchResult.getEntryCount();
		try {
			SimplePagedResultsControl c = SimplePagedResultsControl.get(searchResult);
			if (c != null) {
				cookie = c.getCookie();
			}
		} catch (LDAPException ex) {
			log.error("Error while accessing cookie", ex);
			throw new InvalidSimplePageControlException(ex.getResultCode(), "Error while accessing cookie");
		}
	} while ((cookie != null) && (cookie.getValueLength() > 0) && (currentStartIndex > 0));

	return cookie;
}
 
开发者ID:GluuFederation,项目名称:oxCore,代码行数:26,代码来源:LdapOperationsServiceImpl.java

示例14: itrArrayContainsExpression

import com.unboundid.ldap.sdk.Filter; //导入依赖的package包/类
@Override
protected Filter itrArrayContainsExpression(ArrayContainsExpression query, Path path){
    String attributeName = fieldNameTranslator.translateFieldName(query.getArray());

    List<Filter> filters = new ArrayList<>();
    for(Value value : query.getValues()){
        filters.add(Filter.createEqualityFilter(attributeName, value.getValue().toString()));
    }

    switch(query.getOp()){
        case _all:
            return Filter.createANDFilter(filters);
        case _any:
            return Filter.createORFilter(filters);
        case _none:
            return Filter.createNOTFilter(Filter.createANDFilter(filters));
        default:
            throw new UnsupportedOperationException("Unsupported operation: " + query.getOp());
    }
}
 
开发者ID:lightblue-platform,项目名称:lightblue-ldap,代码行数:21,代码来源:FilterBuilder.java

示例15: itrNaryValueRelationalExpression

import com.unboundid.ldap.sdk.Filter; //导入依赖的package包/类
@Override
protected Filter itrNaryValueRelationalExpression(NaryValueRelationalExpression query, Path path){
    String attributeName = fieldNameTranslator.translateFieldName(query.getField());
    List<Filter> filters = new ArrayList<>();
    for(Value value : query.getValues()){
        filters.add(Filter.createEqualityFilter(attributeName, value.getValue().toString()));
    }

    switch (query.getOp()){
        case _in:
            return Filter.createORFilter(filters);
        case _not_in:
            return Filter.createNOTFilter(Filter.createORFilter(filters));
        default:
            throw new UnsupportedOperationException("Unsupported operation: " + query.getOp());
    }
}
 
开发者ID:lightblue-platform,项目名称:lightblue-ldap,代码行数:18,代码来源:FilterBuilder.java


注:本文中的com.unboundid.ldap.sdk.Filter类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。